[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <6A0150A9-8C8C-4320-82B0-7ED8C7AEDAA9@dubeyko.com>
Date: Sun, 7 Oct 2012 14:15:19 +0400
From: Vyacheslav Dubeyko <slava@...eyko.com>
To: Jaegeuk Kim <jaegeuk.kim@...il.com>
Cc: jaegeuk.kim@...sung.com, Al Viro <viro@...iv.linux.org.uk>,
tytso@....edu, gregkh@...uxfoundation.org,
linux-kernel@...r.kernel.org, chur.lee@...sung.com,
cm224.lee@...sung.com, jooyoung.hwang@...sung.com,
linux-fsdevel@...r.kernel.org
Subject: Re: [PATCH 00/16] f2fs: introduce flash-friendly file system
Hi,
On Oct 7, 2012, at 12:06 AM, Jaegeuk Kim wrote:
> 2012-10-06 (토), 17:54 +0400, Vyacheslav Dubeyko:
>> Hi Jaegeuk,
>
> Hi.
> We know each other, right? :)
>
Yes, you are correct. :-)
>>
>>> From: 김재극 <jaegeuk.kim@...sung.com>
>>> To: viro@...iv.linux.org.uk, 'Theodore Ts'o' <tytso@....edu>, gregkh@...uxfoundation.org, linux-kernel@...r.kernel.org, chur.lee@...sung.com, cm224.lee@...sung.com, jaegeuk.kim@...sung.com, jooyoung.hwang@...sung.com
>>> Subject: [PATCH 00/16] f2fs: introduce flash-friendly file system
>>> Date: Fri, 05 Oct 2012 20:55:07 +0900
>>>
>>> This is a new patch set for the f2fs file system.
>>>
>>> What is F2FS?
>>> =============
>>>
>>> NAND flash memory-based storage devices, such as SSD, eMMC, and SD cards, have
>>> been widely being used for ranging from mobile to server systems. Since they are
>>> known to have different characteristics from the conventional rotational disks,
>>> a file system, an upper layer to the storage device, should adapt to the changes
>>> from the sketch.
>>>
>>> F2FS is a new file system carefully designed for the NAND flash memory-based storage
>>> devices. We chose a log structure file system approach, but we tried to adapt it
>>> to the new form of storage. Also we remedy some known issues of the very old log
>>> structured file system, such as snowball effect of wandering tree and high cleaning
>>> overhead.
>>>
>>> Because a NAND-based storage device shows different characteristics according to
>>> its internal geometry or flash memory management scheme aka FTL, we add various
>>> parameters not only for configuring on-disk layout, but also for selecting allocation
>>> and cleaning algorithms.
>>>
>>
>> What about F2FS performance? Could you share benchmarking results of the new file system?
>>
>> It is very interesting the case of aged file system. How is GC's implementation efficient? Could you share benchmarking results for the very aged file system state?
>>
>
> Although I have benchmark results, currently I'd like to see the results
> measured by community as a black-box. As you know, the results are very
> dependent on the workloads and parameters, so I think it would be better
> to see other results for a while.
> Thanks,
It is a good strategy. But it exists known bottlenecks and, maybe, it makes sense to begin discussion in the community.
With the best regards,
Vyacheslav Dubeyko.
>
>> With the best regards,
>> Vyacheslav Dubeyko.
>>
>>> Patch set
>>> =========
>>>
>>> The patch #1 adds a document to Documentation/filesystems/.
>>> The patch #2 adds a header file of on-disk layout to include/linux/.
>>> The patches #3-#15 adds f2fs source files to fs/f2fs/.
>>> The Last patch, patch #16, updates Makefile and Kconfig.
>>>
>>> mkfs.f2fs
>>> =========
>>>
>>> The file system formatting tool, "mkfs.f2fs", is available from the following
>>> download page:
>>> http://sourceforge.net/projects/f2fs-tools/
>>>
>>>
>>> Usage
>>> =====
>>>
>>> If you'd like to experience f2fs, simply:
>>> # mkfs.f2fs /dev/sdb1
>>> # mount -t f2fs /dev/sdb1 /mnt/f2fs
>>>
>>> Short log
>>> =========
>>>
>>> Jaegeuk Kim (16):
>>> f2fs: add document
>>> f2fs: add on-disk layout
>>> f2fs: add superblock and major in-memory structure
>>> f2fs: add super block operations
>>> f2fs: add checkpoint operations
>>> f2fs: add node operations
>>> f2fs: add segment operations
>>> f2fs: add file operations
>>> f2fs: add address space operations for data
>>> f2fs: add core inode operations
>>> f2fs: add inode operations for special inodes
>>> f2fs: add core directory operations
>>> f2fs: add xattr and acl functionalities
>>> f2fs: add garbage collection functions
>>> f2fs: add recovery routines for roll-forward
>>> f2fs: update Kconfig and Makefile
>>>
>>> Documentation/filesystems/00-INDEX | 2 +
>>> Documentation/filesystems/f2fs.txt | 314 +++++++
>>> fs/Kconfig | 1 +
>>> fs/Makefile | 1 +
>>> fs/f2fs/Kconfig | 55 ++
>>> fs/f2fs/Makefile | 6 +
>>> fs/f2fs/acl.c | 402 ++++++++
>>> fs/f2fs/acl.h | 57 ++
>>> fs/f2fs/checkpoint.c | 791 ++++++++++++++++
>>> fs/f2fs/data.c | 700 ++++++++++++++
>>> fs/f2fs/dir.c | 657 +++++++++++++
>>> fs/f2fs/f2fs.h | 981 ++++++++++++++++++++
>>> fs/f2fs/file.c | 643 +++++++++++++
>>> fs/f2fs/gc.c | 1140 +++++++++++++++++++++++
>>> fs/f2fs/gc.h | 203 +++++
>>> fs/f2fs/hash.c | 98 ++
>>> fs/f2fs/inode.c | 258 ++++++
>>> fs/f2fs/namei.c | 549 +++++++++++
>>> fs/f2fs/node.c | 1773 ++++++++++++++++++++++++++++++++++++
>>> fs/f2fs/node.h | 331 +++++++
>>> fs/f2fs/recovery.c | 372 ++++++++
>>> fs/f2fs/segment.c | 1755 +++++++++++++++++++++++++++++++++++
>>> fs/f2fs/segment.h | 627 +++++++++++++
>>> fs/f2fs/super.c | 550 +++++++++++
>>> fs/f2fs/xattr.c | 387 ++++++++
>>> fs/f2fs/xattr.h | 142 +++
>>> include/linux/f2fs_fs.h | 359 ++++++++
>>> 27 files changed, 13154 insertions(+)
>>> create mode 100644 Documentation/filesystems/f2fs.txt
>>> create mode 100644 fs/f2fs/Kconfig
>>> create mode 100644 fs/f2fs/Makefile
>>> create mode 100644 fs/f2fs/acl.c
>>> create mode 100644 fs/f2fs/acl.h
>>> create mode 100644 fs/f2fs/checkpoint.c
>>> create mode 100644 fs/f2fs/data.c
>>> create mode 100644 fs/f2fs/dir.c
>>> create mode 100644 fs/f2fs/f2fs.h
>>> create mode 100644 fs/f2fs/file.c
>>> create mode 100644 fs/f2fs/gc.c
>>> create mode 100644 fs/f2fs/gc.h
>>> create mode 100644 fs/f2fs/hash.c
>>> create mode 100644 fs/f2fs/inode.c
>>> create mode 100644 fs/f2fs/namei.c
>>> create mode 100644 fs/f2fs/node.c
>>> create mode 100644 fs/f2fs/node.h
>>> create mode 100644 fs/f2fs/recovery.c
>>> create mode 100644 fs/f2fs/segment.c
>>> create mode 100644 fs/f2fs/segment.h
>>> create mode 100644 fs/f2fs/super.c
>>> create mode 100644 fs/f2fs/xattr.c
>>> create mode 100644 fs/f2fs/xattr.h
>>> create mode 100644 include/linux/f2fs_fs.h
>>>
>>> --
>>> 1.7.9.5
>>>
>>>
>>>
>>>
>>> ---
>>> Jaegeuk Kim
>>> Samsung
>>>
>>>
>>>
>>> --
>>> 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/
>>>
>>
>> --
>> 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/
>
> --
> Jaegeuk Kim
> Samsung
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in
> the body of a message to majordomo@...r.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
--
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