[Virtio-fs] [PATCH 1/4] virtiofsd: Fix number of padding bits in fuse_file_info
Dr. David Alan Gilbert
dgilbert at redhat.com
Wed Aug 21 11:25:07 UTC 2019
* Dr. David Alan Gilbert (dgilbert at redhat.com) wrote:
> * Vivek Goyal (vgoyal at redhat.com) wrote:
> > Currently we have 27 padding bits while there are 6 bit fields. I suspect
> > this is wrong. We probably are trying to aling to 32 bits and hence padding
> > bits should be 26 instead.
> >
> > Signed-off-by: Vivek Goyal <vgoyal at redhat.com>
>
> Yeh, I reckon this was broken upstream by 19accdf ~6 years ago; whether
> it's fixable upstream I don't know because they have API requierments
> since it's a library.
>
> Still, it's definitely wrong so:
>
> Reviewed-by: Dr. David Alan Gilbert <dgilbert at redhat.com>
Actually I found this upstream bug:
https://github.com/libfuse/libfuse/issues/396
which is a 'wontfix'; I think the padding only really exists because
of the ABI requirements; so there's not much point in us changing it.
We could just drop padding.
Dave
> > ---
> > contrib/virtiofsd/fuse_common.h | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/contrib/virtiofsd/fuse_common.h b/contrib/virtiofsd/fuse_common.h
> > index 6419f66470..4d95f6f28b 100644
> > --- a/contrib/virtiofsd/fuse_common.h
> > +++ b/contrib/virtiofsd/fuse_common.h
> > @@ -65,7 +65,7 @@ struct fuse_file_info {
> > unsigned int flock_release : 1;
> >
> > /** Padding. Do not use*/
> > - unsigned int padding : 27;
> > + unsigned int padding : 26;
> >
> > /** File handle. May be filled in by filesystem in open().
> > Available in all other file operations */
> > --
> > 2.17.2
> >
> --
> Dr. David Alan Gilbert / dgilbert at redhat.com / Manchester, UK
--
Dr. David Alan Gilbert / dgilbert at redhat.com / Manchester, UK
More information about the Virtio-fs
mailing list