xfs: compat_xfs_bstat does not have forkoff
struct compat_xfs_bstat is missing the di_forkoff field and so does not fully translate the structure correctly. Fix it. Signed-off-by: Dave Chinner <dchinner@redhat.com> Reviewed-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Dave Chinner <david@fromorbit.com>
This commit is contained in:
parent
2ebff7bbd7
commit
b1d6cc02f2
2 changed files with 4 additions and 1 deletions
|
@ -160,6 +160,7 @@ xfs_ioctl32_bstat_copyin(
|
|||
get_user(bstat->bs_gen, &bstat32->bs_gen) ||
|
||||
get_user(bstat->bs_projid_lo, &bstat32->bs_projid_lo) ||
|
||||
get_user(bstat->bs_projid_hi, &bstat32->bs_projid_hi) ||
|
||||
get_user(bstat->bs_forkoff, &bstat32->bs_forkoff) ||
|
||||
get_user(bstat->bs_dmevmask, &bstat32->bs_dmevmask) ||
|
||||
get_user(bstat->bs_dmstate, &bstat32->bs_dmstate) ||
|
||||
get_user(bstat->bs_aextents, &bstat32->bs_aextents))
|
||||
|
@ -214,6 +215,7 @@ xfs_bulkstat_one_fmt_compat(
|
|||
put_user(buffer->bs_gen, &p32->bs_gen) ||
|
||||
put_user(buffer->bs_projid, &p32->bs_projid) ||
|
||||
put_user(buffer->bs_projid_hi, &p32->bs_projid_hi) ||
|
||||
put_user(buffer->bs_forkoff, &p32->bs_forkoff) ||
|
||||
put_user(buffer->bs_dmevmask, &p32->bs_dmevmask) ||
|
||||
put_user(buffer->bs_dmstate, &p32->bs_dmstate) ||
|
||||
put_user(buffer->bs_aextents, &p32->bs_aextents))
|
||||
|
|
|
@ -67,8 +67,9 @@ typedef struct compat_xfs_bstat {
|
|||
__u32 bs_gen; /* generation count */
|
||||
__u16 bs_projid_lo; /* lower part of project id */
|
||||
#define bs_projid bs_projid_lo /* (previously just bs_projid) */
|
||||
__u16 bs_forkoff; /* inode fork offset in bytes */
|
||||
__u16 bs_projid_hi; /* high part of project id */
|
||||
unsigned char bs_pad[12]; /* pad space, unused */
|
||||
unsigned char bs_pad[10]; /* pad space, unused */
|
||||
__u32 bs_dmevmask; /* DMIG event mask */
|
||||
__u16 bs_dmstate; /* DMIG state info */
|
||||
__u16 bs_aextents; /* attribute number of extents */
|
||||
|
|
Loading…
Reference in a new issue