<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux-stable.git/drivers/mmc, branch v4.13.2</title>
<subtitle>Linux kernel stable tree</subtitle>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/'/>
<entry>
<title>mmc: sdhci-xenon: add set_power callback</title>
<updated>2017-08-30T12:11:47+00:00</updated>
<author>
<name>Zhoujie Wu</name>
<email>zjwu@marvell.com</email>
</author>
<published>2017-08-21T18:02:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=99c14fc360dbbb583a03ab985551b12b5c5ca4f1'/>
<id>99c14fc360dbbb583a03ab985551b12b5c5ca4f1</id>
<content type='text'>
Xenon sdh controller requests proper SD bus voltage select
bits programmed even with vmmc power supply. Any reserved
value(100b-000b) programmed in this field will lead to controller
ignore SD bus power bit and keep its value at zero.
Add set_power callback to handle this.

Signed-off-by: Zhoujie Wu &lt;zjwu@marvell.com&gt;
Acked-by: Adrian Hunter &lt;adrian.hunter@intel.com&gt;
Tested-by: Gregory CLEMENT &lt;gregory.clement@free-electrons.com&gt;
Fixes: 3a3748dba881 ("mmc: sdhci-xenon: Add Marvell Xenon SDHC core functionality")
Cc: &lt;stable@vger.kernel.org&gt;
Signed-off-by: Ulf Hansson &lt;ulf.hansson@linaro.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Xenon sdh controller requests proper SD bus voltage select
bits programmed even with vmmc power supply. Any reserved
value(100b-000b) programmed in this field will lead to controller
ignore SD bus power bit and keep its value at zero.
Add set_power callback to handle this.

Signed-off-by: Zhoujie Wu &lt;zjwu@marvell.com&gt;
Acked-by: Adrian Hunter &lt;adrian.hunter@intel.com&gt;
Tested-by: Gregory CLEMENT &lt;gregory.clement@free-electrons.com&gt;
Fixes: 3a3748dba881 ("mmc: sdhci-xenon: Add Marvell Xenon SDHC core functionality")
Cc: &lt;stable@vger.kernel.org&gt;
Signed-off-by: Ulf Hansson &lt;ulf.hansson@linaro.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>mmc: block: Fix block status codes</title>
<updated>2017-08-30T11:49:40+00:00</updated>
<author>
<name>Adrian Hunter</name>
<email>adrian.hunter@intel.com</email>
</author>
<published>2017-08-25T12:43:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=a7c17d8ae4918afe527c141cc20ed34dfe18e7db'/>
<id>a7c17d8ae4918afe527c141cc20ed34dfe18e7db</id>
<content type='text'>
Commit 2a842acab109 ("block: introduce new block status code type") changed
the error type but not in patches merged through the mmc tree, like
commit 0493f6fe5bde ("mmc: block: Move boot partition locking into a driver
op"). Fix one error code that is incorrect and also use BLK_STS_OK in
preference to 0.

Fixes: 17ece345a042 ("Merge tag 'mmc-v4.13' of git://git.kernel.org/pub/scm/linux/kernel/git/ulfh/mmc")
Signed-off-by: Adrian Hunter &lt;adrian.hunter@intel.com&gt;
Signed-off-by: Ulf Hansson &lt;ulf.hansson@linaro.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Commit 2a842acab109 ("block: introduce new block status code type") changed
the error type but not in patches merged through the mmc tree, like
commit 0493f6fe5bde ("mmc: block: Move boot partition locking into a driver
op"). Fix one error code that is incorrect and also use BLK_STS_OK in
preference to 0.

Fixes: 17ece345a042 ("Merge tag 'mmc-v4.13' of git://git.kernel.org/pub/scm/linux/kernel/git/ulfh/mmc")
Signed-off-by: Adrian Hunter &lt;adrian.hunter@intel.com&gt;
Signed-off-by: Ulf Hansson &lt;ulf.hansson@linaro.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>mmc: block: prevent propagating R1_OUT_OF_RANGE for open-ending mode</title>
<updated>2017-08-21T11:32:31+00:00</updated>
<author>
<name>Shawn Lin</name>
<email>shawn.lin@rock-chips.com</email>
</author>
<published>2017-08-18T01:16:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=d83c2dbaa90a9bd6346e234d9802080a9c7b2fea'/>
<id>d83c2dbaa90a9bd6346e234d9802080a9c7b2fea</id>
<content type='text'>
We to some extent should tolerate R1_OUT_OF_RANGE for open-ending
mode as it is expected behaviour and most of the backup partition
tables should be located near some of the last blocks which will
always make open-ending read exceed the capacity of cards.

Fixes: 9820a5b11101 ("mmc: core: for data errors, take response of stop cmd into account")
Fixes: a04e6bae9e6f ("mmc: core: check also R1 response for stop commands")
Signed-off-by: Shawn Lin &lt;shawn.lin@rock-chips.com&gt;
Reviewed-by: Wolfram Sang &lt;wsa+renesas@sang-engineering.com&gt;
Tested-by: Shawn Guo &lt;shawnguo@kernel.org&gt;
Signed-off-by: Ulf Hansson &lt;ulf.hansson@linaro.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
We to some extent should tolerate R1_OUT_OF_RANGE for open-ending
mode as it is expected behaviour and most of the backup partition
tables should be located near some of the last blocks which will
always make open-ending read exceed the capacity of cards.

Fixes: 9820a5b11101 ("mmc: core: for data errors, take response of stop cmd into account")
Fixes: a04e6bae9e6f ("mmc: core: check also R1 response for stop commands")
Signed-off-by: Shawn Lin &lt;shawn.lin@rock-chips.com&gt;
Reviewed-by: Wolfram Sang &lt;wsa+renesas@sang-engineering.com&gt;
Tested-by: Shawn Guo &lt;shawnguo@kernel.org&gt;
Signed-off-by: Ulf Hansson &lt;ulf.hansson@linaro.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>mmc: block: fix lockdep splat when removing mmc_block module</title>
<updated>2017-08-09T11:19:44+00:00</updated>
<author>
<name>Michał Mirosław</name>
<email>mirq-linux@rere.qmqm.pl</email>
</author>
<published>2017-08-08T23:48:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=3f8b23a09a87aa65df3e13129cb2d9cffcb394db'/>
<id>3f8b23a09a87aa65df3e13129cb2d9cffcb394db</id>
<content type='text'>
Fix lockdep splat introduced in v4.13-rc4.

[  266.297226] ------------[ cut here ]------------
[  266.300078] WARNING: CPU: 2 PID: 176 at /mnt/src/jaja/git/tf300t/include/linux/blkdev.h:657 mmc_blk_remove_req+0xd0/0xe8 [mmc_block]
[  266.302937] Modules linked in: mmc_block(-) sdhci_tegra sdhci_pltfm sdhci pwrseq_simple pwrseq_emmc mmc_core
[  266.305941] CPU: 2 PID: 176 Comm: rmmod Tainted: G        W       4.13.0-rc4mq-00208-gb691e67724b8-dirty #694
[  266.308852] Hardware name: NVIDIA Tegra SoC (Flattened Device Tree)
[  266.311719] [&lt;b011144c&gt;] (unwind_backtrace) from [&lt;b010ca54&gt;] (show_stack+0x18/0x1c)
[  266.314664] [&lt;b010ca54&gt;] (show_stack) from [&lt;b062e3f4&gt;] (dump_stack+0x84/0x98)
[  266.317644] [&lt;b062e3f4&gt;] (dump_stack) from [&lt;b01214f4&gt;] (__warn+0xf4/0x10c)
[  266.320542] [&lt;b01214f4&gt;] (__warn) from [&lt;b01215d4&gt;] (warn_slowpath_null+0x28/0x30)
[  266.323534] [&lt;b01215d4&gt;] (warn_slowpath_null) from [&lt;af067858&gt;] (mmc_blk_remove_req+0xd0/0xe8 [mmc_block])
[  266.326568] [&lt;af067858&gt;] (mmc_blk_remove_req [mmc_block]) from [&lt;af068f40&gt;] (mmc_blk_remove_parts.constprop.6+0x50/0x64 [mmc_block])
[  266.329678] [&lt;af068f40&gt;] (mmc_blk_remove_parts.constprop.6 [mmc_block]) from [&lt;af0693b8&gt;] (mmc_blk_remove+0x24/0x140 [mmc_block])
[  266.332894] [&lt;af0693b8&gt;] (mmc_blk_remove [mmc_block]) from [&lt;af0052ec&gt;] (mmc_bus_remove+0x20/0x28 [mmc_core])
[  266.336198] [&lt;af0052ec&gt;] (mmc_bus_remove [mmc_core]) from [&lt;b046aa64&gt;] (device_release_driver_internal+0x164/0x200)
[  266.339367] [&lt;b046aa64&gt;] (device_release_driver_internal) from [&lt;b046ab54&gt;] (driver_detach+0x40/0x74)
[  266.342537] [&lt;b046ab54&gt;] (driver_detach) from [&lt;b046982c&gt;] (bus_remove_driver+0x68/0xdc)
[  266.345660] [&lt;b046982c&gt;] (bus_remove_driver) from [&lt;af06ad40&gt;] (mmc_blk_exit+0xc/0x2cc [mmc_block])
[  266.348875] [&lt;af06ad40&gt;] (mmc_blk_exit [mmc_block]) from [&lt;b01aee30&gt;] (SyS_delete_module+0x1c4/0x254)
[  266.352068] [&lt;b01aee30&gt;] (SyS_delete_module) from [&lt;b0108480&gt;] (ret_fast_syscall+0x0/0x34)
[  266.355308] ---[ end trace f68728a0d3053b72 ]---

Fixes: 7c84b8b43d3d ("mmc: block: bypass the queue even if usage is present for hotplug")
Signed-off-by: Michał Mirosław &lt;mirq-linux@rere.qmqm.pl&gt;
Reviewed-by: Shawn Lin &lt;shawn.lin@rock-chips.com&gt;
Signed-off-by: Ulf Hansson &lt;ulf.hansson@linaro.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Fix lockdep splat introduced in v4.13-rc4.

[  266.297226] ------------[ cut here ]------------
[  266.300078] WARNING: CPU: 2 PID: 176 at /mnt/src/jaja/git/tf300t/include/linux/blkdev.h:657 mmc_blk_remove_req+0xd0/0xe8 [mmc_block]
[  266.302937] Modules linked in: mmc_block(-) sdhci_tegra sdhci_pltfm sdhci pwrseq_simple pwrseq_emmc mmc_core
[  266.305941] CPU: 2 PID: 176 Comm: rmmod Tainted: G        W       4.13.0-rc4mq-00208-gb691e67724b8-dirty #694
[  266.308852] Hardware name: NVIDIA Tegra SoC (Flattened Device Tree)
[  266.311719] [&lt;b011144c&gt;] (unwind_backtrace) from [&lt;b010ca54&gt;] (show_stack+0x18/0x1c)
[  266.314664] [&lt;b010ca54&gt;] (show_stack) from [&lt;b062e3f4&gt;] (dump_stack+0x84/0x98)
[  266.317644] [&lt;b062e3f4&gt;] (dump_stack) from [&lt;b01214f4&gt;] (__warn+0xf4/0x10c)
[  266.320542] [&lt;b01214f4&gt;] (__warn) from [&lt;b01215d4&gt;] (warn_slowpath_null+0x28/0x30)
[  266.323534] [&lt;b01215d4&gt;] (warn_slowpath_null) from [&lt;af067858&gt;] (mmc_blk_remove_req+0xd0/0xe8 [mmc_block])
[  266.326568] [&lt;af067858&gt;] (mmc_blk_remove_req [mmc_block]) from [&lt;af068f40&gt;] (mmc_blk_remove_parts.constprop.6+0x50/0x64 [mmc_block])
[  266.329678] [&lt;af068f40&gt;] (mmc_blk_remove_parts.constprop.6 [mmc_block]) from [&lt;af0693b8&gt;] (mmc_blk_remove+0x24/0x140 [mmc_block])
[  266.332894] [&lt;af0693b8&gt;] (mmc_blk_remove [mmc_block]) from [&lt;af0052ec&gt;] (mmc_bus_remove+0x20/0x28 [mmc_core])
[  266.336198] [&lt;af0052ec&gt;] (mmc_bus_remove [mmc_core]) from [&lt;b046aa64&gt;] (device_release_driver_internal+0x164/0x200)
[  266.339367] [&lt;b046aa64&gt;] (device_release_driver_internal) from [&lt;b046ab54&gt;] (driver_detach+0x40/0x74)
[  266.342537] [&lt;b046ab54&gt;] (driver_detach) from [&lt;b046982c&gt;] (bus_remove_driver+0x68/0xdc)
[  266.345660] [&lt;b046982c&gt;] (bus_remove_driver) from [&lt;af06ad40&gt;] (mmc_blk_exit+0xc/0x2cc [mmc_block])
[  266.348875] [&lt;af06ad40&gt;] (mmc_blk_exit [mmc_block]) from [&lt;b01aee30&gt;] (SyS_delete_module+0x1c4/0x254)
[  266.352068] [&lt;b01aee30&gt;] (SyS_delete_module) from [&lt;b0108480&gt;] (ret_fast_syscall+0x0/0x34)
[  266.355308] ---[ end trace f68728a0d3053b72 ]---

Fixes: 7c84b8b43d3d ("mmc: block: bypass the queue even if usage is present for hotplug")
Signed-off-by: Michał Mirosław &lt;mirq-linux@rere.qmqm.pl&gt;
Reviewed-by: Shawn Lin &lt;shawn.lin@rock-chips.com&gt;
Signed-off-by: Ulf Hansson &lt;ulf.hansson@linaro.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>mmc: mmc: correct the logic for setting HS400ES signal voltage</title>
<updated>2017-08-08T16:55:43+00:00</updated>
<author>
<name>Haibo Chen</name>
<email>haibo.chen@nxp.com</email>
</author>
<published>2017-08-08T10:54:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=92ddd95919466de5d34f3cb43635da9a7f9ab814'/>
<id>92ddd95919466de5d34f3cb43635da9a7f9ab814</id>
<content type='text'>
Change the default err value to -EINVAL, make sure the card only
has type EXT_CSD_CARD_TYPE_HS400_1_8V also do the signal voltage
setting when select hs400es mode.

Fixes: commit 1720d3545b77 ("mmc: core: switch to 1V8 or 1V2 for hs400es mode")
Cc: &lt;stable@vger.kernel.org&gt;
Signed-off-by: Haibo Chen &lt;haibo.chen@nxp.com&gt;
Reviewed-by: Shawn Lin &lt;shawn.lin@rock-chips.com&gt;
Signed-off-by: Ulf Hansson &lt;ulf.hansson@linaro.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Change the default err value to -EINVAL, make sure the card only
has type EXT_CSD_CARD_TYPE_HS400_1_8V also do the signal voltage
setting when select hs400es mode.

Fixes: commit 1720d3545b77 ("mmc: core: switch to 1V8 or 1V2 for hs400es mode")
Cc: &lt;stable@vger.kernel.org&gt;
Signed-off-by: Haibo Chen &lt;haibo.chen@nxp.com&gt;
Reviewed-by: Shawn Lin &lt;shawn.lin@rock-chips.com&gt;
Signed-off-by: Ulf Hansson &lt;ulf.hansson@linaro.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>mmc: host: omap_hsmmc: Add CMD23 capability to omap_hsmmc driver</title>
<updated>2017-08-08T08:11:07+00:00</updated>
<author>
<name>Kishon Vijay Abraham I</name>
<email>kishon@ti.com</email>
</author>
<published>2017-08-08T05:18:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=ac2b21157a3104ad2daa21c65e6cc73604edba0b'/>
<id>ac2b21157a3104ad2daa21c65e6cc73604edba0b</id>
<content type='text'>
omap_hsmmc driver always relied on CMD12 to stop transmission.
However if CMD12 is not issued at the correct timing, the card will
indicate a out of range error. With certain cards in some of the
DRA7 based boards, -EIO error is observed. By Adding CMD23 capability,
the MMC core will send MMC_SET_BLOCK_COUNT command before
MMC_READ_MULTIPLE_BLOCK/MMC_WRITE_MULTIPLE_BLOCK commands.

commit a04e6bae9e6f12 ("mmc: core: check also R1 response for
stop commands") exposed this bug in omap_hsmmc driver.

Signed-off-by: Kishon Vijay Abraham I &lt;kishon@ti.com&gt;
Signed-off-by: Ulf Hansson &lt;ulf.hansson@linaro.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
omap_hsmmc driver always relied on CMD12 to stop transmission.
However if CMD12 is not issued at the correct timing, the card will
indicate a out of range error. With certain cards in some of the
DRA7 based boards, -EIO error is observed. By Adding CMD23 capability,
the MMC core will send MMC_SET_BLOCK_COUNT command before
MMC_READ_MULTIPLE_BLOCK/MMC_WRITE_MULTIPLE_BLOCK commands.

commit a04e6bae9e6f12 ("mmc: core: check also R1 response for
stop commands") exposed this bug in omap_hsmmc driver.

Signed-off-by: Kishon Vijay Abraham I &lt;kishon@ti.com&gt;
Signed-off-by: Ulf Hansson &lt;ulf.hansson@linaro.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>mmc: block: bypass the queue even if usage is present for hotplug</title>
<updated>2017-08-03T09:00:39+00:00</updated>
<author>
<name>Shawn Lin</name>
<email>shawn.lin@rock-chips.com</email>
</author>
<published>2017-07-25T01:11:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=7c84b8b43d3d550fa6f0b57277d03f2e1bafb357'/>
<id>7c84b8b43d3d550fa6f0b57277d03f2e1bafb357</id>
<content type='text'>
The commit 304419d8a7e9 ("mmc: core: Allocate per-request data using the
block layer core") refactored mechanism of queue handling caused
mmc_init_request() can be called just after mmc_cleanup_queue() caused null
pointer dereference.

Another commit bbdc74dc19e0 ("mmc: block: Prevent new req entering queue
after its cleanup") tried to fix the problem. However it actually miss one
corner case.

We could still reproduce the issue mentioned with these steps:
(1) insert a SD card and mount it
(2) hotplug it, so it will leave md-&gt;usage still be counted
(3) reboot the system which will sync data and umount the card

[Unable to handle kernel NULL pointer dereference at virtual address
00000000
[user pgtable: 4k pages, 48-bit VAs, pgd = ffff80007bab3000
[[0000000000000000] *pgd=000000007a828003, *pud=0000000078dce003,
*pmd=000000007aab6003, *pte=0000000000000000
[Internal error: Oops: 96000007 [#1] PREEMPT SMP
[Modules linked in:
[CPU: 3 PID: 3507 Comm: umount Tainted: G        W
4.13.0-rc1-next-20170720-00012-g9d9bf45 #33
[Hardware name: Firefly-RK3399 Board (DT)
[task: ffff80007a1de200 task.stack: ffff80007a01c000
[PC is at mmc_init_request+0x14/0xc4
[LR is at alloc_request_size+0x4c/0x74
[pc : [&lt;ffff0000087d7150&gt;] lr : [&lt;ffff000008378fe0&gt;] pstate: 600001c5
[sp : ffff80007a01f8f0

....

[[&lt;ffff0000087d7150&gt;] mmc_init_request+0x14/0xc4
[[&lt;ffff000008378fe0&gt;] alloc_request_size+0x4c/0x74
[[&lt;ffff00000817ac28&gt;] mempool_create_node+0xb8/0x17c
[[&lt;ffff00000837aadc&gt;] blk_init_rl+0x9c/0x120
[[&lt;ffff000008396580&gt;] blkg_alloc+0x110/0x234
[[&lt;ffff000008396ac8&gt;] blkg_create+0x424/0x468
[[&lt;ffff00000839877c&gt;] blkg_lookup_create+0xd8/0x14c
[[&lt;ffff0000083796bc&gt;] generic_make_request_checks+0x368/0x3b0
[[&lt;ffff00000837b050&gt;] generic_make_request+0x1c/0x240

So mmc_blk_put wouldn't calling blk_cleanup_queue which actually the
QUEUE_FLAG_DYING and QUEUE_FLAG_BYPASS should stay. Block core expect
blk_queue_bypass_{start, end} internally to bypass/drain the queue before
actually dying the queue, so it didn't expose API to set the queue bypass.
I think we should set QUEUE_FLAG_BYPASS whenever queue is removed, although
the md-&gt;usage is still counted, as no dispatch queue could be found then.

Fixes: 304419d8a7e9 ("mmc: core: Allocate per-request data using the block layer core")
Signed-off-by: Shawn Lin &lt;shawn.lin@rock-chips.com&gt;
Reviewed-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
Signed-off-by: Ulf Hansson &lt;ulf.hansson@linaro.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The commit 304419d8a7e9 ("mmc: core: Allocate per-request data using the
block layer core") refactored mechanism of queue handling caused
mmc_init_request() can be called just after mmc_cleanup_queue() caused null
pointer dereference.

Another commit bbdc74dc19e0 ("mmc: block: Prevent new req entering queue
after its cleanup") tried to fix the problem. However it actually miss one
corner case.

We could still reproduce the issue mentioned with these steps:
(1) insert a SD card and mount it
(2) hotplug it, so it will leave md-&gt;usage still be counted
(3) reboot the system which will sync data and umount the card

[Unable to handle kernel NULL pointer dereference at virtual address
00000000
[user pgtable: 4k pages, 48-bit VAs, pgd = ffff80007bab3000
[[0000000000000000] *pgd=000000007a828003, *pud=0000000078dce003,
*pmd=000000007aab6003, *pte=0000000000000000
[Internal error: Oops: 96000007 [#1] PREEMPT SMP
[Modules linked in:
[CPU: 3 PID: 3507 Comm: umount Tainted: G        W
4.13.0-rc1-next-20170720-00012-g9d9bf45 #33
[Hardware name: Firefly-RK3399 Board (DT)
[task: ffff80007a1de200 task.stack: ffff80007a01c000
[PC is at mmc_init_request+0x14/0xc4
[LR is at alloc_request_size+0x4c/0x74
[pc : [&lt;ffff0000087d7150&gt;] lr : [&lt;ffff000008378fe0&gt;] pstate: 600001c5
[sp : ffff80007a01f8f0

....

[[&lt;ffff0000087d7150&gt;] mmc_init_request+0x14/0xc4
[[&lt;ffff000008378fe0&gt;] alloc_request_size+0x4c/0x74
[[&lt;ffff00000817ac28&gt;] mempool_create_node+0xb8/0x17c
[[&lt;ffff00000837aadc&gt;] blk_init_rl+0x9c/0x120
[[&lt;ffff000008396580&gt;] blkg_alloc+0x110/0x234
[[&lt;ffff000008396ac8&gt;] blkg_create+0x424/0x468
[[&lt;ffff00000839877c&gt;] blkg_lookup_create+0xd8/0x14c
[[&lt;ffff0000083796bc&gt;] generic_make_request_checks+0x368/0x3b0
[[&lt;ffff00000837b050&gt;] generic_make_request+0x1c/0x240

So mmc_blk_put wouldn't calling blk_cleanup_queue which actually the
QUEUE_FLAG_DYING and QUEUE_FLAG_BYPASS should stay. Block core expect
blk_queue_bypass_{start, end} internally to bypass/drain the queue before
actually dying the queue, so it didn't expose API to set the queue bypass.
I think we should set QUEUE_FLAG_BYPASS whenever queue is removed, although
the md-&gt;usage is still counted, as no dispatch queue could be found then.

Fixes: 304419d8a7e9 ("mmc: core: Allocate per-request data using the block layer core")
Signed-off-by: Shawn Lin &lt;shawn.lin@rock-chips.com&gt;
Reviewed-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
Signed-off-by: Ulf Hansson &lt;ulf.hansson@linaro.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>mmc: sdhci-of-at91: force card detect value for non removable devices</title>
<updated>2017-08-03T08:50:55+00:00</updated>
<author>
<name>Ludovic Desroches</name>
<email>ludovic.desroches@microchip.com</email>
</author>
<published>2017-07-26T14:02:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=7a1e3f143176e8ebdb2f5a9b3b47abc18b879d90'/>
<id>7a1e3f143176e8ebdb2f5a9b3b47abc18b879d90</id>
<content type='text'>
When the device is non removable, the card detect signal is often used
for another purpose i.e. muxed to another SoC peripheral or used as a
GPIO. It could lead to wrong behaviors depending the default value of
this signal if not muxed to the SDHCI controller.

Fixes: bb5f8ea4d514 ("mmc: sdhci-of-at91: introduce driver for the Atmel SDMMC")
Signed-off-by: Ludovic Desroches &lt;ludovic.desroches@microchip.com&gt;
Acked-by: Adrian Hunter &lt;adrian.hunter@intel.com&gt;
Cc: &lt;stable@vger.kernel.org&gt;
Signed-off-by: Ulf Hansson &lt;ulf.hansson@linaro.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
When the device is non removable, the card detect signal is often used
for another purpose i.e. muxed to another SoC peripheral or used as a
GPIO. It could lead to wrong behaviors depending the default value of
this signal if not muxed to the SDHCI controller.

Fixes: bb5f8ea4d514 ("mmc: sdhci-of-at91: introduce driver for the Atmel SDMMC")
Signed-off-by: Ludovic Desroches &lt;ludovic.desroches@microchip.com&gt;
Acked-by: Adrian Hunter &lt;adrian.hunter@intel.com&gt;
Cc: &lt;stable@vger.kernel.org&gt;
Signed-off-by: Ulf Hansson &lt;ulf.hansson@linaro.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>mmc: dw_mmc: fix the wrong condition check of getting num-slots from DT</title>
<updated>2017-07-27T13:57:30+00:00</updated>
<author>
<name>Shawn Lin</name>
<email>shawn.lin@rock-chips.com</email>
</author>
<published>2017-07-21T08:39:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=16f5df8b5d71ef2eaeac067806de7ebd6df3f2d0'/>
<id>16f5df8b5d71ef2eaeac067806de7ebd6df3f2d0</id>
<content type='text'>
Change to print the information about when the deprecated "num-slots" DT
binding is being used, as to avoid confusion when browsing the log:

dwmmc_rockchip fe320000.dwmmc: 'num-slots' was deprecated.

Signed-off-by: Shawn Lin &lt;shawn.lin@rock-chips.com&gt;
Fixes: d30a8f7bdf64 ("mmc: dw_mmc: deprecated the "num-slots" property")
Signed-off-by: Ulf Hansson &lt;ulf.hansson@linaro.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Change to print the information about when the deprecated "num-slots" DT
binding is being used, as to avoid confusion when browsing the log:

dwmmc_rockchip fe320000.dwmmc: 'num-slots' was deprecated.

Signed-off-by: Shawn Lin &lt;shawn.lin@rock-chips.com&gt;
Fixes: d30a8f7bdf64 ("mmc: dw_mmc: deprecated the "num-slots" property")
Signed-off-by: Ulf Hansson &lt;ulf.hansson@linaro.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>mmc: host: omap_hsmmc: remove unused platform callbacks</title>
<updated>2017-07-17T13:05:52+00:00</updated>
<author>
<name>Faiz Abbas</name>
<email>faiz_abbas@ti.com</email>
</author>
<published>2017-07-14T12:46:44+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=36acbd9e8377c27570b887e2332a5e1f0b140e16'/>
<id>36acbd9e8377c27570b887e2332a5e1f0b140e16</id>
<content type='text'>
Remove unused callbacks in the omap_hsmmc_platform_data structure

Signed-off-by: Faiz Abbas &lt;faiz_abbas@ti.com&gt;
Acked-by: Tony Lindgren &lt;tony@atomide.com&gt;
Signed-off-by: Ulf Hansson &lt;ulf.hansson@linaro.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Remove unused callbacks in the omap_hsmmc_platform_data structure

Signed-off-by: Faiz Abbas &lt;faiz_abbas@ti.com&gt;
Acked-by: Tony Lindgren &lt;tony@atomide.com&gt;
Signed-off-by: Ulf Hansson &lt;ulf.hansson@linaro.org&gt;
</pre>
</div>
</content>
</entry>
</feed>
