linux-sg2042/drivers/staging/rtl8192e
Daniel Lichtenberger 43f88d530e Staging: rtl8192e: fix IOMMU memory leak
Unmap the rx buffer before mapping the new one in rtl8192_rx.

Failing to do so quickly exhausts the IOMMU memory during downloads:

[...] DMA: Out of SW-IOMMU space for 9100 bytes at device ...

Using "iommu=off mem=4g" also fixes the problem because
then pci_map_single does not allocate memory.

Tested on my personal laptop with a RTL8192E device. Without this
patch the kernel quickly runs out of IOMMU memory (downloading 5 MB
of data is sufficient to trigger it), with this patch applied
I haven't experienced any issues so far.

Signed-off-by: Daniel Lichtenberger <daniel.lichtenberger@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-11-09 14:05:23 -08:00
..
ieee80211 staging: rtl8193*: Remove double test 2010-08-31 15:22:37 -07:00
Kconfig Staging: rtl81xx: Fix build problems when CONFIG_CRYPTO=n 2010-06-18 16:41:50 -07:00
Makefile Staging: rtl8192e: Makefile: cleaned up Makefile cflag lines 2010-10-05 11:56:38 -07:00
dot11d.h Staging: rtl8192e: Convert macros to inline functions 2010-09-29 23:15:19 -07:00
ieee80211.h Staging: rtl8192e: Remove extern and redundant declarations 2010-09-08 21:21:24 -07:00
ieee80211_crypt.h Staging: add Realtek 8192 PCI wireless driver 2009-09-15 12:02:30 -07:00
r819xE_cmdpkt.c Staging: rtl8192e: Less verbose function headers 2010-09-08 21:21:26 -07:00
r819xE_cmdpkt.h Staging: rtl8192e: Remove extern and redundant declarations 2010-09-08 21:21:24 -07:00
r819xE_firmware.c Staging: rtl8192e: Less verbose function headers 2010-09-08 21:21:26 -07:00
r819xE_phy.c Staging: rtl8192e: Remove function name comments at end of functions 2010-09-08 21:21:21 -07:00
r819xE_phy.h Staging: rtl8192e: Remove extern and redundant declarations 2010-09-08 21:21:24 -07:00
r819xE_phyreg.h Staging: rtl8192e: Code style fix for r819xE_phyreg.h 2010-03-03 16:42:30 -08:00
r8180_93cx6.c staging: rtl8192e: Remove empty function force_pci_posting() 2010-09-21 10:57:00 -07:00
r8180_93cx6.h Staging: rtl8192e: fix some codingstyle issues 2010-03-03 16:42:30 -08:00
r8190_rtl8256.c Staging: rtl8192e: Remove pointless return statements 2010-08-31 14:55:08 -07:00
r8190_rtl8256.h Staging: rtl8192e: Remove extern and redundant declarations 2010-09-08 21:21:24 -07:00
r8192E.h staging: rtl8192e: Remove empty function force_pci_posting() 2010-09-21 10:57:00 -07:00
r8192E_core.c Staging: rtl8192e: fix IOMMU memory leak 2010-11-09 14:05:23 -08:00
r8192E_dm.c Staging: rtl8192e: Less verbose function headers 2010-09-08 21:21:26 -07:00
r8192E_dm.h Staging: rtl8192e: Delete unused function dm_shadow_init() 2010-08-31 14:51:53 -07:00
r8192E_hw.h Staging: rtl9192e: fix power usage issues 2010-03-03 16:42:30 -08:00
r8192E_wx.c Staging: rtl8192e: Don't compare bHwRadioOff with true 2010-08-31 14:55:08 -07:00
r8192E_wx.h Staging: rtl8192e: Remove extern and redundant declarations 2010-09-08 21:21:24 -07:00
r8192_pm.c Staging: rtl8192e: Remove redundant brackets around return values 2010-08-31 14:55:09 -07:00
r8192_pm.h Staging: rtl8192e: Use the standard config option for PM functions 2010-05-11 11:35:56 -07:00