Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Merge tag 'xfs-6.9-fixes-2' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux

Pull xfs fix from Chandan Babu:

- Allow creating new links to special files which were not associated
with a project quota

* tag 'xfs-6.9-fixes-2' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux:
xfs: allow cross-linking special files without project quota

+13 -2
+13 -2
fs/xfs/xfs_inode.c
··· 1301 1301 */ 1302 1302 if (unlikely((tdp->i_diflags & XFS_DIFLAG_PROJINHERIT) && 1303 1303 tdp->i_projid != sip->i_projid)) { 1304 - error = -EXDEV; 1305 - goto error_return; 1304 + /* 1305 + * Project quota setup skips special files which can 1306 + * leave inodes in a PROJINHERIT directory without a 1307 + * project ID set. We need to allow links to be made 1308 + * to these "project-less" inodes because userspace 1309 + * expects them to succeed after project ID setup, 1310 + * but everything else should be rejected. 1311 + */ 1312 + if (!special_file(VFS_I(sip)->i_mode) || 1313 + sip->i_projid != 0) { 1314 + error = -EXDEV; 1315 + goto error_return; 1316 + } 1306 1317 } 1307 1318 1308 1319 if (!resblks) {