lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Tue, 23 Nov 2010 11:32:46 +0100 (CET) From: Lukas Czerner <lczerner@...hat.com> To: Jan Kara <jack@...e.cz> cc: Lukas Czerner <lczerner@...hat.com>, tytso@....edu, linux-fsdevel@...r.kernel.org, linux-ext4@...r.kernel.org Subject: Re: [PATCH 2/2] ext3: Add FITRIM handle for ext3 On Mon, 22 Nov 2010, Jan Kara wrote: > On Mon 22-11-10 12:29:18, Lukas Czerner wrote: > > It takes fstrim_range structure as an argument. fstrim_range is definec in > > the include/linux/fs.h. > > > > After the FITRIM is done, the number of actually discarded Bytes is stored > > in fstrim_range.len to give the user better insight on how much storage > > space has been really released for wear-leveling. > Umm, why do we have to do this when FITRIM is already handled in > fs/ioctl.c? I'd expect us to just provide .trim_fs ioctl, no? Hi, see upstream commits: 93bb41f4f8b89ac8b4d0a734bc59634cb0a29a89 e681c047e47c0abe67bf95857f23814372793cb0 unfortunately people was not happy with generic ioctl interface for that purpose, there were concerned that it is no common enough to be included in core vfs and there is no need for new super operation since each filesystem can easily setup its own ioctl handling. When I say people I need to clarify that it was mainly Christoph Hellwig who had objections against the former implementation and I must say that he had a point. -Lukas > > Honza > > > > Signed-off-by: Lukas Czerner <lczerner@...hat.com> > > --- > > fs/ext3/ioctl.c | 22 ++++++++++++++++++++++ > > 1 files changed, 22 insertions(+), 0 deletions(-) > > > > diff --git a/fs/ext3/ioctl.c b/fs/ext3/ioctl.c > > index 8897481..fc080dd 100644 > > --- a/fs/ext3/ioctl.c > > +++ b/fs/ext3/ioctl.c > > @@ -276,7 +276,29 @@ group_add_out: > > mnt_drop_write(filp->f_path.mnt); > > return err; > > } > > + case FITRIM: { > > > > + struct super_block *sb = inode->i_sb; > > + struct fstrim_range range; > > + int ret = 0; > > + > > + if (!capable(CAP_SYS_ADMIN)) > > + return -EPERM; > > + > > + if (copy_from_user(&range, (struct fstrim_range *)arg, > > + sizeof(range))) > > + return -EFAULT; > > + > > + ret = ext3_trim_fs(sb, &range); > > + if (ret < 0) > > + return ret; > > + > > + if (copy_to_user((struct fstrim_range *)arg, &range, > > + sizeof(range))) > > + return -EFAULT; > > + > > + return 0; > > + } > > > > default: > > return -ENOTTY; > > -- > > 1.7.2.3 > > > -- -- To unsubscribe from this list: send the line "unsubscribe linux-ext4" in the body of a message to majordomo@...r.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists