public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Al Viro <viro@ZenIV.linux.org.uk>
To: Linus Torvalds <torvalds@linux-foundation.org>
Cc: linux-kernel@vger.kernel.org, axboe@kernel.dk
Subject: [git pull] bdev API series
Date: Thu, 23 Oct 2008 11:01:24 +0100	[thread overview]
Message-ID: <20081023100124.GK28946@ZenIV.linux.org.uk> (raw)

	Get rid of struct file/struct inode mess in block device
->open()/->release()/->ioctl(); switch them to saner prototype, kill
fake on-stack struct file, etc. brought by bogosity of old API,
sanitize f_mode handling in that area, provide a way for drivers
to DTRT with respect to closing r/o vs. closing r/w (e.g. it finally
becomes possible to fix the mess in cdrom_release() now).

Please, pull from
git://git.kernel.org/pub/scm/linux/kernel/git/viro/bdev.git/ master

Shortlog:
Al Viro (66):
      introduce fmode_t, do annotations
      eliminate use of ->f_flags in block methods
      pass mode instead of file to sg_io()
      switch sg_scsi_ioctl() to passing fmode_t
      switch scsi_cmd_ioctl() to passing fmode_t
      lose the unused file argument in generic_ide_ioctl()
      lose unused arguments in dm ioctl callbacks
      move block_device_operations to blkdev.h
      switch cdrom_{open,release,ioctl} to sane APIs
      switch pktcdvd to blkdev_driver_ioctl()
      introduce __blkdev_driver_ioctl()
      don't mess with file in scsi_nonblockable_ioctl()
      switch ide_disk_ops ->ioctl() to sane prototype
      beginning of methods conversion
      switch ubd
      switch DAC960
      switch amiflop
      switch aoeblk
      switch ataflop
      switch brd
      switch cciss
      switch cpqarray
      switch floppy
      switch loop
      switch nbd
      switch pcd
      switch pd
      switch pf
      switch pktdvdcd
      switch swim3
      switch ub
      switch viodasd
      switch virtio_blk
      switch xd
      switch xen
      switch xyspace
      switch z2ram
      switch gdrom
      switch viocd
      switch ide-cd
      switch ide-gd
      switch ide-tape
      switch dm
      switch md
      switch memstick
      switch i2o
      switch mmc
      switch mtd_blkdevs
      switch dasd
      switch dcssblk
      switch tape_block
      switch ide-scsi
      switch sd
      switch sr
      end of methods switch: remove the old ones
      trim file propagation in block/compat_ioctl.c
      kill the unused bsize on the send side of /dev/loop
      pass fmode_t to blkdev_put()
      propagate mode through open_bdev_excl/close_bdev_excl
      propagate mode through swsusp_close()
      remember mode of reiserfs journal
      sanitize blkdev_get() and friends
      get rid of blkdev_driver_ioctl()
      get rid of blkdev_locked_ioctl()
      get rid of struct file use in blkdev_ioctl() BLKBSZSET
      kill the rest of struct file propagation in block ioctls

Diffstat:
 arch/um/drivers/ubd_kern.c          |   19 ++--
 block/bsg.c                         |    9 +-
 block/cmd-filter.c                  |    2 +-
 block/compat_ioctl.c                |  175 ++++++++++++++---------------------
 block/ioctl.c                       |  173 ++++++++++++++++++-----------------
 block/scsi_ioctl.c                  |   33 +++----
 drivers/block/DAC960.c              |    6 +-
 drivers/block/amiflop.c             |   46 +++++-----
 drivers/block/aoe/aoeblk.c          |   12 +--
 drivers/block/ataflop.c             |   37 ++++----
 drivers/block/brd.c                 |    5 +-
 drivers/block/cciss.c               |   71 +++++++-------
 drivers/block/cpqarray.c            |   28 +++---
 drivers/block/floppy.c              |   54 +++++------
 drivers/block/loop.c                |   59 ++++++------
 drivers/block/nbd.c                 |   28 +++---
 drivers/block/paride/pcd.c          |   21 ++--
 drivers/block/paride/pd.c           |   14 ++--
 drivers/block/paride/pf.c           |   22 ++--
 drivers/block/paride/pt.c           |    2 +-
 drivers/block/pktcdvd.c             |   56 ++++++------
 drivers/block/swim3.c               |   32 +++---
 drivers/block/ub.c                  |   22 ++---
 drivers/block/viodasd.c             |   10 +-
 drivers/block/virtio_blk.c          |    8 +-
 drivers/block/xd.c                  |    4 +-
 drivers/block/xd.h                  |    2 +-
 drivers/block/xen-blkfront.c        |   15 ++--
 drivers/block/xsysace.c             |   11 +-
 drivers/block/z2ram.c               |    7 +-
 drivers/cdrom/cdrom.c               |   23 ++---
 drivers/cdrom/gdrom.c               |   14 ++--
 drivers/cdrom/viocd.c               |   21 ++--
 drivers/char/nvram.c                |    6 +-
 drivers/char/raw.c                  |    8 +-
 drivers/ide/ide-cd.c                |   22 ++---
 drivers/ide/ide-disk.h              |    2 +-
 drivers/ide/ide-disk_ioctl.c        |    5 +-
 drivers/ide/ide-floppy.h            |    4 +-
 drivers/ide/ide-floppy_ioctl.c      |   17 ++--
 drivers/ide/ide-gd.c                |   20 ++--
 drivers/ide/ide-ioctls.c            |    3 +-
 drivers/ide/ide-tape.c              |   17 +--
 drivers/md/dm-ioctl.c               |    4 +-
 drivers/md/dm-linear.c              |   13 +--
 drivers/md/dm-mpath.c               |   14 +--
 drivers/md/dm-table.c               |   16 ++--
 drivers/md/dm.c                     |   27 ++----
 drivers/md/md.c                     |   20 ++--
 drivers/memstick/core/mspro_block.c |    9 +-
 drivers/message/i2o/i2o_block.c     |   13 +--
 drivers/mmc/card/block.c            |   13 +--
 drivers/mtd/devices/block2mtd.c     |    4 +-
 drivers/mtd/mtd_blkdevs.c           |   24 ++---
 drivers/mtd/mtdchar.c               |   10 +-
 drivers/parisc/eisa_eeprom.c        |    2 +-
 drivers/s390/block/dasd.c           |   11 +--
 drivers/s390/block/dasd_genhd.c     |    4 +-
 drivers/s390/block/dasd_int.h       |    3 +-
 drivers/s390/block/dasd_ioctl.c     |   15 +---
 drivers/s390/block/dcssblk.c        |   17 ++--
 drivers/s390/char/tape_block.c      |   25 ++---
 drivers/scsi/ide-scsi.c             |   22 ++---
 drivers/scsi/scsi_ioctl.c           |    6 +-
 drivers/scsi/sd.c                   |   35 +++----
 drivers/scsi/sg.c                   |    2 +-
 drivers/scsi/sr.c                   |   40 ++++-----
 drivers/scsi/st.c                   |    7 +-
 fs/block_dev.c                      |  111 ++++++++++------------
 fs/ext2/xip.c                       |    1 +
 fs/ext3/super.c                     |    4 +-
 fs/ext4/super.c                     |    4 +-
 fs/fifo.c                           |    6 +-
 fs/file_table.c                     |    4 +-
 fs/hostfs/hostfs_kern.c             |    5 +-
 fs/jfs/jfs_logmgr.c                 |    4 +-
 fs/locks.c                          |    3 +-
 fs/ocfs2/cluster/heartbeat.c        |    6 +-
 fs/open.c                           |    2 +-
 fs/partitions/check.c               |    4 +-
 fs/proc/base.c                      |    4 +-
 fs/reiserfs/journal.c               |   11 ++-
 fs/super.c                          |   14 ++-
 fs/xfs/linux-2.6/xfs_super.c        |    4 +-
 include/linux/blkdev.h              |   27 +++++-
 include/linux/cdrom.h               |   10 +-
 include/linux/device-mapper.h       |   11 +-
 include/linux/file.h                |    4 +-
 include/linux/fs.h                  |   49 ++++------
 include/linux/fsnotify.h            |    2 +-
 include/linux/ide.h                 |    7 +-
 include/linux/reiserfs_fs_sb.h      |    1 +
 include/linux/types.h               |    1 +
 include/scsi/scsi_ioctl.h           |    2 +-
 ipc/shm.c                           |    2 +-
 kernel/power/disk.c                 |    2 +-
 kernel/power/power.h                |    2 +-
 kernel/power/swap.c                 |   14 ++--
 sound/core/oss/pcm_oss.c            |    2 +-
 sound/oss/au1550_ac97.c             |    2 +-
 sound/oss/dmasound/dmasound.h       |    4 +-
 sound/oss/dmasound/dmasound_atari.c |    4 +-
 sound/oss/dmasound/dmasound_core.c  |   10 +-
 sound/oss/msnd.h                    |    2 +-
 sound/oss/sound_config.h            |   20 +---
 sound/oss/swarm_cs4297a.c           |    2 +-
 sound/oss/vwsnd.c                   |    2 +-
 107 files changed, 868 insertions(+), 1002 deletions(-)


             reply	other threads:[~2008-10-23 10:01 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-10-23 10:01 Al Viro [this message]
2008-10-23 21:40 ` [git pull] bdev API series Roland Dreier

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20081023100124.GK28946@ZenIV.linux.org.uk \
    --to=viro@zeniv.linux.org.uk \
    --cc=axboe@kernel.dk \
    --cc=linux-kernel@vger.kernel.org \
    --cc=torvalds@linux-foundation.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox