[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <4F912880.70708@panasas.com>
Date: Fri, 20 Apr 2012 12:12:32 +0300
From: Boaz Harrosh <bharrosh@...asas.com>
To: "Theodore Ts'o" <tytso@....edu>
CC: <linux-fsdevel@...r.kernel.org>,
Ext4 Developers List <linux-ext4@...r.kernel.org>
Subject: Re: [PATCH, RFC 0/3] Introduce new O_HOT and O_COLD flags
On 04/19/2012 10:20 PM, Theodore Ts'o wrote:
> As I had brought up during one of the lightning talks at the Linux
> Storage and Filesystem workshop, I am interested in introducing two new
> open flags, O_HOT and O_COLD. These flags are passed down to the
> individual file system's inode operations' create function, and the file
> system can use these flags as a hint regarding whether the file is
> likely to be accessed frequently or not.
>
> In the future I plan to do further work on how ext4 would use these
> flags, but I want to first get the ability to pass these flags plumbed
> into the VFS layer and the code points for O_HOT and O_COLD reserved.
>
>
> Theodore Ts'o (3):
> fs: add new open flags O_HOT and O_COLD
> fs: propagate the open_flags structure down to the low-level fs's
> create()
> ext4: use the O_HOT and O_COLD open flags to influence inode
> allocation
>
I would expect that the first, and most important patch to this
set would be the man page which would define the new API.
What do you mean by cold/normal/hot? what is expected if supported?
how can we know if supported? ....
I presume you mean 3 levels (not even 2 bits) of what T10 called
"read-frequency" or is that "write-frequency", or some other metrics
you defined?
Well in the patchset you supplied it means closer to outer-edge.
What ever that means? so in the case of ext4 on SSD or DM/MD or
loop or thin provisioned LUN. How do I stop it. The code is already
there in Kernel and the application is setting that flag at create,
how do I make the FS not do that stupid, for me, thing?
I wish you'd be transparent, call it O_OUTER_DISK and be honest
about it. The "undefined API" never ever worked in the past,
why would it work now?
And Yes an fctrl is a much better match, and with delayed allocation
that should not matter, right?
And one last thing. We would like to see numbers. Please show us where/how
it matters. Are there down sides?. If it's so good we'd like to implement
it too.
Thanks
Boaz
> fs/9p/vfs_inode.c | 2 +-
> fs/affs/affs.h | 2 +-
> fs/affs/namei.c | 3 ++-
> fs/bfs/dir.c | 2 +-
> fs/btrfs/inode.c | 3 ++-
> fs/cachefiles/namei.c | 3 ++-
> fs/ceph/dir.c | 2 +-
> fs/cifs/dir.c | 2 +-
> fs/coda/dir.c | 3 ++-
> fs/ecryptfs/inode.c | 5 +++--
> fs/exofs/namei.c | 2 +-
> fs/ext2/namei.c | 4 +++-
> fs/ext3/namei.c | 5 +++--
> fs/ext4/ext4.h | 8 +++++++-
> fs/ext4/ialloc.c | 33 +++++++++++++++++++++++++++------
> fs/ext4/migrate.c | 2 +-
> fs/ext4/namei.c | 17 ++++++++++++-----
> fs/fat/namei_msdos.c | 2 +-
> fs/fat/namei_vfat.c | 2 +-
> fs/fcntl.c | 5 +++--
> fs/fuse/dir.c | 2 +-
> fs/gfs2/inode.c | 3 ++-
> fs/hfs/dir.c | 2 +-
> fs/hfsplus/dir.c | 5 +++--
> fs/hostfs/hostfs_kern.c | 2 +-
> fs/hugetlbfs/inode.c | 4 +++-
> fs/internal.h | 6 ------
> fs/jffs2/dir.c | 5 +++--
> fs/jfs/namei.c | 2 +-
> fs/logfs/dir.c | 2 +-
> fs/minix/namei.c | 2 +-
> fs/namei.c | 9 +++++----
> fs/ncpfs/dir.c | 5 +++--
> fs/nfs/dir.c | 6 ++++--
> fs/nfsd/vfs.c | 4 ++--
> fs/nilfs2/namei.c | 2 +-
> fs/ocfs2/namei.c | 3 ++-
> fs/omfs/dir.c | 2 +-
> fs/ramfs/inode.c | 3 ++-
> fs/reiserfs/namei.c | 5 +++--
> fs/sysv/namei.c | 4 +++-
> fs/ubifs/dir.c | 2 +-
> fs/udf/namei.c | 2 +-
> fs/ufs/namei.c | 2 +-
> fs/xfs/xfs_iops.c | 3 ++-
> include/asm-generic/fcntl.h | 7 +++++++
> include/linux/fs.h | 14 ++++++++++++--
> ipc/mqueue.c | 2 +-
> 48 files changed, 143 insertions(+), 74 deletions(-)
>
--
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