linux/drivers/s390
Harald Freudenberger e01f18c5af s390/ap: Fix wrong APQN fill calculation
commit 3317785a88 upstream.

The upper limit of the firmware queue fill state for each APQN
is reported by the hwinfo.qd field. This field shows the
numbers 0-7 for 1-8 queue spaces available. But the exploiting
code assumed the real boundary is stored there and thus stoppes
queuing in messages one tick too early.

Correct the limit calculation and thus offer a boost
of 12.5% performance for high traffic on one APQN.

Fixes: d4c53ae8e4 ("s390/ap: store TAPQ hwinfo in struct ap_card")
Cc: stable@vger.kernel.org
Reported-by: Ingo Franzki <ifranzki@linux.ibm.com>
Reviewed-by: Ingo Franzki <ifranzki@linux.ibm.com>
Signed-off-by: Harald Freudenberger <freude@linux.ibm.com>
Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
History 2026-01-30 10:28:46 +01:00
..
block s390/dasd: Fix gendisk parent after copy pair swap 2026-01-08 10:14:14 +01:00
char s390/sclp: Fix SCCB present check 2025-08-28 16:31:06 +02:00
cio s390/cio: Update purge function to unregister the unused subchannels 2025-10-19 16:33:39 +02:00
crypto s390/ap: Fix wrong APQN fill calculation 2026-01-30 10:28:46 +01:00
net s390/ctcm: Fix double-kfree 2025-12-01 11:43:31 +01:00
scsi scsi: s390: zfcp: Ensure synchronous unit_add 2025-06-27 11:11:37 +01:00
virtio s390/virtio_ccw: Don't allocate/assign airqs for non-existing queues 2025-04-20 10:15:59 +02:00
Makefile s390: remove pointless drivers-y in drivers/s390/Makefile 2019-09-16 13:21:51 +02:00