fallocate() on XFS clobbers S*ID-bits

Andreas Wiese
2010-10-07T18:41:05Z

Hello.

I (with support from Cc'ed Ciaran) just noticed some odd behaviour with
fallocate() on XFS. After open()ing some file and setting it S*ID via
fchmod(), S*ID bits vanish after calling fallocate() — as supposed to
for non-root users, but it also happens for root.

Is this intended behaviour or did we spot a bug here?

At least on ext2 it works as expected, thus I guess it's the latter one.

I'm running v2.6.35.7 vanilla-kernel, but diffing fs/xfs to master
doesn't seem to address this issue.

HAND & LG -- aw
--
This signature is intentionally left blank.