[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <1228334103-15948-1-git-send-email-duaneg@dghda.com>
Date: Wed, 3 Dec 2008 19:54:57 +0000
From: "Duane Griffin" <duaneg@...da.com>
To: akpm@...ux-foundation.org
Cc: Andreas Dilger <adilger@....com>,
"Aneesh Kumar K.V" <aneesh.kumar@...ux.vnet.ibm.com>,
linux-ext4@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: [PATCH 0/6][REPOST] ext{2,3,4}: tighten inheritance and setting of inode flags
This patch series prevents the inheritance and setting of flags that are
inappropriate for specific inode types.
Flags which should be inherited are listed explicitly so as to prevent
future flags being overlooked and inherited by accident.
It introduces a function to mask flags based on the inode type and uses
it in inode creation and the SETFLAGS ioctl to help prevent future
inconsistency.
Patches 1-3 fix the TOPDIR flag inheritance bug reported at
http://bugzilla.kernel.org/show_bug.cgi?id=9866.
Patches 4-6 fix a related problem with non-regular file/dir inodes
inheriting inappropriate flags, discovered while testing. For example,
on an unpatched system, the following sequence will create an
un(re)movable device node:
mkdir a
chattr +a a
touch a/a
mknod a/b c 1 3
chattr -a a a/a
All attempts to delete, move or modify a/b will fail. Fsck will report
there is a problem but will not fix it.
Diffstat from linux-next:
fs/ext2/ialloc.c | 8 ++------
fs/ext2/ioctl.c | 3 +--
fs/ext3/ialloc.c | 8 ++------
fs/ext3/ioctl.c | 3 +--
fs/ext4/ext4.h | 25 +++++++++++++++++++++++++
fs/ext4/ialloc.c | 14 +++++---------
fs/ext4/ioctl.c | 3 +--
include/linux/ext2_fs.h | 24 ++++++++++++++++++++++++
include/linux/ext3_fs.h | 24 ++++++++++++++++++++++++
9 files changed, 85 insertions(+), 27 deletions(-)
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists