OpenCloudOS-Kernel/drivers/s390/net
Julian Wiedmann 7eefda7f35 s390/qeth: fix notification for pending buffers during teardown
The cited commit reworked the state machine for pending TX buffers.
In qeth_iqd_tx_complete() it turned PENDING into a transient state, and
uses NEED_QAOB for buffers that get parked while waiting for their QAOB
completion.

But it missed to adjust the check in qeth_tx_complete_buf(). So if
qeth_tx_complete_pending_bufs() is called during teardown to drain
the parked TX buffers, we no longer raise a notification for af_iucv.

Instead of updating the checked state, just move this code into
qeth_tx_complete_pending_bufs() itself. This also gets rid of the
special-case in the common TX completion path.

Fixes: 8908f36d20 ("s390/qeth: fix af_iucv notification race")
Signed-off-by: Julian Wiedmann <jwi@linux.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2021-03-09 16:14:54 -08:00
..
Kconfig s390/net: add SMC config as one of the defaults of CCWGROUP 2020-09-10 15:24:26 -07:00
Makefile s390/qeth: move ethtool code into its own file 2019-02-15 20:35:29 -08:00
ctcm_dbug.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
ctcm_dbug.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
ctcm_fsms.c s390/ctcm: Avoid temporary allocation of struct th_header and th_sweep. 2020-12-01 16:56:01 -08:00
ctcm_fsms.h s390/ctcm: remove orphaned function declarations 2020-10-02 16:22:49 -07:00
ctcm_main.c s390/ctcm: Use GFP_ATOMIC in ctcmpc_tx(). 2020-12-01 16:56:02 -08:00
ctcm_main.h s390/ctcm: Use GFP_ATOMIC in ctcmpc_tx(). 2020-12-01 16:56:02 -08:00
ctcm_mpc.c s390/ctcm: Use explicit allocation mask in ctcmpc_unpack_skb(). 2020-12-01 16:56:01 -08:00
ctcm_mpc.h s390/ctcm: remove orphaned function declarations 2020-10-02 16:22:49 -07:00
ctcm_sysfs.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
fsm.c Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux 2017-11-30 08:13:36 -08:00
fsm.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
ism.h net/smc: introduce System Enterprise ID (SEID) 2020-09-28 15:19:02 -07:00
ism_drv.c s390/ism: fix incorrect system EID 2020-10-26 16:29:14 -07:00
lcs.c s390/net: remove pm ops from ccwgroup drivers 2020-05-19 12:48:39 -07:00
lcs.h net: convert lcs_reply.refcnt from atomic_t to refcount_t 2017-12-20 15:23:44 -05:00
netiucv.c s390/net: remove pm support from iucv drivers 2020-05-19 12:48:39 -07:00
qeth_core.h s390/qeth: improve completion of pending TX buffers 2021-03-09 16:14:54 -08:00
qeth_core_main.c s390/qeth: fix notification for pending buffers during teardown 2021-03-09 16:14:54 -08:00
qeth_core_mpc.c s390/qeth: constify the MPC initialization data 2020-07-14 14:53:45 -07:00
qeth_core_mpc.h s390/qeth: use QUERY OAT for initial link info 2020-11-18 17:34:19 -08:00
qeth_core_sys.c s390/qeth: clean up load/remove code for disciplines 2021-01-28 20:35:57 -08:00
qeth_ethtool.c s390/qeth: improve selection of ethtool link modes 2020-11-18 17:34:19 -08:00
qeth_l2.h s390/qeth: use dev->groups for common sysfs attributes 2020-12-07 06:55:21 -08:00
qeth_l2_main.c s390/qeth: remove qeth_get_ip_version() 2021-01-28 20:35:58 -08:00
qeth_l2_sys.c s390/qeth: use dev->groups for common sysfs attributes 2020-12-07 06:55:21 -08:00
qeth_l3.h s390/qeth: use dev->groups for common sysfs attributes 2020-12-07 06:55:21 -08:00
qeth_l3_main.c s390/qeth: make cast type selection for af_iucv skbs robust 2021-01-28 20:35:58 -08:00
qeth_l3_sys.c s390/qeth: use dev->groups for common sysfs attributes 2020-12-07 06:55:21 -08:00
smsgiucv.c s390/net: remove pm support from iucv drivers 2020-05-19 12:48:39 -07:00
smsgiucv.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
smsgiucv_app.c s390: net: add SPDX identifiers to the remaining files 2017-11-24 14:28:43 +01:00