• Sara Sharon's avatar
    iwlwifi: pcie: fix access to scratch buffer · 87759467
    Sara Sharon authored
    commit d5d0689a upstream.
    
    This fixes a pretty ancient bug that hasn't manifested itself
    until now.
    The scratchbuf for command queue is allocated only for 32 slots
    but is accessed with the queue write pointer - which can be
    up to 256.
    Since the scratch buf size was 16 and there are up to 256 TFDs
    we never passed a page boundary when accessing the scratch buffer,
    but when attempting to increase the size of the scratch buffer a
    panic was quick to follow when trying to access the address resulted
    in a page boundary.
    Signed-off-by: default avatarSara Sharon <sara.sharon@intel.com>
    Fixes: 38c0f334 ("iwlwifi: use coherent DMA memory for command header")
    Signed-off-by: default avatarLuca Coelho <luciano.coelho@intel.com>
    [bwh: Backported to 3.2: adjust filename]
    Signed-off-by: default avatarBen Hutchings <ben@decadent.org.uk>
    87759467
tx.c 51.4 KB