diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2009-12-19 09:46:46 -0800 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2009-12-19 09:46:46 -0800 |
commit | ecd5907a200b18aeddac68b8c734b8ad4c931205 (patch) | |
tree | ef0e6182f6cdc5ef1e52ca6c1600117a8ea02697 /drivers/s390/cio/qdio_main.c | |
parent | b4c30aad39805902cf5b855aa8a8b22d728ad057 (diff) | |
parent | 1d802e24774c94ec7bdb12b6515226f3341533c1 (diff) |
Merge branch 'for-linus' of git://git390.marist.edu/pub/scm/linux-2.6
* 'for-linus' of git://git390.marist.edu/pub/scm/linux-2.6:
[S390] Use strim instead of strstrip to avoid false warnings.
[S390] qdio: add counter for input queue full condition
[S390] qdio: remove superfluous log entries and WARN_ONs.
[S390] ptrace: dont abuse PT_PTRACED
[S390] cio: fix channel path vary
[S390] drivers: Correct size given to memset
[S390] tape: Add pr_fmt() macro to all tape source files
[S390] rename NT_PRXSTATUS to NT_S390_HIGHREGS
[S390] tty: PTR_ERR return of wrong pointer in fs3270_open()
[S390] s390: PTR_ERR return of wrong pointer in fallback_init_cip()
[S390] dasd: PTR_ERR return of wrong pointer in
[S390] dasd: move dasd-diag kmsg to dasd
[S390] cio: fix drvdata usage for the console subchannel
[S390] wire up sys_recvmmsg
Diffstat (limited to 'drivers/s390/cio/qdio_main.c')
-rw-r--r-- | drivers/s390/cio/qdio_main.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/s390/cio/qdio_main.c b/drivers/s390/cio/qdio_main.c index 4be6e84b959..b2275c5000e 100644 --- a/drivers/s390/cio/qdio_main.c +++ b/drivers/s390/cio/qdio_main.c @@ -486,7 +486,8 @@ static int get_inbound_buffer_frontier(struct qdio_q *q) case SLSB_P_INPUT_PRIMED: inbound_primed(q, count); q->first_to_check = add_buf(q->first_to_check, count); - atomic_sub(count, &q->nr_buf_used); + if (atomic_sub(count, &q->nr_buf_used) == 0) + qdio_perf_stat_inc(&perf_stats.inbound_queue_full); break; case SLSB_P_INPUT_ERROR: announce_buffer_error(q, count); |