• Alex Elder's avatar
    net: ipa: expand last transaction check · e6316920
    Alex Elder authored
    Transactions to send data for a network device can be allocated at
    any time up until the point the TX queue is stopped.  It is possible
    for ipa_start_xmit() to be called in one context just before a
    the transmit queue is stopped in another.
    
    Update gsi_channel_trans_last() so that for TX channels the
    allocated and pending transaction lists are checked--in addition
    to the completed and polled lists--to determine the "last"
    transaction.  This means any transaction that has been allocated
    before the TX queue is stopped will be allowed to complete before
    we conclude the channel is quiesced.
    
    Rework the function a bit to use a list pointer and gotos.
    Signed-off-by: default avatarAlex Elder <elder@linaro.org>
    Acked-by: default avatarWillem de Bruijn <willemb@google.com>
    Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
    e6316920
gsi.c 65.1 KB