diff options
| author | Greg KH <greg@press.(none)> | 2005-06-30 01:54:31 -0400 | 
|---|---|---|
| committer | Greg Kroah-Hartman <gregkh@suse.de> | 2005-06-30 01:54:31 -0400 | 
| commit | bf164c790deb79b18faf304b0763e44a02c79f90 (patch) | |
| tree | 8fedcdce1f65aa6bc98fea0da6227d3fc0fc51fd /fs | |
| parent | d62c0f9fd2d3943a3eca85b490d86e1605000ccb (diff) | |
| parent | 9b4311eedb17fa88f02e4876cd6aa9a08e383cd6 (diff) | |
Merge rsync://rsync.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6
Diffstat (limited to 'fs')
| -rw-r--r-- | fs/reiserfs/ioctl.c | 6 | ||||
| -rw-r--r-- | fs/reiserfs/super.c | 2 | 
2 files changed, 8 insertions, 0 deletions
| diff --git a/fs/reiserfs/ioctl.c b/fs/reiserfs/ioctl.c index 94dc42475a04..76caedf737f2 100644 --- a/fs/reiserfs/ioctl.c +++ b/fs/reiserfs/ioctl.c | |||
| @@ -36,10 +36,16 @@ int reiserfs_ioctl (struct inode * inode, struct file * filp, unsigned int cmd, | |||
| 36 | /* following two cases are taken from fs/ext2/ioctl.c by Remy | 36 | /* following two cases are taken from fs/ext2/ioctl.c by Remy | 
| 37 | Card (card@masi.ibp.fr) */ | 37 | Card (card@masi.ibp.fr) */ | 
| 38 | case REISERFS_IOC_GETFLAGS: | 38 | case REISERFS_IOC_GETFLAGS: | 
| 39 | if (!reiserfs_attrs (inode->i_sb)) | ||
| 40 | return -ENOTTY; | ||
| 41 | |||
| 39 | flags = REISERFS_I(inode) -> i_attrs; | 42 | flags = REISERFS_I(inode) -> i_attrs; | 
| 40 | i_attrs_to_sd_attrs( inode, ( __u16 * ) &flags ); | 43 | i_attrs_to_sd_attrs( inode, ( __u16 * ) &flags ); | 
| 41 | return put_user(flags, (int __user *) arg); | 44 | return put_user(flags, (int __user *) arg); | 
| 42 | case REISERFS_IOC_SETFLAGS: { | 45 | case REISERFS_IOC_SETFLAGS: { | 
| 46 | if (!reiserfs_attrs (inode->i_sb)) | ||
| 47 | return -ENOTTY; | ||
| 48 | |||
| 43 | if (IS_RDONLY(inode)) | 49 | if (IS_RDONLY(inode)) | 
| 44 | return -EROFS; | 50 | return -EROFS; | 
| 45 | 51 | ||
| diff --git a/fs/reiserfs/super.c b/fs/reiserfs/super.c index 660aefca1fd2..d50a5cd860ce 100644 --- a/fs/reiserfs/super.c +++ b/fs/reiserfs/super.c | |||
| @@ -1066,6 +1066,8 @@ static void handle_attrs( struct super_block *s ) | |||
| 1066 | reiserfs_warning(s, "reiserfs: cannot support attributes until flag is set in super-block" ); | 1066 | reiserfs_warning(s, "reiserfs: cannot support attributes until flag is set in super-block" ); | 
| 1067 | REISERFS_SB(s) -> s_mount_opt &= ~ ( 1 << REISERFS_ATTRS ); | 1067 | REISERFS_SB(s) -> s_mount_opt &= ~ ( 1 << REISERFS_ATTRS ); | 
| 1068 | } | 1068 | } | 
| 1069 | } else if (le32_to_cpu( rs -> s_flags ) & reiserfs_attrs_cleared) { | ||
| 1070 | REISERFS_SB(s)->s_mount_opt |= REISERFS_ATTRS; | ||
| 1069 | } | 1071 | } | 
| 1070 | } | 1072 | } | 
| 1071 | 1073 | ||
