linux-fsdevel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH mmotm 0/6] nilfs2 ioctl cleanups (change ioctl API)
@ 2009-02-17  7:42 Ryusuke Konishi
  2009-02-17  7:42 ` [PATCH mmotm 1/6] nilfs2: remove timedwait ioctl command Ryusuke Konishi
                   ` (5 more replies)
  0 siblings, 6 replies; 11+ messages in thread
From: Ryusuke Konishi @ 2009-02-17  7:42 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-fsdevel, linux-kernel, Ryusuke Konishi

This patch set takes some review comments and correct compatibility
problems on ioctl of the nilfs2 filesystem.

Due to improper design of the previous interface, it had arch
dependent problems such as variable sized fields or alignment issue of
structures.  This resolves them and eliminates compat code.

This will once break ioctl-API compatibility and require update of
userland tools.  However, I think it is better if I just straighten
things out and release new nilfs-utils.  The disk format has not
changed by this.

In addition to the related modifications, one or two changes that need
revision of the ioctl API are included together to take this occasion.

Summary of changes:

 * use fixed sized types and fix alignment issues for ioctl
   structures.
 * remove compat ioctl code.
 * use ->unlocked_ioctl instead of ->ioctl to avoid BKL.
 * remove TIMEDWAIT ioctl command which has been used to give a
   poll-like feature to userland cleaner program.
 * convert BUG_ON() and BUG() calls to proper error handlings or
   WARN_ON() calls; this will prevent ioctls from triggering the
   formers.
 * add an argument to nilfs_sustat ioctl structure to simplify
   management of state whether each segment (disk region) is
   reclaimable or not.

The corresponding userland package (nilfs-utils) is available from
git repos on the following site:

  http://www.nilfs.org/git/

Thanks to Pekka Enberg, Chris Mason and people giving us feedback.

Regards,
Ryusuke Konishi
---

 fs/nilfs2/btree.c         |   27 +--
 fs/nilfs2/cpfile.c        |   38 +++--
 fs/nilfs2/dat.c           |   15 +-
 fs/nilfs2/dir.c           |    4 +-
 fs/nilfs2/direct.c        |   13 +-
 fs/nilfs2/file.c          |    4 +-
 fs/nilfs2/inode.c         |   19 +--
 fs/nilfs2/ioctl.c         |  401 ++++++---------------------------------------
 fs/nilfs2/mdt.c           |    4 +-
 fs/nilfs2/nilfs.h         |    4 +-
 fs/nilfs2/page.c          |   10 +-
 fs/nilfs2/recovery.c      |   35 ++--
 fs/nilfs2/segment.c       |  122 ++++----------
 fs/nilfs2/sufile.c        |   33 +++--
 fs/nilfs2/super.c         |   12 +-
 fs/nilfs2/the_nilfs.c     |   19 --
 fs/nilfs2/the_nilfs.h     |   11 +-
 include/linux/nilfs2_fs.h |   96 ++---------
 18 files changed, 213 insertions(+), 654 deletions(-)



^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2009-02-17 15:49 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-02-17  7:42 [PATCH mmotm 0/6] nilfs2 ioctl cleanups (change ioctl API) Ryusuke Konishi
2009-02-17  7:42 ` [PATCH mmotm 1/6] nilfs2: remove timedwait ioctl command Ryusuke Konishi
2009-02-17  7:42 ` [PATCH mmotm 2/6] nilfs2: use fixed sized types for ioctl structures Ryusuke Konishi
2009-02-17  7:42 ` [PATCH mmotm 3/6] nilfs2: remove compat ioctl code Ryusuke Konishi
2009-02-17  7:42 ` [PATCH mmotm 4/6] nilfs2: use unlocked_ioctl Ryusuke Konishi
2009-02-17 11:26   ` Pekka Enberg
2009-02-17 15:43     ` Ryusuke Konishi
2009-02-17 15:49       ` Pekka Enberg
2009-02-17  7:42 ` [PATCH mmotm 5/6] nilfs2: extend nilfs_sustat ioctl struct Ryusuke Konishi
2009-02-17  7:42 ` [PATCH mmotm 6/6] nilfs2: replace BUG_ON and BUG calls triggerable from ioctl Ryusuke Konishi
2009-02-17 11:28   ` Pekka Enberg

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).