[...] >> >> Actually this change won't have the desired effect, as the mmc core >> already done a pm_runtime_get_sync() since it has claimed the mmc >> host[1]. > > >> I do realize that most drivers are still maintaining the >> pm_runtime_get|put() calls, but in most cases that's not needed any >> more. > > > Hm, OK. Should be OK to remove the RPM dances from at least this > particular driver, right? In most cases, yes. There may be corner cases where the host is accessed without having the mmc core involved (and thus the host hasn't been claimed). > >> [1] >> commit 9250aea76bfc ("mmc: core: Enable runtime PM management of host >> devices") > > > Looking at the code, the following fragment of mmc_attach_sd() doesn't > make much sense to me: > > mmc_release_host(host); > err = mmc_add_card(host->card); > mmc_claim_host(host); > if (err) > goto remove_card; > > return 0; > > remove_card: > mmc_release_host(host); > mmc_remove_card(host->card); > host->card = NULL; > mmc_claim_host(host); > > Why claim the host and immediately release it on mmc_add_card() error? > Can we only claim on success and save a call here? You are right, we can simplify the sequence! Do you want to send a patch? Actually, it's similar for mmc_attach_mmc()... Kind regards Uffe -- To unsubscribe from this list: send the line "unsubscribe linux-mmc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html