lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  PHC 
Open Source and information security mailing list archives
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Wed, 25 Oct 2017 18:47:08 +0200
From:   Ulf Hansson <>
To:     Liming Sun <>
Cc:     Jaehoon Chung <>,
        Shawn Lin <>,
        Rob Herring <>,
        Mark Rutland <>,
        Kukjin Kim <>,
        Krzysztof Kozlowski <>,
        "" <>,
        "" <>,
        "" <>,
        Chris Metcalf <>
Subject: Re: [PATCH 0/9] Enable dw-mmc multi-card support

Hi Liming,

Sorry for jumping into the discussion like this.


>> >> This series of commits enables the multi-card support for the dw-mmc
>> >> controller. It includes two parts as below.
>> >>
>> >> The first part (patches 1-7) reverts the series of recent commits
>> >> that removed the multi-card support with comments saying there was no
>> >> such use case in the real world. Actually this feature is being used
>> >> in Mellanox Bluefield SoC and has been requested by customers.
>> >
>> > Hrm.... it's so unlucky that your patchset comes a little late. As your patch 8
>> and 9 said, you need them to fix problem for multi-card support, so definitely
>> there was no such use case, and even the code was buggy to support it right?
>> That makes the code hard to read and maintain, so we decide to remove it.

Unfortunate patch 8 and 9 does *not* solve the fundamental problem
with multiple slots. You can't solve it without involving the mmc
core, as explained in earlier discussions [1].

>> Hmm..
>> Well, if i missed your reply for my removing patch, it's my fault..but i didn't
>> see any reply..
>> At that time, we didn't see any usage and also now...
> [Liming] It is definitely not anybody's fault. My apology that I should have made it very clear.
> This is a new SoC which uses two eMMC cards. This feature has been requested by customer.
> We made it working with patches, then realized that the support for the 2nd card was removed recently from upstream kernel.
> To avoid reinventing the wheel, a better approach appears to bring back the changes.

Having multiple slots of eMMC:s, attached to one single mmc
controller, is really a terrible idea, even if one could get it to
somewhat work.

To deal with multiple slots from the mmc core point of view, we would
need to introduce  a kind of "bus slot lock", which needs to be taken
whenever the core access any of the registered two mmc hosts.

However, that then means that the upper block device layers can no
longer perform proper I/O scheduling of requests to the eMMC cards. In
other words, requests on one eMMC device can then starve requests
reaching the other eMMC device. It all falls apart.

Perhaps that is a limitation you think is okay to live with, but I am
really not so sure it's worth adding "multiple slot" support.


Kind regards

Powered by blists - more mailing lists