• Siva Rebbagondla's avatar
    rsi: fix nommu_map_sg overflow kernel panic · f7005466
    Siva Rebbagondla authored
    Following overflow kernel panic is observed on some platforms while
    loading the driver. It is fixed if dynamically allocated memory is
    passed to SDIO instead of static one
    
    [  927.513963] nommu_map_sg: overflow 17d54064ba7c+20 of device mask ffffffff
    [  927.517712] Modules linked in: rsi_sdio(+) cmac bnep arc4 rsi_91x mac80211 cfg80211
    	       btrsi rfcomm bluetooth ecdh_generic snd_soc_sst_bytcr_rt5660
    [  927.517861] CPU: 0 PID: 1624 Comm: insmod Tainted: G W 4.15.0-1000 #1
    [  927.517870] RIP: 0010:sdhci_send_command+0x5f0/0xa90 [sdhci]
    [  927.517873] RSP: 0000:ffffac3fc064b6d8 EFLAGS: 00010086
    [  927.517895] Call Trace:
    [  927.517908]  ? __schedule+0x3cd/0x890
    [  927.517915]  ? mod_timer+0x17b/0x3c0
    [  927.517922]  sdhci_request+0x7c/0xf0 [sdhci]
    [  927.517928]  __mmc_start_request+0x5a/0x170
    [  927.517932]  mmc_start_request+0x74/0x90
    [  927.517936]  mmc_wait_for_req+0x87/0xe0
    [  927.517940]  mmc_io_rw_extended+0x2fd/0x330
    [  927.517946]  ? mmc_wait_data_done+0x30/0x30
    [  927.517951]  sdio_io_rw_ext_helper+0x160/0x210
    [  927.517956]  sdio_writesb+0x1d/0x20
    [  927.517966]	rsi_sdio_write_register_multiple+0x68/0x110 [rsi_sdio]
    [  927.517976]  rsi_hal_device_init+0x357/0x910 [rsi_91x]
    [  927.517983]  ? rsi_hal_device_init+0x357/0x910 [rsi_91x]
    [  927.517990]  rsi_probe+0x2c6/0x450 [rsi_sdio]
    [  927.517995]  sdio_bus_probe+0xfc/0x110
    [  927.518000]  driver_probe_device+0x2b3/0x490
    [  927.518005]  __driver_attach+0xdf/0xf0
    [  927.518008]  ? driver_probe_device+0x490/0x490
    [  927.518014]  bus_for_each_dev+0x6c/0xc0
    [  927.518018]  driver_attach+0x1e/0x20
    [  927.518021]  bus_add_driver+0x1f4/0x270
    [  927.518028]  ? rsi_sdio_ack_intr+0x50/0x50 [rsi_sdio]
    [  927.518031]  driver_register+0x60/0xe0
    [  927.518038]  ? rsi_sdio_ack_intr+0x50/0x50 [rsi_sdio]
    [  927.518041]  sdio_register_driver+0x20/0x30
    [  927.518047]  rsi_module_init+0x16/0x40 [rsi_sdio]
    Signed-off-by: default avatarSiva Rebbagondla <siva.rebbagondla@redpinesignals.com>
    Signed-off-by: default avatarAmitkumar Karwar <amit.karwar@redpinesignals.com>
    Signed-off-by: default avatarKalle Valo <kvalo@codeaurora.org>
    f7005466
rsi_sdio.h 4.86 KB