Message ID | 55E6F497.8080300@linaro.org |
---|---|
State | New |
Headers | show |
On Wed, 2015-09-02 at 18:37 +0530, Vaibhav Hiremath wrote: > On Wednesday 02 September 2015 02:07 AM, Joe Perches wrote: > > On Wed, 2015-09-02 at 00:54 +0530, Vaibhav Hiremath wrote: > >> Return value would give clear information about the actual root-cause > >> of the failure. > >> diff --git a/drivers/mmc/host/sdhci-pxav3.c b/drivers/mmc/host/sdhci-pxav3.c > >> @@ -455,7 +455,7 @@ static int sdhci_pxav3_probe(struct platform_device *pdev) > >> > >> ret = sdhci_add_host(host); > >> if (ret) { > >> - dev_err(&pdev->dev, "failed to add host\n"); > >> + dev_err(&pdev->dev, "failed to add host ret - %d\n", ret); > >> goto err_add_host; > >> } > > > > If this is really desirable, there are many other callers of > > sdhci_add_host with error messages just like this one. > > > How about this? If you are ok, I can change it and submit the patch > again. > diff --git a/drivers/mmc/host/sdhci.c b/drivers/mmc/host/sdhci.c [] > @@ -3176,8 +3176,11 @@ int sdhci_add_host(struct sdhci_host *host) > mmc->caps |= MMC_CAP_NEEDS_POLL; > > /* If there are external regulators, get them */ > - if (mmc_regulator_get_supply(mmc) == -EPROBE_DEFER) > + if (mmc_regulator_get_supply(mmc) == -EPROBE_DEFER) { > + pr_err("%s: regulator supply unavailable, deferring > probe. \n", > + mmc_hostname(mmc)); > return -EPROBE_DEFER; > + } (your email client has inappropriate line wrapping) The KERN_<LEVEL> here probably isn't right. Deferring isn't an error, at best it's a notification and perhaps should be at pr_notice/KERN_NOTICE I don't know how often or how many times this deferral can occur. Do you? If it's moderately common, that message should likely be ratelimited if it exists at all. -- To unsubscribe from this list: send the line "unsubscribe linux-mmc" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Wednesday 02 September 2015 08:37 PM, Joe Perches wrote: > On Wed, 2015-09-02 at 18:37 +0530, Vaibhav Hiremath wrote: >> On Wednesday 02 September 2015 02:07 AM, Joe Perches wrote: >>> On Wed, 2015-09-02 at 00:54 +0530, Vaibhav Hiremath wrote: >>>> Return value would give clear information about the actual root-cause >>>> of the failure. >>>> diff --git a/drivers/mmc/host/sdhci-pxav3.c b/drivers/mmc/host/sdhci-pxav3.c >>>> @@ -455,7 +455,7 @@ static int sdhci_pxav3_probe(struct platform_device *pdev) >>>> >>>> ret = sdhci_add_host(host); >>>> if (ret) { >>>> - dev_err(&pdev->dev, "failed to add host\n"); >>>> + dev_err(&pdev->dev, "failed to add host ret - %d\n", ret); >>>> goto err_add_host; >>>> } >>> >>> If this is really desirable, there are many other callers of >>> sdhci_add_host with error messages just like this one. >>> >> How about this? If you are ok, I can change it and submit the patch >> again. >> diff --git a/drivers/mmc/host/sdhci.c b/drivers/mmc/host/sdhci.c > [] >> @@ -3176,8 +3176,11 @@ int sdhci_add_host(struct sdhci_host *host) >> mmc->caps |= MMC_CAP_NEEDS_POLL; >> >> /* If there are external regulators, get them */ >> - if (mmc_regulator_get_supply(mmc) == -EPROBE_DEFER) >> + if (mmc_regulator_get_supply(mmc) == -EPROBE_DEFER) { >> + pr_err("%s: regulator supply unavailable, deferring >> probe. \n", >> + mmc_hostname(mmc)); >> return -EPROBE_DEFER; >> + } > > (your email client has inappropriate line wrapping) > > The KERN_<LEVEL> here probably isn't right. > > Deferring isn't an error, at best it's a notification I would consider it as an ERROR if it gets deferred continuously/multiple times due to same reason. > and perhaps should be at pr_notice/KERN_NOTICE > Yeah, KERN_NOTICE looks right here. > I don't know how often or how many times this deferral > can occur. Do you? > -EDEFER_PROBE usually means that driver has some dependency, for which it has to wait. In my case, during every boot, I pxav3_sdhci_probe gets deferred once due to regulator unavailability. Thanks, Vaibhav -- To unsubscribe from this list: send the line "unsubscribe linux-mmc" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On 2 September 2015 at 17:16, Vaibhav Hiremath <vaibhav.hiremath@linaro.org> wrote: > > > On Wednesday 02 September 2015 08:37 PM, Joe Perches wrote: >> >> On Wed, 2015-09-02 at 18:37 +0530, Vaibhav Hiremath wrote: >>> >>> On Wednesday 02 September 2015 02:07 AM, Joe Perches wrote: >>>> >>>> On Wed, 2015-09-02 at 00:54 +0530, Vaibhav Hiremath wrote: >>>>> >>>>> Return value would give clear information about the actual root-cause >>>>> of the failure. >>>>> diff --git a/drivers/mmc/host/sdhci-pxav3.c >>>>> b/drivers/mmc/host/sdhci-pxav3.c >>>>> @@ -455,7 +455,7 @@ static int sdhci_pxav3_probe(struct platform_device >>>>> *pdev) >>>>> >>>>> ret = sdhci_add_host(host); >>>>> if (ret) { >>>>> - dev_err(&pdev->dev, "failed to add host\n"); >>>>> + dev_err(&pdev->dev, "failed to add host ret - %d\n", >>>>> ret); >>>>> goto err_add_host; >>>>> } >>>> >>>> >>>> If this is really desirable, there are many other callers of >>>> sdhci_add_host with error messages just like this one. >>>> >>> How about this? If you are ok, I can change it and submit the patch >>> again. >>> diff --git a/drivers/mmc/host/sdhci.c b/drivers/mmc/host/sdhci.c >> >> [] >>> >>> @@ -3176,8 +3176,11 @@ int sdhci_add_host(struct sdhci_host *host) >>> mmc->caps |= MMC_CAP_NEEDS_POLL; >>> >>> /* If there are external regulators, get them */ >>> - if (mmc_regulator_get_supply(mmc) == -EPROBE_DEFER) >>> + if (mmc_regulator_get_supply(mmc) == -EPROBE_DEFER) { >>> + pr_err("%s: regulator supply unavailable, deferring >>> probe. \n", >>> + mmc_hostname(mmc)); >>> return -EPROBE_DEFER; >>> + } >> >> >> (your email client has inappropriate line wrapping) >> >> The KERN_<LEVEL> here probably isn't right. >> >> Deferring isn't an error, at best it's a notification > > > I would consider it as an ERROR if it gets deferred > continuously/multiple times due to same reason. > >> and perhaps should be at pr_notice/KERN_NOTICE >> > > Yeah, KERN_NOTICE looks right here. > >> I don't know how often or how many times this deferral >> can occur. Do you? >> > > -EDEFER_PROBE usually means that driver has some dependency, > for which it has to wait. > In my case, during every boot, I pxav3_sdhci_probe gets deferred once > due to regulator unavailability. The driver core already prints a message on the debug level for -EDEFER_PROBE. Please don't do that in the driver as well. Kind regards Uffe -- To unsubscribe from this list: send the line "unsubscribe linux-mmc" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/drivers/mmc/host/sdhci.c b/drivers/mmc/host/sdhci.c index d2caa60..3a4902c 100644 --- a/drivers/mmc/host/sdhci.c +++ b/drivers/mmc/host/sdhci.c @@ -3176,8 +3176,11 @@ int sdhci_add_host(struct sdhci_host *host) mmc->caps |= MMC_CAP_NEEDS_POLL; /* If there are external regulators, get them */ - if (mmc_regulator_get_supply(mmc) == -EPROBE_DEFER) + if (mmc_regulator_get_supply(mmc) == -EPROBE_DEFER) { + pr_err("%s: regulator supply unavailable, deferring probe. \n", + mmc_hostname(mmc)); return -EPROBE_DEFER; + } /* If vqmmc regulator and no 1.8V signalling, then there's no