• Sujith Manoharan's avatar
    ath9k: Fix RX DMA mapping · 176f0e84
    Sujith Manoharan authored
    After the commit "ath9k: improve dma map failure handling", the
    wrong buffer was DMA-unmapped, introducing warnings like the one below.
    This patch fixes the issue.
    
    WARNING: at /home/sujith/dev/wireless-testing/lib/dma-debug.c:986 check_sync+0x4bc/0x580()
    Hardware name: LIFEBOOK AH531
    ath9k 0000:02:00.0: DMA-API: device driver tries to sync DMA memory it has not allocated [device address=0x00000000d9012800] [size=48 bytes]
    Pid: 86, comm: kworker/u:5 Tainted: G        W  O 3.9.0-rc8-wl-debug #106
    Call Trace:
     [<ffffffff810410c0>] warn_slowpath_common+0x70/0xa0
     [<ffffffff8104113c>] warn_slowpath_fmt+0x4c/0x50
     [<ffffffff8125432c>] check_sync+0x4bc/0x580
     [<ffffffff8109e5f7>] ? trace_hardirqs_on_caller+0xa7/0x190
     [<ffffffff8109e6ed>] ? trace_hardirqs_on+0xd/0x10
     [<ffffffff81254488>] debug_dma_sync_single_for_device+0x48/0x50
     [<ffffffffa0a53825>] ? ath9k_iowrite32+0x35/0x90 [ath9k]
     [<ffffffff812512f0>] ? swiotlb_tbl_sync_single+0x50/0x90
     [<ffffffff81251350>] ? swiotlb_sync_single+0x20/0x30
     [<ffffffff8125137f>] ? swiotlb_sync_single_for_device+0xf/0x20
     [<ffffffffa0a58baf>] ath_rx_edma_buf_link+0xef/0x140 [ath9k]
     [<ffffffffa0a58c4e>] ath_rx_addbuffer_edma+0x4e/0x90 [ath9k]
     [<ffffffffa0a59c51>] ath_startrecv+0xf1/0x120 [ath9k]
     [<ffffffffa0a550e0>] ath_complete_reset+0x20/0x130 [ath9k]
     [<ffffffffa0a5790d>] ath_reset_internal+0x10d/0x210 [ath9k]
     [<ffffffffa0a5878c>] ath9k_config+0x47c/0x7b0 [ath9k]
     [<ffffffffa06d4978>] ieee80211_hw_config+0x88/0x3f0 [mac80211]
     [<ffffffffa06d4a3f>] ? ieee80211_hw_config+0x14f/0x3f0 [mac80211]
     [<ffffffffa06dbed1>] __ieee80211_scan_completed+0xc1/0x440 [mac80211]
     [<ffffffffa06dd002>] ieee80211_scan_work+0x82/0x440 [mac80211]
     [<ffffffff810606a3>] process_one_work+0x1e3/0x530
     [<ffffffff81060641>] ? process_one_work+0x181/0x530
     [<ffffffff8106163f>] worker_thread+0x10f/0x3c0
     [<ffffffff81061530>] ? manage_workers+0x330/0x330
     [<ffffffff810665da>] kthread+0xea/0xf0
     [<ffffffff810664f0>] ? kthread_create_on_node+0x140/0x140
     [<ffffffff8146085c>] ret_from_fork+0x7c/0xb0
     [<ffffffff810664f0>] ? kthread_create_on_node+0x140/0x140
    
    Cc: Felix Fietkau <nbd@openwrt.org>
    Signed-off-by: default avatarSujith Manoharan <c_manoha@qca.qualcomm.com>
    Acked-by: default avatarFelix Fietkau <nbd@openwrt.org>
    Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
    176f0e84
recv.c 36.5 KB