From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754505AbcC1FeO (ORCPT ); Mon, 28 Mar 2016 01:34:14 -0400 Received: from mailout3.w1.samsung.com ([210.118.77.13]:47334 "EHLO mailout3.w1.samsung.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753770AbcC1FeI (ORCPT ); Mon, 28 Mar 2016 01:34:08 -0400 X-AuditID: cbfec7f5-f792a6d000001302-23-56f8c24b3918 Subject: Re: Warnings for invalid VDD (sdhci-s3c) To: Anand Moon , Adrian Hunter References: <20160324155840.50474b98@xhacker> <56F3A0B7.4050509@samsung.com> <20160324162449.29c9cf78@xhacker> <56F3A88F.50603@samsung.com> <56F3E77D.7030201@intel.com> <20160324140307.GH12245@odux.rfo.atmel.com> <56F3FB13.9040505@intel.com> Cc: Jisheng Zhang , Jaehoon Chung , Ulf Hansson , "Ivan T. Ivanov" , linux-mmc@vger.kernel.org, Linux Kernel , "linux-samsung-soc@vger.kernel.org" From: Krzysztof Kozlowski Message-id: <56F8C246.7060302@samsung.com> Date: Mon, 28 Mar 2016 14:33:58 +0900 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.6.0 MIME-version: 1.0 In-reply-to: Content-type: text/plain; charset=utf-8 Content-transfer-encoding: 7bit X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFnrHLMWRmVeSWpSXmKPExsVy+t/xK7reh36EGeybz2Jx8skaNovL82ey W9z41cZq8e74bhaL1y8MLS7vmsNmceR/P6PFjPP7mCzWbbzFbnF8bbgDl8fOWXfZPRbvecnk cefaHjaPyQsvMnv0bVnF6PF5k1wAWxSXTUpqTmZZapG+XQJXxrozj1kKJmxnrHh5eAVLA+P7 XsYuRk4OCQETifX/DkLZYhIX7q1n62Lk4hASWMoocfnecWYI5ymjxIT+HWwgVcIChhK90+8A dXBwiAj4Szx+EQpR084sMetZDxOIwyywk0li5rJb7CANbALGEpuXL2EDaeAV0JLYttEeJMwi oCrR97aDBcQWFYiQeDL3JNgVvAKCEj8m3wOLcwoES2x8f5MVpJVZQF1iypRckDCzgLzE5jVv mScwCsxC0jELoWoWkqoFjMyrGEVTS5MLipPSc430ihNzi0vz0vWS83M3MUJi4esOxqXHrA4x CnAwKvHwZlj+CBNiTSwrrsw9xCjBwawkwluwDSjEm5JYWZValB9fVJqTWnyIUZqDRUmcd+au 9yFCAumJJanZqakFqUUwWSYOTqkGRr3I0POB74w5/v+fdVF00w8FHYcV/93LxApOPBeUVBe6 /mq3mdHxxPTK9I2LnXW8vvAUXGZbV/X/4BqX8Hefz5jbevzQ1eHiqpwsV7RtwczDErotv+8+ Dup48WKK5V390//4/yZHsUw8taFsV+uP9+sOR2VuCcgXPdirJ1bZwu265CbXIe/3c5VYijMS DbWYi4oTAWN2vyaBAgAA Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 27.03.2016 16:41, Anand Moon wrote: > > On My Odroid U3 with debug flags enable I am observing bellow deadlock. There is a sleep in atomic context and possible deadlock, but: 1. Are you sure it does not happen without the patch? 2. Are you sure it is not the same as already known issue on sdhci-s3c? For example reported here: http://www.spinics.net/lists/linux-samsung-soc/msg42398.html What is reproducibility rate? Best regards, Krzysztof > --------------------------------------------------------------------------------------------------------- > [ 202.519524] BUG: sleeping function called from invalid context at > kernel/locking/mutex.c:617 > [ 202.522364] in_atomic(): 1, irqs_disabled(): 128, pid: 100, name: mmcqd/0 > [ 202.529129] 1 lock held by mmcqd/0/100: > [ 202.529150] #0: (&(&host->lock)->rlock#2){-.-...}, at: > [] sdhci_do_set_ios+0x1c/0x484 > [ 202.529271] irq event stamp: 703530 > [ 202.529291] hardirqs last enabled at (703529): [] > _raw_spin_unlock_irqrestore+0x6c/0x74 > [ 202.529343] hardirqs last disabled at (703530): [] > _raw_spin_lock_irqsave+0x1c/0x84 > [ 202.529384] softirqs last enabled at (703456): [] > __do_softirq+0x244/0x2c0 > [ 202.529438] softirqs last disabled at (703445): [] > irq_exit+0xec/0x128 > [ 202.529472] Preemption disabled at:[< (null)>] (null) > [ 202.534415] > [ 202.534449] CPU: 0 PID: 100 Comm: mmcqd/0 Not tainted 4.6.0-rc1-u3s #38 > [ 202.534473] Hardware name: SAMSUNG EXYNOS (Flattened Device Tree) > [ 202.534544] [] (unwind_backtrace) from [] > (show_stack+0x10/0x14) > [ 202.534594] [] (show_stack) from [] > (dump_stack+0x98/0xc4) > [ 202.534639] [] (dump_stack) from [] > (mutex_lock_nested+0x2c/0x4dc) > [ 202.534685] [] (mutex_lock_nested) from [] > (clk_prepare_lock+0x50/0xf8) > [ 202.534726] [] (clk_prepare_lock) from [] > (clk_round_rate+0x1c/0x58) > [ 202.534773] [] (clk_round_rate) from [] > (sdhci_s3c_set_clock+0x18c/0x1b0) > [ 202.534819] [] (sdhci_s3c_set_clock) from [] > (sdhci_cmu_set_clock+0x24/0x17c) > [ 202.534860] [] (sdhci_cmu_set_clock) from [] > (sdhci_do_set_ios+0x78/0x484) > [ 202.534904] [] (sdhci_do_set_ios) from [] > (sdhci_runtime_resume_host+0x60/0x114) > [ 202.534957] [] (sdhci_runtime_resume_host) from > [] (__rpm_callback+0x2c/0x60) > [ 202.535000] [] (__rpm_callback) from [] > (rpm_callback+0x54/0x80) > [ 202.535041] [] (rpm_callback) from [] > (rpm_resume+0x364/0x558) > [ 202.535081] [] (rpm_resume) from [] > (__pm_runtime_resume+0x60/0x8c) > [ 202.535125] [] (__pm_runtime_resume) from [] > (__mmc_claim_host+0x1b4/0x1f8) > [ 202.535176] [] (__mmc_claim_host) from [] > (mmc_sd_runtime_resume+0x20/0xac) > [ 202.535220] [] (mmc_sd_runtime_resume) from [] > (__rpm_callback+0x2c/0x60) > [ 202.535259] [] (__rpm_callback) from [] > (rpm_callback+0x54/0x80) > [ 202.535299] [] (rpm_callback) from [] > (rpm_resume+0x364/0x558) > [ 202.535340] [] (rpm_resume) from [] > (__pm_runtime_resume+0x60/0x8c) > [ 202.535379] [] (__pm_runtime_resume) from [] > (mmc_get_card+0x14/0x24) > [ 202.535420] [] (mmc_get_card) from [] > (mmc_blk_issue_rq+0x258/0x4f0) > [ 202.535461] [] (mmc_blk_issue_rq) from [] > (mmc_queue_thread+0xd0/0x1d8) > [ 202.535513] [] (mmc_queue_thread) from [] > (kthread+0xf4/0x10c) > [ 202.535561] [] (kthread) from [] > (ret_from_fork+0x14/0x24) > [ 202.535624] > [ 202.535893] ====================================================== > [ 202.542059] [ INFO: HARDIRQ-safe -> HARDIRQ-unsafe lock order detected ] > [ 202.548742] 4.6.0-rc1-u3s #38 Not tainted > [ 202.552732] ------------------------------------------------------ > [ 202.558902] mmcqd/0/100 [HC0[0]:SC0[0]:HE0:SE1] is trying to acquire: > [ 202.565317] (prepare_lock){+.+...}, at: [] > clk_prepare_lock+0x50/0xf8 > [ 202.572695] > [ 202.572695] and this task is already holding: > [ 202.578510] (&(&host->lock)->rlock#2){-.-...}, at: [] > sdhci_do_set_ios+0x1c/0x484 > [ 202.586930] which would create a new lock dependency: > [ 202.591964] (&(&host->lock)->rlock#2){-.-...} -> (prepare_lock){+.+...} > [ 202.598650] > [ 202.598650] but this new dependency connects a HARDIRQ-irq-safe lock: > [ 202.606546] (&(&host->lock)->rlock#2){-.-...} > [ 202.606546] ... which became HARDIRQ-irq-safe at: > [ 202.614359] [] _raw_spin_lock+0x3c/0x74 > [ 202.619219] [] sdhci_irq+0x1c/0x814 > [ 202.623732] [] handle_irq_event_percpu+0x9c/0x150 > [ 202.629461] [] handle_irq_event+0x38/0x5c > [ 202.634495] [] handle_fasteoi_irq+0xd0/0x1a8 > [ 202.639790] [] generic_handle_irq+0x24/0x34 > [ 202.644998] [] __handle_domain_irq+0x7c/0xec > [ 202.650293] [] gic_handle_irq+0x54/0x94 > [ 202.655154] [] __irq_svc+0x58/0x98 > [ 202.659581] [] arch_cpu_idle+0x24/0x3c > [ 202.664354] [] arch_cpu_idle+0x24/0x3c > [ 202.669128] [] cpu_startup_entry+0x1c8/0x24c > [ 202.674423] [] start_kernel+0x39c/0x3a8 > [ 202.679284] [<4000807c>] 0x4000807c > [ 202.682933] > [ 202.682933] to a HARDIRQ-irq-unsafe lock: > [ 202.688399] (prepare_lock){+.+...} > [ 202.688399] ... which became HARDIRQ-irq-unsafe at: > [ 202.695429] ... [] mutex_trylock+0x130/0x250 > [ 202.700637] [] clk_prepare_lock+0x10/0xf8 > [ 202.705672] [] __clk_create_clk.part.13+0x4c/0x80 > [ 202.711400] [] __of_clk_get_from_provider+0x88/0xf8 > [ 202.717303] [] __of_clk_get_by_name+0xfc/0x114 > [ 202.722771] [] clk_get+0x2c/0x5c > [ 202.727024] [] devm_clk_get+0x3c/0x78 > [ 202.731712] [] exynos_sysmmu_probe+0xe8/0x310 > [ 202.737093] [] platform_drv_probe+0x4c/0xb0 > [ 202.742301] [] driver_probe_device+0x20c/0x2b8 > [ 202.747769] [] bus_for_each_drv+0x60/0x94 > [ 202.752804] [] __device_attach+0xb4/0x118 > [ 202.757838] [] bus_probe_device+0x88/0x90 > [ 202.762873] [] device_add+0x370/0x570 > [ 202.767560] [] of_platform_device_create_pdata+0x84/0xb8 > [ 202.773896] [] exynos_iommu_of_setup+0x120/0x158 > [ 202.779538] [] of_iommu_init+0x44/0x78 > [ 202.784312] [] customize_machine+0x8/0x44 > [ 202.789347] [] do_one_initcall+0x90/0x1dc > [ 202.794381] [] kernel_init_freeable+0x158/0x1e8 > [ 202.799936] [] kernel_init+0x8/0x114 > [ 202.804537] [] ret_from_fork+0x14/0x24 > [ 202.809313] > [ 202.809313] other info that might help us debug this: > [ 202.809313] > [ 202.817299] Possible interrupt unsafe locking scenario: > [ 202.817299] > [ 202.824068] CPU0 CPU1 > [ 202.828581] ---- ---- > [ 202.833094] lock(prepare_lock); > [ 202.836394] local_irq_disable(); > [ 202.842295] lock(&(&host->lock)->rlock#2); > [ 202.849065] lock(prepare_lock); > [ 202.854881] > [ 202.857484] lock(&(&host->lock)->rlock#2); > [ 202.861912] > [ 202.861912] *** DEADLOCK *** > [ 202.861912] > [ 202.867820] 1 lock held by mmcqd/0/100: > [ 202.871634] #0: (&(&host->lock)->rlock#2){-.-...}, at: > [] sdhci_do_set_ios+0x1c/0x484 > [ 202.880489] > [ 202.880489] the dependencies between HARDIRQ-irq-safe lock and the > holding lock: > [ 202.888106] -> (&(&host->lock)->rlock#2){-.-...} ops: 69588 { > [ 202.893768] IN-HARDIRQ-W at: > [ 202.896893] [] _raw_spin_lock+0x3c/0x74 > [ 202.903316] [] sdhci_irq+0x1c/0x814 > [ 202.909392] [] > handle_irq_event_percpu+0x9c/0x150 > [ 202.916683] [] handle_irq_event+0x38/0x5c > [ 202.923280] [] handle_fasteoi_irq+0xd0/0x1a8 > [ 202.930137] [] generic_handle_irq+0x24/0x34 > [ 202.936908] [] __handle_domain_irq+0x7c/0xec > [ 202.943765] [] gic_handle_irq+0x54/0x94 > [ 202.950188] [] __irq_svc+0x58/0x98 > [ 202.956177] [] arch_cpu_idle+0x24/0x3c > [ 202.962513] [] arch_cpu_idle+0x24/0x3c > [ 202.968850] [] cpu_startup_entry+0x1c8/0x24c > [ 202.975707] [] start_kernel+0x39c/0x3a8 > [ 202.982130] [<4000807c>] 0x4000807c > [ 202.987340] IN-SOFTIRQ-W at: > [ 202.990463] [] _raw_spin_lock_irqsave+0x48/0x84 > [ 202.997581] [] sdhci_tasklet_finish+0x18/0x1f4 > [ 203.004611] [] tasklet_action+0xac/0x164 > [ 203.011122] [] __do_softirq+0x168/0x2c0 > [ 203.017544] [] irq_exit+0xec/0x128 > [ 203.023534] [] __handle_domain_irq+0x80/0xec > [ 203.030391] [] gic_handle_irq+0x54/0x94 > [ 203.036814] [] __irq_svc+0x58/0x98 > [ 203.042804] [] arch_cpu_idle+0x24/0x3c > [ 203.049140] [] arch_cpu_idle+0x24/0x3c > [ 203.055476] [] cpu_startup_entry+0x1c8/0x24c > [ 203.062334] [] start_kernel+0x39c/0x3a8 > [ 203.068756] [<4000807c>] 0x4000807c > [ 203.073966] INITIAL USE at: > [ 203.077003] [] _raw_spin_lock_irqsave+0x48/0x84 > [ 203.084033] [] sdhci_do_set_ios+0x1c/0x484 > [ 203.090630] [] > sdhci_runtime_resume_host+0x60/0x114 > [ 203.098008] [] __rpm_callback+0x2c/0x60 > [ 203.104345] [] rpm_callback+0x20/0x80 > [ 203.110507] [] rpm_resume+0x364/0x558 > [ 203.116670] [] __pm_runtime_resume+0x60/0x8c > [ 203.123440] [] __mmc_claim_host+0x1b4/0x1f8 > [ 203.130124] [] mmc_start_host+0x34/0xa8 > [ 203.136461] [] mmc_add_host+0x5c/0x80 > [ 203.142624] [] sdhci_add_host+0x8c4/0xdec > [ 203.149133] [] sdhci_s3c_probe+0x4c4/0x568 > [ 203.155730] [] platform_drv_probe+0x4c/0xb0 > [ 203.162414] [] driver_probe_device+0x20c/0x2b8 > [ 203.169358] [] __driver_attach+0xc0/0xc4 > [ 203.175781] [] bus_for_each_dev+0x68/0x9c > [ 203.182291] [] bus_add_driver+0x1a0/0x218 > [ 203.188801] [] driver_register+0x78/0xf8 > [ 203.195224] [] do_one_initcall+0x90/0x1dc > [ 203.201734] [] kernel_init_freeable+0x158/0x1e8 > [ 203.208765] [] kernel_init+0x8/0x114 > [ 203.214841] [] ret_from_fork+0x14/0x24 > [ 203.221091] } > [ 203.222740] ... key at: [] __key.32364+0x0/0x8 > [ 203.228556] ... acquired at: > [ 203.231506] [] lock_acquire+0xa8/0xd0 > [ 203.236280] [] mutex_lock_nested+0x78/0x4dc > [ 203.241575] [] clk_prepare_lock+0x50/0xf8 > [ 203.246696] [] clk_round_rate+0x1c/0x58 > [ 203.251643] [] sdhci_s3c_set_clock+0x18c/0x1b0 > [ 203.257199] [] sdhci_cmu_set_clock+0x24/0x17c > [ 203.262667] [] sdhci_do_set_ios+0x78/0x484 > [ 203.267875] [] sdhci_runtime_resume_host+0x60/0x114 > [ 203.273864] [] __rpm_callback+0x2c/0x60 > [ 203.278812] [] rpm_callback+0x54/0x80 > [ 203.283586] [] rpm_resume+0x364/0x558 > [ 203.288359] [] __pm_runtime_resume+0x60/0x8c > [ 203.293741] [] __mmc_claim_host+0x1b4/0x1f8 > [ 203.299036] [] mmc_sd_runtime_resume+0x20/0xac > [ 203.304591] [] __rpm_callback+0x2c/0x60 > [ 203.309539] [] rpm_callback+0x54/0x80 > [ 203.314313] [] rpm_resume+0x364/0x558 > [ 203.319087] [] __pm_runtime_resume+0x60/0x8c > [ 203.324468] [] mmc_get_card+0x14/0x24 > [ 203.329243] [] mmc_blk_issue_rq+0x258/0x4f0 > [ 203.334538] [] mmc_queue_thread+0xd0/0x1d8 > [ 203.339745] [] kthread+0xf4/0x10c > [ 203.344172] [] ret_from_fork+0x14/0x24 > [ 203.349033] > [ 203.350509] > [ 203.350509] the dependencies between the lock to be acquired and > HARDIRQ-irq-unsafe lock: > [ 203.358904] -> (prepare_lock){+.+...} ops: 5285 { > [ 203.363531] HARDIRQ-ON-W at: > [ 203.366654] [] mutex_trylock+0x130/0x250 > [ 203.373164] [] clk_prepare_lock+0x10/0xf8 > [ 203.379761] [] > __clk_create_clk.part.13+0x4c/0x80 > [ 203.387052] [] > __of_clk_get_from_provider+0x88/0xf8 > [ 203.394517] [] __of_clk_get_by_name+0xfc/0x114 > [ 203.401548] [] clk_get+0x2c/0x5c > [ 203.407363] [] devm_clk_get+0x3c/0x78 > [ 203.413613] [] exynos_sysmmu_probe+0xe8/0x310 > [ 203.420557] [] platform_drv_probe+0x4c/0xb0 > [ 203.427327] [] driver_probe_device+0x20c/0x2b8 > [ 203.434358] [] bus_for_each_drv+0x60/0x94 > [ 203.440955] [] __device_attach+0xb4/0x118 > [ 203.447552] [] bus_probe_device+0x88/0x90 > [ 203.454149] [] device_add+0x370/0x570 > [ 203.460399] [] > of_platform_device_create_pdata+0x84/0xb8 > [ 203.468297] [] > exynos_iommu_of_setup+0x120/0x158 > [ 203.475501] [] of_iommu_init+0x44/0x78 > [ 203.481838] [] customize_machine+0x8/0x44 > [ 203.488434] [] do_one_initcall+0x90/0x1dc > [ 203.495031] [] kernel_init_freeable+0x158/0x1e8 > [ 203.502149] [] kernel_init+0x8/0x114 > [ 203.508312] [] ret_from_fork+0x14/0x24 > [ 203.514650] SOFTIRQ-ON-W at: > [ 203.517773] [] mutex_trylock+0x130/0x250 > [ 203.524283] [] clk_prepare_lock+0x10/0xf8 > [ 203.530880] [] > __clk_create_clk.part.13+0x4c/0x80 > [ 203.538171] [] > __of_clk_get_from_provider+0x88/0xf8 > [ 203.545636] [] __of_clk_get_by_name+0xfc/0x114 > [ 203.552666] [] clk_get+0x2c/0x5c > [ 203.558482] [] devm_clk_get+0x3c/0x78 > [ 203.564732] [] exynos_sysmmu_probe+0xe8/0x310 > [ 203.571676] [] platform_drv_probe+0x4c/0xb0 > [ 203.578446] [] driver_probe_device+0x20c/0x2b8 > [ 203.585477] [] bus_for_each_drv+0x60/0x94 > [ 203.592074] [] __device_attach+0xb4/0x118 > [ 203.598671] [] bus_probe_device+0x88/0x90 > [ 203.605267] [] device_add+0x370/0x570 > [ 203.611517] [] > of_platform_device_create_pdata+0x84/0xb8 > [ 203.619416] [] > exynos_iommu_of_setup+0x120/0x158 > [ 203.626620] [] of_iommu_init+0x44/0x78 > [ 203.632956] [] customize_machine+0x8/0x44 > [ 203.639553] [] do_one_initcall+0x90/0x1dc > [ 203.646150] [] kernel_init_freeable+0x158/0x1e8 > [ 203.653268] [] kernel_init+0x8/0x114 > [ 203.659431] [] ret_from_fork+0x14/0x24 > [ 203.665768] INITIAL USE at: > [ 203.668805] [] mutex_trylock+0xf8/0x250 > [ 203.675142] [] clk_prepare_lock+0x10/0xf8 > [ 203.681651] [] > __clk_create_clk.part.13+0x4c/0x80 > [ 203.688856] [] clk_register+0x1b8/0x5f0 > [ 203.695192] [] > clk_register_fixed_rate_with_accuracy+0x94/0xc4 > [ 203.703525] [] clk_register_fixed_rate+0x18/0x20 > [ 203.710642] [] > samsung_clk_register_fixed_rate+0x4c/0xb8 > [ 203.718455] [] > samsung_clk_of_register_fixed_ext+0x90/0x98 > [ 203.726440] [] exynos4_clk_init+0x88/0x5b0 > [ 203.733037] [] of_clk_init+0x14c/0x1d8 > [ 203.739287] [] time_init+0x24/0x2c > [ 203.745189] [] start_kernel+0x260/0x3a8 > [ 203.751526] [<4000807c>] 0x4000807c > [ 203.756647] } > [ 203.758296] ... key at: [] prepare_lock+0x3c/0x54 > [ 203.764373] ... acquired at: > [ 203.767322] [] lock_acquire+0xa8/0xd0 > [ 203.772096] [] mutex_lock_nested+0x78/0x4dc > [ 203.777391] [] clk_prepare_lock+0x50/0xf8 > [ 203.782512] [] clk_round_rate+0x1c/0x58 > [ 203.787460] [] sdhci_s3c_set_clock+0x18c/0x1b0 > [ 203.793015] [] sdhci_cmu_set_clock+0x24/0x17c > [ 203.798484] [] sdhci_do_set_ios+0x78/0x484 > [ 203.803691] [] sdhci_runtime_resume_host+0x60/0x114 > [ 203.809680] [] __rpm_callback+0x2c/0x60 > [ 203.814628] [] rpm_callback+0x54/0x80 > [ 203.819402] [] rpm_resume+0x364/0x558 > [ 203.824176] [] __pm_runtime_resume+0x60/0x8c > [ 203.829558] [] __mmc_claim_host+0x1b4/0x1f8 > [ 203.834852] [] mmc_sd_runtime_resume+0x20/0xac > [ 203.840408] [] __rpm_callback+0x2c/0x60 > [ 203.845355] [] rpm_callback+0x54/0x80 > [ 203.850129] [] rpm_resume+0x364/0x558 > [ 203.854903] [] __pm_runtime_resume+0x60/0x8c > [ 203.860285] [] mmc_get_card+0x14/0x24 > [ 203.865059] [] mmc_blk_issue_rq+0x258/0x4f0 > [ 203.870354] [] mmc_queue_thread+0xd0/0x1d8 > [ 203.875562] [] kthread+0xf4/0x10c > [ 203.879988] [] ret_from_fork+0x14/0x24 > [ 203.884850] > [ 203.886326] > [ 203.886326] stack backtrace: > [ 203.890679] CPU: 0 PID: 100 Comm: mmcqd/0 Not tainted 4.6.0-rc1-u3s #38 > [ 203.897266] Hardware name: SAMSUNG EXYNOS (Flattened Device Tree) > [ 203.903374] [] (unwind_backtrace) from [] > (show_stack+0x10/0x14) > [ 203.911089] [] (show_stack) from [] > (dump_stack+0x98/0xc4) > [ 203.918296] [] (dump_stack) from [] > (check_usage+0x49c/0x658) > [ 203.925757] [] (check_usage) from [] > (check_irq_usage+0x60/0xb8) > [ 203.933509] [] (check_irq_usage) from [] > (__lock_acquire+0x15c8/0x201c) > [ 203.941844] [] (__lock_acquire) from [] > (lock_acquire+0xa8/0xd0) > [ 203.949598] [] (lock_acquire) from [] > (mutex_lock_nested+0x78/0x4dc) > [ 203.957639] [] (mutex_lock_nested) from [] > (clk_prepare_lock+0x50/0xf8) > [ 203.965969] [] (clk_prepare_lock) from [] > (clk_round_rate+0x1c/0x58) > [ 203.974085] [] (clk_round_rate) from [] > (sdhci_s3c_set_clock+0x18c/0x1b0) > [ 203.982551] [] (sdhci_s3c_set_clock) from [] > (sdhci_cmu_set_clock+0x24/0x17c) > [ 203.991403] [] (sdhci_cmu_set_clock) from [] > (sdhci_do_set_ios+0x78/0x484) > [ 203.999993] [] (sdhci_do_set_ios) from [] > (sdhci_runtime_resume_host+0x60/0x114) > [ 204.009094] [] (sdhci_runtime_resume_host) from > [] (__rpm_callback+0x2c/0x60) > [ 204.017938] [] (__rpm_callback) from [] > (rpm_callback+0x54/0x80) > [ 204.025661] [] (rpm_callback) from [] > (rpm_resume+0x364/0x558) > [ 204.033214] [] (rpm_resume) from [] > (__pm_runtime_resume+0x60/0x8c) > [ 204.041201] [] (__pm_runtime_resume) from [] > (__mmc_claim_host+0x1b4/0x1f8) > [ 204.049885] [] (__mmc_claim_host) from [] > (mmc_sd_runtime_resume+0x20/0xac) > [ 204.058563] [] (mmc_sd_runtime_resume) from [] > (__rpm_callback+0x2c/0x60) > [ 204.067063] [] (__rpm_callback) from [] > (rpm_callback+0x54/0x80) > [ 204.074788] [] (rpm_callback) from [] > (rpm_resume+0x364/0x558) > [ 204.082340] [] (rpm_resume) from [] > (__pm_runtime_resume+0x60/0x8c) > [ 204.090326] [] (__pm_runtime_resume) from [] > (mmc_get_card+0x14/0x24) > [ 204.098487] [] (mmc_get_card) from [] > (mmc_blk_issue_rq+0x258/0x4f0) > [ 204.106559] [] (mmc_blk_issue_rq) from [] > (mmc_queue_thread+0xd0/0x1d8) > [ 204.114903] [] (mmc_queue_thread) from [] > (kthread+0xf4/0x10c) > [ 204.122452] [] (kthread) from [] > (ret_from_fork+0x14/0x24) > --------------------------------------------------------------------------------------------------------- > > Best Regards > -Anand Moon > >> -- >> To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in >> the body of a message to majordomo@vger.kernel.org >> More majordomo info at http://vger.kernel.org/majordomo-info.html > > From mboxrd@z Thu Jan 1 00:00:00 1970 From: Krzysztof Kozlowski Subject: Re: Warnings for invalid VDD (sdhci-s3c) Date: Mon, 28 Mar 2016 14:33:58 +0900 Message-ID: <56F8C246.7060302@samsung.com> References: <20160324155840.50474b98@xhacker> <56F3A0B7.4050509@samsung.com> <20160324162449.29c9cf78@xhacker> <56F3A88F.50603@samsung.com> <56F3E77D.7030201@intel.com> <20160324140307.GH12245@odux.rfo.atmel.com> <56F3FB13.9040505@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit Return-path: In-reply-to: Sender: linux-samsung-soc-owner@vger.kernel.org To: Anand Moon , Adrian Hunter Cc: Jisheng Zhang , Jaehoon Chung , Ulf Hansson , "Ivan T. Ivanov" , linux-mmc@vger.kernel.org, Linux Kernel , "linux-samsung-soc@vger.kernel.org" List-Id: linux-mmc@vger.kernel.org On 27.03.2016 16:41, Anand Moon wrote: > > On My Odroid U3 with debug flags enable I am observing bellow deadlock. There is a sleep in atomic context and possible deadlock, but: 1. Are you sure it does not happen without the patch? 2. Are you sure it is not the same as already known issue on sdhci-s3c? For example reported here: http://www.spinics.net/lists/linux-samsung-soc/msg42398.html What is reproducibility rate? Best regards, Krzysztof > --------------------------------------------------------------------------------------------------------- > [ 202.519524] BUG: sleeping function called from invalid context at > kernel/locking/mutex.c:617 > [ 202.522364] in_atomic(): 1, irqs_disabled(): 128, pid: 100, name: mmcqd/0 > [ 202.529129] 1 lock held by mmcqd/0/100: > [ 202.529150] #0: (&(&host->lock)->rlock#2){-.-...}, at: > [] sdhci_do_set_ios+0x1c/0x484 > [ 202.529271] irq event stamp: 703530 > [ 202.529291] hardirqs last enabled at (703529): [] > _raw_spin_unlock_irqrestore+0x6c/0x74 > [ 202.529343] hardirqs last disabled at (703530): [] > _raw_spin_lock_irqsave+0x1c/0x84 > [ 202.529384] softirqs last enabled at (703456): [] > __do_softirq+0x244/0x2c0 > [ 202.529438] softirqs last disabled at (703445): [] > irq_exit+0xec/0x128 > [ 202.529472] Preemption disabled at:[< (null)>] (null) > [ 202.534415] > [ 202.534449] CPU: 0 PID: 100 Comm: mmcqd/0 Not tainted 4.6.0-rc1-u3s #38 > [ 202.534473] Hardware name: SAMSUNG EXYNOS (Flattened Device Tree) > [ 202.534544] [] (unwind_backtrace) from [] > (show_stack+0x10/0x14) > [ 202.534594] [] (show_stack) from [] > (dump_stack+0x98/0xc4) > [ 202.534639] [] (dump_stack) from [] > (mutex_lock_nested+0x2c/0x4dc) > [ 202.534685] [] (mutex_lock_nested) from [] > (clk_prepare_lock+0x50/0xf8) > [ 202.534726] [] (clk_prepare_lock) from [] > (clk_round_rate+0x1c/0x58) > [ 202.534773] [] (clk_round_rate) from [] > (sdhci_s3c_set_clock+0x18c/0x1b0) > [ 202.534819] [] (sdhci_s3c_set_clock) from [] > (sdhci_cmu_set_clock+0x24/0x17c) > [ 202.534860] [] (sdhci_cmu_set_clock) from [] > (sdhci_do_set_ios+0x78/0x484) > [ 202.534904] [] (sdhci_do_set_ios) from [] > (sdhci_runtime_resume_host+0x60/0x114) > [ 202.534957] [] (sdhci_runtime_resume_host) from > [] (__rpm_callback+0x2c/0x60) > [ 202.535000] [] (__rpm_callback) from [] > (rpm_callback+0x54/0x80) > [ 202.535041] [] (rpm_callback) from [] > (rpm_resume+0x364/0x558) > [ 202.535081] [] (rpm_resume) from [] > (__pm_runtime_resume+0x60/0x8c) > [ 202.535125] [] (__pm_runtime_resume) from [] > (__mmc_claim_host+0x1b4/0x1f8) > [ 202.535176] [] (__mmc_claim_host) from [] > (mmc_sd_runtime_resume+0x20/0xac) > [ 202.535220] [] (mmc_sd_runtime_resume) from [] > (__rpm_callback+0x2c/0x60) > [ 202.535259] [] (__rpm_callback) from [] > (rpm_callback+0x54/0x80) > [ 202.535299] [] (rpm_callback) from [] > (rpm_resume+0x364/0x558) > [ 202.535340] [] (rpm_resume) from [] > (__pm_runtime_resume+0x60/0x8c) > [ 202.535379] [] (__pm_runtime_resume) from [] > (mmc_get_card+0x14/0x24) > [ 202.535420] [] (mmc_get_card) from [] > (mmc_blk_issue_rq+0x258/0x4f0) > [ 202.535461] [] (mmc_blk_issue_rq) from [] > (mmc_queue_thread+0xd0/0x1d8) > [ 202.535513] [] (mmc_queue_thread) from [] > (kthread+0xf4/0x10c) > [ 202.535561] [] (kthread) from [] > (ret_from_fork+0x14/0x24) > [ 202.535624] > [ 202.535893] ====================================================== > [ 202.542059] [ INFO: HARDIRQ-safe -> HARDIRQ-unsafe lock order detected ] > [ 202.548742] 4.6.0-rc1-u3s #38 Not tainted > [ 202.552732] ------------------------------------------------------ > [ 202.558902] mmcqd/0/100 [HC0[0]:SC0[0]:HE0:SE1] is trying to acquire: > [ 202.565317] (prepare_lock){+.+...}, at: [] > clk_prepare_lock+0x50/0xf8 > [ 202.572695] > [ 202.572695] and this task is already holding: > [ 202.578510] (&(&host->lock)->rlock#2){-.-...}, at: [] > sdhci_do_set_ios+0x1c/0x484 > [ 202.586930] which would create a new lock dependency: > [ 202.591964] (&(&host->lock)->rlock#2){-.-...} -> (prepare_lock){+.+...} > [ 202.598650] > [ 202.598650] but this new dependency connects a HARDIRQ-irq-safe lock: > [ 202.606546] (&(&host->lock)->rlock#2){-.-...} > [ 202.606546] ... which became HARDIRQ-irq-safe at: > [ 202.614359] [] _raw_spin_lock+0x3c/0x74 > [ 202.619219] [] sdhci_irq+0x1c/0x814 > [ 202.623732] [] handle_irq_event_percpu+0x9c/0x150 > [ 202.629461] [] handle_irq_event+0x38/0x5c > [ 202.634495] [] handle_fasteoi_irq+0xd0/0x1a8 > [ 202.639790] [] generic_handle_irq+0x24/0x34 > [ 202.644998] [] __handle_domain_irq+0x7c/0xec > [ 202.650293] [] gic_handle_irq+0x54/0x94 > [ 202.655154] [] __irq_svc+0x58/0x98 > [ 202.659581] [] arch_cpu_idle+0x24/0x3c > [ 202.664354] [] arch_cpu_idle+0x24/0x3c > [ 202.669128] [] cpu_startup_entry+0x1c8/0x24c > [ 202.674423] [] start_kernel+0x39c/0x3a8 > [ 202.679284] [<4000807c>] 0x4000807c > [ 202.682933] > [ 202.682933] to a HARDIRQ-irq-unsafe lock: > [ 202.688399] (prepare_lock){+.+...} > [ 202.688399] ... which became HARDIRQ-irq-unsafe at: > [ 202.695429] ... [] mutex_trylock+0x130/0x250 > [ 202.700637] [] clk_prepare_lock+0x10/0xf8 > [ 202.705672] [] __clk_create_clk.part.13+0x4c/0x80 > [ 202.711400] [] __of_clk_get_from_provider+0x88/0xf8 > [ 202.717303] [] __of_clk_get_by_name+0xfc/0x114 > [ 202.722771] [] clk_get+0x2c/0x5c > [ 202.727024] [] devm_clk_get+0x3c/0x78 > [ 202.731712] [] exynos_sysmmu_probe+0xe8/0x310 > [ 202.737093] [] platform_drv_probe+0x4c/0xb0 > [ 202.742301] [] driver_probe_device+0x20c/0x2b8 > [ 202.747769] [] bus_for_each_drv+0x60/0x94 > [ 202.752804] [] __device_attach+0xb4/0x118 > [ 202.757838] [] bus_probe_device+0x88/0x90 > [ 202.762873] [] device_add+0x370/0x570 > [ 202.767560] [] of_platform_device_create_pdata+0x84/0xb8 > [ 202.773896] [] exynos_iommu_of_setup+0x120/0x158 > [ 202.779538] [] of_iommu_init+0x44/0x78 > [ 202.784312] [] customize_machine+0x8/0x44 > [ 202.789347] [] do_one_initcall+0x90/0x1dc > [ 202.794381] [] kernel_init_freeable+0x158/0x1e8 > [ 202.799936] [] kernel_init+0x8/0x114 > [ 202.804537] [] ret_from_fork+0x14/0x24 > [ 202.809313] > [ 202.809313] other info that might help us debug this: > [ 202.809313] > [ 202.817299] Possible interrupt unsafe locking scenario: > [ 202.817299] > [ 202.824068] CPU0 CPU1 > [ 202.828581] ---- ---- > [ 202.833094] lock(prepare_lock); > [ 202.836394] local_irq_disable(); > [ 202.842295] lock(&(&host->lock)->rlock#2); > [ 202.849065] lock(prepare_lock); > [ 202.854881] > [ 202.857484] lock(&(&host->lock)->rlock#2); > [ 202.861912] > [ 202.861912] *** DEADLOCK *** > [ 202.861912] > [ 202.867820] 1 lock held by mmcqd/0/100: > [ 202.871634] #0: (&(&host->lock)->rlock#2){-.-...}, at: > [] sdhci_do_set_ios+0x1c/0x484 > [ 202.880489] > [ 202.880489] the dependencies between HARDIRQ-irq-safe lock and the > holding lock: > [ 202.888106] -> (&(&host->lock)->rlock#2){-.-...} ops: 69588 { > [ 202.893768] IN-HARDIRQ-W at: > [ 202.896893] [] _raw_spin_lock+0x3c/0x74 > [ 202.903316] [] sdhci_irq+0x1c/0x814 > [ 202.909392] [] > handle_irq_event_percpu+0x9c/0x150 > [ 202.916683] [] handle_irq_event+0x38/0x5c > [ 202.923280] [] handle_fasteoi_irq+0xd0/0x1a8 > [ 202.930137] [] generic_handle_irq+0x24/0x34 > [ 202.936908] [] __handle_domain_irq+0x7c/0xec > [ 202.943765] [] gic_handle_irq+0x54/0x94 > [ 202.950188] [] __irq_svc+0x58/0x98 > [ 202.956177] [] arch_cpu_idle+0x24/0x3c > [ 202.962513] [] arch_cpu_idle+0x24/0x3c > [ 202.968850] [] cpu_startup_entry+0x1c8/0x24c > [ 202.975707] [] start_kernel+0x39c/0x3a8 > [ 202.982130] [<4000807c>] 0x4000807c > [ 202.987340] IN-SOFTIRQ-W at: > [ 202.990463] [] _raw_spin_lock_irqsave+0x48/0x84 > [ 202.997581] [] sdhci_tasklet_finish+0x18/0x1f4 > [ 203.004611] [] tasklet_action+0xac/0x164 > [ 203.011122] [] __do_softirq+0x168/0x2c0 > [ 203.017544] [] irq_exit+0xec/0x128 > [ 203.023534] [] __handle_domain_irq+0x80/0xec > [ 203.030391] [] gic_handle_irq+0x54/0x94 > [ 203.036814] [] __irq_svc+0x58/0x98 > [ 203.042804] [] arch_cpu_idle+0x24/0x3c > [ 203.049140] [] arch_cpu_idle+0x24/0x3c > [ 203.055476] [] cpu_startup_entry+0x1c8/0x24c > [ 203.062334] [] start_kernel+0x39c/0x3a8 > [ 203.068756] [<4000807c>] 0x4000807c > [ 203.073966] INITIAL USE at: > [ 203.077003] [] _raw_spin_lock_irqsave+0x48/0x84 > [ 203.084033] [] sdhci_do_set_ios+0x1c/0x484 > [ 203.090630] [] > sdhci_runtime_resume_host+0x60/0x114 > [ 203.098008] [] __rpm_callback+0x2c/0x60 > [ 203.104345] [] rpm_callback+0x20/0x80 > [ 203.110507] [] rpm_resume+0x364/0x558 > [ 203.116670] [] __pm_runtime_resume+0x60/0x8c > [ 203.123440] [] __mmc_claim_host+0x1b4/0x1f8 > [ 203.130124] [] mmc_start_host+0x34/0xa8 > [ 203.136461] [] mmc_add_host+0x5c/0x80 > [ 203.142624] [] sdhci_add_host+0x8c4/0xdec > [ 203.149133] [] sdhci_s3c_probe+0x4c4/0x568 > [ 203.155730] [] platform_drv_probe+0x4c/0xb0 > [ 203.162414] [] driver_probe_device+0x20c/0x2b8 > [ 203.169358] [] __driver_attach+0xc0/0xc4 > [ 203.175781] [] bus_for_each_dev+0x68/0x9c > [ 203.182291] [] bus_add_driver+0x1a0/0x218 > [ 203.188801] [] driver_register+0x78/0xf8 > [ 203.195224] [] do_one_initcall+0x90/0x1dc > [ 203.201734] [] kernel_init_freeable+0x158/0x1e8 > [ 203.208765] [] kernel_init+0x8/0x114 > [ 203.214841] [] ret_from_fork+0x14/0x24 > [ 203.221091] } > [ 203.222740] ... key at: [] __key.32364+0x0/0x8 > [ 203.228556] ... acquired at: > [ 203.231506] [] lock_acquire+0xa8/0xd0 > [ 203.236280] [] mutex_lock_nested+0x78/0x4dc > [ 203.241575] [] clk_prepare_lock+0x50/0xf8 > [ 203.246696] [] clk_round_rate+0x1c/0x58 > [ 203.251643] [] sdhci_s3c_set_clock+0x18c/0x1b0 > [ 203.257199] [] sdhci_cmu_set_clock+0x24/0x17c > [ 203.262667] [] sdhci_do_set_ios+0x78/0x484 > [ 203.267875] [] sdhci_runtime_resume_host+0x60/0x114 > [ 203.273864] [] __rpm_callback+0x2c/0x60 > [ 203.278812] [] rpm_callback+0x54/0x80 > [ 203.283586] [] rpm_resume+0x364/0x558 > [ 203.288359] [] __pm_runtime_resume+0x60/0x8c > [ 203.293741] [] __mmc_claim_host+0x1b4/0x1f8 > [ 203.299036] [] mmc_sd_runtime_resume+0x20/0xac > [ 203.304591] [] __rpm_callback+0x2c/0x60 > [ 203.309539] [] rpm_callback+0x54/0x80 > [ 203.314313] [] rpm_resume+0x364/0x558 > [ 203.319087] [] __pm_runtime_resume+0x60/0x8c > [ 203.324468] [] mmc_get_card+0x14/0x24 > [ 203.329243] [] mmc_blk_issue_rq+0x258/0x4f0 > [ 203.334538] [] mmc_queue_thread+0xd0/0x1d8 > [ 203.339745] [] kthread+0xf4/0x10c > [ 203.344172] [] ret_from_fork+0x14/0x24 > [ 203.349033] > [ 203.350509] > [ 203.350509] the dependencies between the lock to be acquired and > HARDIRQ-irq-unsafe lock: > [ 203.358904] -> (prepare_lock){+.+...} ops: 5285 { > [ 203.363531] HARDIRQ-ON-W at: > [ 203.366654] [] mutex_trylock+0x130/0x250 > [ 203.373164] [] clk_prepare_lock+0x10/0xf8 > [ 203.379761] [] > __clk_create_clk.part.13+0x4c/0x80 > [ 203.387052] [] > __of_clk_get_from_provider+0x88/0xf8 > [ 203.394517] [] __of_clk_get_by_name+0xfc/0x114 > [ 203.401548] [] clk_get+0x2c/0x5c > [ 203.407363] [] devm_clk_get+0x3c/0x78 > [ 203.413613] [] exynos_sysmmu_probe+0xe8/0x310 > [ 203.420557] [] platform_drv_probe+0x4c/0xb0 > [ 203.427327] [] driver_probe_device+0x20c/0x2b8 > [ 203.434358] [] bus_for_each_drv+0x60/0x94 > [ 203.440955] [] __device_attach+0xb4/0x118 > [ 203.447552] [] bus_probe_device+0x88/0x90 > [ 203.454149] [] device_add+0x370/0x570 > [ 203.460399] [] > of_platform_device_create_pdata+0x84/0xb8 > [ 203.468297] [] > exynos_iommu_of_setup+0x120/0x158 > [ 203.475501] [] of_iommu_init+0x44/0x78 > [ 203.481838] [] customize_machine+0x8/0x44 > [ 203.488434] [] do_one_initcall+0x90/0x1dc > [ 203.495031] [] kernel_init_freeable+0x158/0x1e8 > [ 203.502149] [] kernel_init+0x8/0x114 > [ 203.508312] [] ret_from_fork+0x14/0x24 > [ 203.514650] SOFTIRQ-ON-W at: > [ 203.517773] [] mutex_trylock+0x130/0x250 > [ 203.524283] [] clk_prepare_lock+0x10/0xf8 > [ 203.530880] [] > __clk_create_clk.part.13+0x4c/0x80 > [ 203.538171] [] > __of_clk_get_from_provider+0x88/0xf8 > [ 203.545636] [] __of_clk_get_by_name+0xfc/0x114 > [ 203.552666] [] clk_get+0x2c/0x5c > [ 203.558482] [] devm_clk_get+0x3c/0x78 > [ 203.564732] [] exynos_sysmmu_probe+0xe8/0x310 > [ 203.571676] [] platform_drv_probe+0x4c/0xb0 > [ 203.578446] [] driver_probe_device+0x20c/0x2b8 > [ 203.585477] [] bus_for_each_drv+0x60/0x94 > [ 203.592074] [] __device_attach+0xb4/0x118 > [ 203.598671] [] bus_probe_device+0x88/0x90 > [ 203.605267] [] device_add+0x370/0x570 > [ 203.611517] [] > of_platform_device_create_pdata+0x84/0xb8 > [ 203.619416] [] > exynos_iommu_of_setup+0x120/0x158 > [ 203.626620] [] of_iommu_init+0x44/0x78 > [ 203.632956] [] customize_machine+0x8/0x44 > [ 203.639553] [] do_one_initcall+0x90/0x1dc > [ 203.646150] [] kernel_init_freeable+0x158/0x1e8 > [ 203.653268] [] kernel_init+0x8/0x114 > [ 203.659431] [] ret_from_fork+0x14/0x24 > [ 203.665768] INITIAL USE at: > [ 203.668805] [] mutex_trylock+0xf8/0x250 > [ 203.675142] [] clk_prepare_lock+0x10/0xf8 > [ 203.681651] [] > __clk_create_clk.part.13+0x4c/0x80 > [ 203.688856] [] clk_register+0x1b8/0x5f0 > [ 203.695192] [] > clk_register_fixed_rate_with_accuracy+0x94/0xc4 > [ 203.703525] [] clk_register_fixed_rate+0x18/0x20 > [ 203.710642] [] > samsung_clk_register_fixed_rate+0x4c/0xb8 > [ 203.718455] [] > samsung_clk_of_register_fixed_ext+0x90/0x98 > [ 203.726440] [] exynos4_clk_init+0x88/0x5b0 > [ 203.733037] [] of_clk_init+0x14c/0x1d8 > [ 203.739287] [] time_init+0x24/0x2c > [ 203.745189] [] start_kernel+0x260/0x3a8 > [ 203.751526] [<4000807c>] 0x4000807c > [ 203.756647] } > [ 203.758296] ... key at: [] prepare_lock+0x3c/0x54 > [ 203.764373] ... acquired at: > [ 203.767322] [] lock_acquire+0xa8/0xd0 > [ 203.772096] [] mutex_lock_nested+0x78/0x4dc > [ 203.777391] [] clk_prepare_lock+0x50/0xf8 > [ 203.782512] [] clk_round_rate+0x1c/0x58 > [ 203.787460] [] sdhci_s3c_set_clock+0x18c/0x1b0 > [ 203.793015] [] sdhci_cmu_set_clock+0x24/0x17c > [ 203.798484] [] sdhci_do_set_ios+0x78/0x484 > [ 203.803691] [] sdhci_runtime_resume_host+0x60/0x114 > [ 203.809680] [] __rpm_callback+0x2c/0x60 > [ 203.814628] [] rpm_callback+0x54/0x80 > [ 203.819402] [] rpm_resume+0x364/0x558 > [ 203.824176] [] __pm_runtime_resume+0x60/0x8c > [ 203.829558] [] __mmc_claim_host+0x1b4/0x1f8 > [ 203.834852] [] mmc_sd_runtime_resume+0x20/0xac > [ 203.840408] [] __rpm_callback+0x2c/0x60 > [ 203.845355] [] rpm_callback+0x54/0x80 > [ 203.850129] [] rpm_resume+0x364/0x558 > [ 203.854903] [] __pm_runtime_resume+0x60/0x8c > [ 203.860285] [] mmc_get_card+0x14/0x24 > [ 203.865059] [] mmc_blk_issue_rq+0x258/0x4f0 > [ 203.870354] [] mmc_queue_thread+0xd0/0x1d8 > [ 203.875562] [] kthread+0xf4/0x10c > [ 203.879988] [] ret_from_fork+0x14/0x24 > [ 203.884850] > [ 203.886326] > [ 203.886326] stack backtrace: > [ 203.890679] CPU: 0 PID: 100 Comm: mmcqd/0 Not tainted 4.6.0-rc1-u3s #38 > [ 203.897266] Hardware name: SAMSUNG EXYNOS (Flattened Device Tree) > [ 203.903374] [] (unwind_backtrace) from [] > (show_stack+0x10/0x14) > [ 203.911089] [] (show_stack) from [] > (dump_stack+0x98/0xc4) > [ 203.918296] [] (dump_stack) from [] > (check_usage+0x49c/0x658) > [ 203.925757] [] (check_usage) from [] > (check_irq_usage+0x60/0xb8) > [ 203.933509] [] (check_irq_usage) from [] > (__lock_acquire+0x15c8/0x201c) > [ 203.941844] [] (__lock_acquire) from [] > (lock_acquire+0xa8/0xd0) > [ 203.949598] [] (lock_acquire) from [] > (mutex_lock_nested+0x78/0x4dc) > [ 203.957639] [] (mutex_lock_nested) from [] > (clk_prepare_lock+0x50/0xf8) > [ 203.965969] [] (clk_prepare_lock) from [] > (clk_round_rate+0x1c/0x58) > [ 203.974085] [] (clk_round_rate) from [] > (sdhci_s3c_set_clock+0x18c/0x1b0) > [ 203.982551] [] (sdhci_s3c_set_clock) from [] > (sdhci_cmu_set_clock+0x24/0x17c) > [ 203.991403] [] (sdhci_cmu_set_clock) from [] > (sdhci_do_set_ios+0x78/0x484) > [ 203.999993] [] (sdhci_do_set_ios) from [] > (sdhci_runtime_resume_host+0x60/0x114) > [ 204.009094] [] (sdhci_runtime_resume_host) from > [] (__rpm_callback+0x2c/0x60) > [ 204.017938] [] (__rpm_callback) from [] > (rpm_callback+0x54/0x80) > [ 204.025661] [] (rpm_callback) from [] > (rpm_resume+0x364/0x558) > [ 204.033214] [] (rpm_resume) from [] > (__pm_runtime_resume+0x60/0x8c) > [ 204.041201] [] (__pm_runtime_resume) from [] > (__mmc_claim_host+0x1b4/0x1f8) > [ 204.049885] [] (__mmc_claim_host) from [] > (mmc_sd_runtime_resume+0x20/0xac) > [ 204.058563] [] (mmc_sd_runtime_resume) from [] > (__rpm_callback+0x2c/0x60) > [ 204.067063] [] (__rpm_callback) from [] > (rpm_callback+0x54/0x80) > [ 204.074788] [] (rpm_callback) from [] > (rpm_resume+0x364/0x558) > [ 204.082340] [] (rpm_resume) from [] > (__pm_runtime_resume+0x60/0x8c) > [ 204.090326] [] (__pm_runtime_resume) from [] > (mmc_get_card+0x14/0x24) > [ 204.098487] [] (mmc_get_card) from [] > (mmc_blk_issue_rq+0x258/0x4f0) > [ 204.106559] [] (mmc_blk_issue_rq) from [] > (mmc_queue_thread+0xd0/0x1d8) > [ 204.114903] [] (mmc_queue_thread) from [] > (kthread+0xf4/0x10c) > [ 204.122452] [] (kthread) from [] > (ret_from_fork+0x14/0x24) > --------------------------------------------------------------------------------------------------------- > > Best Regards > -Anand Moon > >> -- >> To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in >> the body of a message to majordomo@vger.kernel.org >> More majordomo info at http://vger.kernel.org/majordomo-info.html > >