Fix wrong flag ASSERT in xfs_attr_shortform_getvalue
This ASSERT is testing an if_flags flag value against a di_aformat enum value. di_aformat is never assigned XFS_IFINLINE. This happens to work for now, because XFS_IFINLINE has the same value as XFS_DINODE_FMT_LOCAL, and that's tested just before we call this function. However, I think the intention is to assert that we have read in the data, i.e. XFS_IFINLINE on if_flags, before we use if_data. This is done in other places through the code as well. Signed-off-by: Eric Sandeen <sandeen@redhat.com> Reviewed-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Ben Myers <bpm@sgi.com>
This commit is contained in:
Родитель
904c17e683
Коммит
914ed44b17
|
@ -626,7 +626,7 @@ xfs_attr_shortform_getvalue(xfs_da_args_t *args)
|
|||
xfs_attr_sf_entry_t *sfe;
|
||||
int i;
|
||||
|
||||
ASSERT(args->dp->i_d.di_aformat == XFS_IFINLINE);
|
||||
ASSERT(args->dp->i_afp->if_flags == XFS_IFINLINE);
|
||||
sf = (xfs_attr_shortform_t *)args->dp->i_afp->if_u1.if_data;
|
||||
sfe = &sf->list[0];
|
||||
for (i = 0; i < sf->hdr.count;
|
||||
|
|
Загрузка…
Ссылка в новой задаче