Bug 80151 - OOPS in "mmc_sdio_resume" functon during resume process
Summary: OOPS in "mmc_sdio_resume" functon during resume process
Status: RESOLVED CODE_FIX
Alias: None
Product: Drivers
Classification: Unclassified
Component: MMC/SD (show other bugs)
Hardware: All Linux
: P1 high
Assignee: drivers_mmc-sd
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-07-14 01:53 UTC by fuzhonghui
Modified: 2014-07-30 02:34 UTC (History)
2 users (show)

See Also:
Kernel Version: Linux-3.16.0-rc4
Subsystem:
Regression: No
Bisected commit-id:


Attachments
Propose a patch to fix this bug. (1.33 KB, patch)
2014-07-30 02:34 UTC, fuzhonghui
Details | Diff

Description fuzhonghui 2014-07-14 01:53:37 UTC
The statement "mmc->caps2 |= MMC_CAP2_SDIO_IRQ_NOTHREAD;" is added in "sdhci_add_host" function in drivers/mmc/host/sdhci.c file from 3.16.0-rc1 on.

"sdio_card_irq_get" function in drivers/mmc/core/sdio_irq.c file:
if (!(host->caps2 & MMC_CAP2_SDIO_IRQ_NOTHREAD)) {  /* the condition is false */
            atomic_set(&host->sdio_irq_thread_abort, 0);
            host->sdio_irq_thread =                                               
                kthread_run(sdio_irq_thread, host,
                        "ksdioirqd/%s", mmc_hostname(host));


This will make  "host->sdio_irq_thread" a NULL pointer in "mmc_sdio_resume" functon of drivers/mmc/core/sdio.c file.
Comment 1 fuzhonghui 2014-07-30 02:34:12 UTC
Created attachment 144651 [details]
Propose a patch to fix this bug.

Note You need to log in before you can comment on or make changes to this bug.