On Mon, 10 Feb 2025 at 14:40, Christian Schoenebeck <qemu_...@crudebyte.com> wrote: > > Coverity scan complained about expression "|LARGEFILE" to be non reachable > and the detailed Coverity report claims O_LARGEFILE was zero. I can't > reproduce this here, but I assume that means there are at least some > system(s) which define O_LARGEFILE as zero. > > This is not really an issue, but to silence this Coverity warning, add a > preprocessor wrapper that checks for O_LARGEFILE being non-zero for this > overall expression. The 'defined(O_LARGEFILE)' check is not necessary, > but it makes it more clear that we really want to check for the value of > O_LARGEFILE, not just whether the macro was defined. > > Fixes: 9a0dd4b3 > Resolves: Coverity CID 1591178 > Reported-by: Coverity Scan > Signed-off-by: Christian Schoenebeck <qemu_...@crudebyte.com> > --- > hw/9pfs/9p-util-generic.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/hw/9pfs/9p-util-generic.c b/hw/9pfs/9p-util-generic.c > index 4c1e9c887d..02e359f17b 100644 > --- a/hw/9pfs/9p-util-generic.c > +++ b/hw/9pfs/9p-util-generic.c > @@ -19,7 +19,9 @@ char *qemu_open_flags_tostr(int flags) > #ifdef O_DIRECT > (flags & O_DIRECT) ? "|DIRECT" : "", > #endif > + #if defined(O_LARGEFILE) && O_LARGEFILE != 0 > (flags & O_LARGEFILE) ? "|LARGEFILE" : "", > + #endif > (flags & O_DIRECTORY) ? "|DIRECTORY" : "", > (flags & O_NOFOLLOW) ? "|NOFOLLOW" : "", > #ifdef O_NOATIME
I don't think we need to make this change -- the code is correct, and osdep.h defines O_LARGEFILE if the system doesn't, exactly so that we don't need to put in extra ifdefs in the code itself. Coverity often fails to understand that some code is not dead in a different configuration or host OS than the one that got scanned. I've marked the issue as a false-positive in the Coverity UI. thanks -- PMM