[PATCH v5 1/4] resource: Move reparent_resources() to kernel/resource.c and make it public
Baoquan He
bhe at redhat.com
Wed Jul 4 00:55:03 AEST 2018
Hi Andy,
On 06/12/18 at 05:24pm, Andy Shevchenko wrote:
> On Tue, Jun 12, 2018 at 5:20 PM, Andy Shevchenko
> <andy.shevchenko at gmail.com> wrote:
> >> Hmm, I just copied it from arch/powerpc/kernel/pci-common.c. The
> >> function interface expects an integer returned value, not sure what a
> >> real error codes look like, could you give more hints? Will change
> >> accordingly.
> >
> > I briefly looked at the code and error codes we have, so, my proposal
> > is one of the following
>
> > - use -ECANCELED (not the best choice for first occurrence here,
> > though I can't find better)
>
> Actually -ENOTSUPP might suit the first case (although the actual
> would be something like -EOVERLAP, which we don't have)
Sorry for late reply, and many thanks for your great suggestion.
I am fine to use -ENOTSUPP as the first returned value, and -ECANCELED
for the 2nd one. Or define an enum as you suggested inside the function
or in header file.
Or use -EBUSY for the first case because existing resource is
overlapping but not fully contained by 'res'; and -EINVAL for
the 2nd case since didn't find any one resources which is contained by
'res', means we passed in a invalid resource.
All is fine to me, I can repost with each of them.
Thanks
Baoquan
>
> > - use positive integers (or enum), like
> > #define RES_REPARENTED 0
> > #define RES_OVERLAPPED 1
> > #define RES_NOCONFLICT 2
> >
> >
> >>> > + if (firstpp == NULL)
> >>> > + firstpp = pp;
> >>> > + }
> >>>
> >>> > + if (firstpp == NULL)
> >>> > + return -1; /* didn't find any conflicting entries? */
> >>>
> >>> Ditto.
> >
> > Ditto.
> >
> >>>
> >>> > +}
> >>> > +EXPORT_SYMBOL(reparent_resources);
> >
> > --
> > With Best Regards,
> > Andy Shevchenko
>
>
>
> --
> With Best Regards,
> Andy Shevchenko
More information about the Linuxppc-dev
mailing list