On Fri, Jul 19, 2019 at 10:11:36AM +0100, Daniel P. Berrangé wrote:
On Fri, Jul 19, 2019 at 11:01:59AM +0200, Erik Skultety wrote:
> On Fri, Jul 19, 2019 at 09:34:03AM +0100, Daniel P. Berrangé wrote:
> > On Fri, Jul 19, 2019 at 08:44:59AM +0200, Erik Skultety wrote:
> > > On Fri, Jul 19, 2019 at 08:39:35AM +0200, Peter Krempa wrote:
> > > > On Fri, Jul 19, 2019 at 08:30:34 +0200, Erik Skultety wrote:
> > > > > virPCIGetSysfsFile is conditionally compiled only on Linux
platforms.
> > > > >
> > > > > Signed-off-by: Erik Skultety <eskultet(a)redhat.com>
> > > > > ---
> > > > >
> > > > > Pushed under the build breaker rule.
> > > > >
> > > > > src/util/virpci.c | 8 ++++++++
> > > > > 1 file changed, 8 insertions(+)
> > > > >
> > > > > diff --git a/src/util/virpci.c b/src/util/virpci.c
> > > > > index 75e8daadd5..ae3a0fa886 100644
> > > > > --- a/src/util/virpci.c
> > > > > +++ b/src/util/virpci.c
> > > > > @@ -3099,6 +3099,14 @@ virPCIGetVirtualFunctionIndex(const char
*pf_sysfs_device_link ATTRIBUTE_UNUSED,
> > > > >
> > > > > }
> > > > >
> > > > > +int
> > > > > +virPCIGetSysfsFile(char *virPCIDeviceName ATTRIBUTE_UNUSED,
> > > > > + char **pci_sysfs_device_link
ATTRIBUTE_UNUSED)
> > > > > +{
> > > > > + virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
_(unsupported));
> > > >
> > > > I think you forgot quotes around the "unsupported" string.
> > >
> > > unsupported is a const char * variable.
> >
> > Ewww, that all has to be purged as this is the wrong error code. This
> > example should be:
> >
> > virReportError(VIR_ERR_OPERATION_UNSUPPORTED, "%s@",
> > _("sysfs does not exist on this platform"))
>
> Wouldn't changing the default error code be enough? All the functions in that
> conditional block are related to sysfs operations and when the generic error
> says "Not supported on non-linux platforms", it still holds to be true.
Personally I prefer to see more specific error messages, as when the user
reports an error typically all we get is the message, not the function,
so its easier to distinguish where it came from
In general, that's true, but in this case, all the function would have to
report that sysfs doesn't exist, so from our POV, it didn't really help in
identifying the function, you'd need the debug logs anyways.
Erik