[PATCH 1/5] drivercore: add new error value for deferred probe
From: Greg KH <hidden>
Date: 2011-10-10 01:07:05
Also in:
linux-mmc, linux-omap, lkml
On Sun, Oct 09, 2011 at 04:59:31PM -0600, Grant Likely wrote:
On Fri, Oct 7, 2011 at 6:12 PM, Greg KH [off-list ref] wrote:quoted
On Fri, Oct 07, 2011 at 07:28:33PM -0400, Valdis.Kletnieks at vt.edu wrote:quoted
On Fri, 07 Oct 2011 16:12:45 MDT, Grant Likely said:quoted
On Fri, Oct 7, 2011 at 12:43 AM, Greg KH [off-list ref] wrote:quoted
On Fri, Oct 07, 2011 at 10:33:06AM +0500, G, Manjunath Kondaiah wrote:quoted
quoted
quoted
+#define EPROBE_DEFER 517 ? ? /* restart probe again after some time */Can we really do this?quoted
According to Arnd, yes this is okay.quoted
quoted
?Isn't this some user/kernel api here?quoted
quoted
What's wrong with just "overloading" on top of an existing error code? Surely one of the other 516 types could be used here, right?quoted
overloading makes it really hard to find the users at a later date.Would proposing '#define EPROBE_DEFER EAGAIN' be acceptable to everybody? That would allow overloading EAGAIN, but still make it easy to tell the usages apart if we need to separate them later...Yes, please do that, it is what USB does for it's internal error code handling.Really? When we've only currently used approximately 2^9 of a 2^31 numberspace? I'm fine with making sure that the number doesn't show up in the userspace headers, but it makes no sense to overload the #defines. Particularly so in this case where it isn't feasible to audit every driver to figure out what probe might possibly return. It is well within the realm of possibility that existing drivers are already returning -EAGAIN.
I doubt they are, but you are right, it's really hard to tell.
Besides; linux/errno.h *already* has linux-internal error codes that do not get exported out to userspace. There is an #ifdef __KERNEL__ block around ERESTARTSYS through EIOCBRETRY which is filtered out when exporting headers. I can't see any possible reason why we wouldn't add Linux internal error codes here.
As long as it stays internal, that's fine, I was worried that this would be exported to userspace. Alan, still object to this? greg k-h