• Julian Wiedmann's avatar
    s390/qeth: fix notification for pending buffers during teardown · 7eefda7f
    Julian Wiedmann authored
    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: 8908f36d ("s390/qeth: fix af_iucv notification race")
    Signed-off-by: default avatarJulian Wiedmann <jwi@linux.ibm.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    7eefda7f
qeth_core_main.c 192 KB