Gitweb:     
http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=6cbed91ab78e750eef2dacb75bd51bd63792fd07
Commit:     6cbed91ab78e750eef2dacb75bd51bd63792fd07
Parent:     92d154b6c54f76016d36a7eb4aab6eea27737fdb
Author:     Frank Pavlic <[EMAIL PROTECTED]>
AuthorDate: Tue Jul 17 13:36:04 2007 +0200
Committer:  Martin Schwidefsky <[EMAIL PROTECTED]>
CommitDate: Tue Jul 17 13:36:18 2007 +0200

    [S390] qdio: output queue stall on FCP and network devices
    
    When running QIOASSIST enabled qdio devices in a z/VM environment
    the output queue for such devices stall in heavy workload situations.
    When SQBS and EQBS instructions returns CCQ=96 qdio does not reissue
    the instruction again with the register settings done by millicode
    but processed the returned qdio buffer. This is wrong. qdio has to
    reissue the instruction once again on CCQ=96, as we already do it
    for CCQ=97.
    
    Signed-off-by: Frank Pavlic <[EMAIL PROTECTED]>
    Signed-off-by: Martin Schwidefsky <[EMAIL PROTECTED]>
---
 drivers/s390/cio/qdio.c |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/s390/cio/qdio.c b/drivers/s390/cio/qdio.c
index e70aeb7..ae43732 100644
--- a/drivers/s390/cio/qdio.c
+++ b/drivers/s390/cio/qdio.c
@@ -166,9 +166,9 @@ qdio_check_ccq(struct qdio_q *q, unsigned int ccq)
 {
        char dbf_text[15];
 
-       if (ccq == 0 || ccq == 32 || ccq == 96)
+       if (ccq == 0 || ccq == 32)
                return 0;
-       if (ccq == 97)
+       if (ccq == 96 || ccq == 97)
                return 1;
        /*notify devices immediately*/
        sprintf(dbf_text,"%d", ccq);
-
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to