Hi, On Mon, Dec 7, 2020 at 1:55 PM Arnd Bergmann <arnd@xxxxxxxxxx> wrote: > > On Mon, Dec 7, 2020 at 9:23 PM Geert Uytterhoeven <geert@xxxxxxxxxxxxxx> wrote: > > On Tue, Dec 1, 2020 at 3:06 PM Arnd Bergmann <arnd@xxxxxxxxxx> wrote: > > > On Tue, Dec 1, 2020 at 12:39 PM Ulf Hansson <ulf.hansson@xxxxxxxxxx> wrote: > > > > So, I think we have two options. If people are willing to move to > > > > "disk labels" or to patch their DTBs with mmc aliases, things can stay > > > > as is. Otherwise, we can revert the async probe parts of the mmc host > > > > drivers, but that would still leave us in a fragile situation. > > > > > > Can you reliably detect whether the mmc aliases in the dt exist? > > > If that's possible, maybe the async flag could be masked out to only have > > > an effect when the device number is known. > > > > IMHO DT aliases are not a proper solution for this. > > > > Yes, you can detect reliably if an alias exists in the DT. > > The problems start when having multiple devices, some with aliases, > > some without. And when devices can appear dynamically (without > > aliases, as there is no support for dynamically updating the aliases > > list). > > Actually you hit a problem earlier than that: the async probe is a > property of the host controller driver, which may be a pci_driver, > platform_driver, usb_driver, or anything else really. To figure out > whether to probe it asynchronously, it would have to be the driver > core, or each bus type that can host these to understand which > device driver is responsible for probing an eMMC device attached > to the host. >From what I've seen so far, my current thought on this issue is that it's up to Ulf as the MMC maintainer what the next steps are. For me, at least, his argument that MMC block numbers have already shuffled around several times in the last several years is at least some evidence that they weren't exactly stable to begin with. While we could go back to the numbers that happened to be chosen as of kernel v5.9, if someone was updating from a much older kernel then they may have different expectations of what numbers are good / bad I think. I will also offer one possible suggestion: what about a KConfig option here? In theory we could add a KConfig option like "CONFIG_MMC_LEGACY_PROBE" or something that. One can argue about what the default ought to be, but maybe that would satisfy folks? If you were happy giving up a little bit of boot speed to get the v5.9 block numbers then you could set this. -Doug