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
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [day] [month] [year] [list]
Date:	Tue, 12 Sep 2006 12:11:41 +0200
From:	Jens Axboe <axboe@...nel.dk>
To:	linux-kernel@...r.kernel.org
Subject: What's in linux-2.6-block.git

Hi,

This lists the main features of the 'block' branch, which is bound for
Linus when 2.6.19 opens:

- Splitting of request->flags into two parts:
	- cmd type
	- modified flags
  Right now it's a bit of a mess, splitting this up invites a cleaner
  usage and also enables us to implement generic "messages" passed on
  the regular queue for the device.

- Abstract out the request back merging and put it into the core io
  scheduler layer. Cleans up all the io schedulers, and noop gets
  merging for "free".

- Abstract out the rbtree sorting. Gets rid of duplicated code in
  as/cfq/deadline.

- General shrinkage of the request structure.

- Killing dynamic rq private structures in deadline/as/cfq. This should
  speed up the io path somewhat, as we avoid allocating several
  structures (struct request + scheduler private request) for each io
  request.

- meta data io logging for blktrace.

- CFQ improvements.

- Make the block layer configurable through Kconfig (David Howells).

- Lots of cleanups.

The repo can be found here:

  git://git.kernel.dk/data/git/linux-2.6-block.git

Andrew Morton:
      CONFIG_BLOCK internal.h cleanups
      CONFIG_BLOCK: blk_congestion_wait() fix

David Howells:
      BLOCK: Move functions out of buffer code [try #6]
      BLOCK: Remove duplicate declaration of exit_io_context() [try #6]
      BLOCK: Stop fallback_migrate_page() from using page_has_buffers() [try #6]
      BLOCK: Separate the bounce buffering code from the highmem code [try #6]
      BLOCK: Don't call block_sync_page() from AFS [try #6]
      BLOCK: Move extern declarations out of fs/*.c into header files [try #6]
      BLOCK: Remove dependence on existence of blockdev_superblock [try #6]
      BLOCK: Dissociate generic_writepages() from mpage stuff [try #6]
      BLOCK: Move __invalidate_device() to block_dev.c [try #6]
      BLOCK: Move the loop device ioctl compat stuff to the loop driver [try #6]
      BLOCK: Move common FS-specific ioctls to linux/fs.h [try #6]
      BLOCK: Move the ReiserFS device ioctl compat stuff to the ReiserFS driver [try #6]
      BLOCK: Move the Ext2 device ioctl compat stuff to the Ext2 driver [try #6]
      BLOCK: Move the Ext3 device ioctl compat stuff to the Ext3 driver [try #6]
      BLOCK: Move the msdos device ioctl compat stuff to the msdos driver [try #6]
      BLOCK: Remove no-longer necessary linux/mpage.h inclusions [try #6]
      BLOCK: Remove no-longer necessary linux/buffer_head.h inclusions [try #6]
      BLOCK: Make it possible to disable the block layer [try #6]
      BLOCK: Make USB storage depend on SCSI rather than selecting it [try #6]

Jens Axboe:
      Split struct request ->flags into two parts
      elevator: move the backmerging logic into the elevator core
      rbtree: fixed reversed RB_EMPTY_NODE and rb_next/prev
      elevator: abstract out the rbtree sort handling
      as-iosched: migrate to using the elevator rb functions
      cfq-iosched: migrate to using the elevator rb functions
      deadline-iosched: migrate to using the elevator rb functions
      elevator: introduce a way to reuse rq for internal FIFO handling
      cfq-iosched: convert to using the FIFO elevator defines
      as-iosched: reuse rq for fifo
      as-iosched: remove arq->is_sync member
      deadline-iosched: remove elevator private drq request type
      cfq-iosched: remove the crq flag functions/variable
      Add one more pointer to struct request for IO scheduler usage
      cfq-iosched: kill crq
      as-iosched: kill arq
      Remove ->waiting member from struct request
      Remove struct request_list from struct request
      Remove ->rq_status from struct request
      Drop useless bio passing in may_queue/set_request API
      ll_rw_blk: cleanup __make_request()
      struct request: shrink and optimize some more
      cfq-iosched: cleanups, fixes, dead code removal
      cfq-iosched: kill cfq_exit_lock
      elevator: define ioc counting mechanism
      as-iosched: use new io context counting mechanism
      cfq-iosched: use new io context counting mechanism
      Audit block layer inlines
      Kill various deprecated/unused block layer defines/functions
      Make sure all block/io scheduler setups are node aware
      cfq-iosched: Kill O(N) runtime of cfq_resort_rr_list()
      cfq-iosched: kill the empty_list
      Add blk_start_queueing() helper
      cfq-iosched: improve queue preemption
      ll_rw_blk: allow more flexibility for read_ahead_kb store
      Allow file systems to differentiate between data and meta reads
      ext3: make meta data reads use READ_META
      cfq-iosched: use metadata read flag
      blktrace: support for logging metadata reads
      SCSI: scsi_done_q is unused
      Update axboe@...e.de email address

Martin Peschke:
      [Patch] blktrace: cleanup using on_each_cpu

Milan Broz:
      fix creating zero sized bio mempools in low memory system

Oleg Nesterov:
      exit_io_context: don't disable irqs
      Don't need to disable interrupts for tasklist_lock

 MAINTAINERS                     |    8 
 arch/frv/Kconfig                |    4 
 arch/frv/kernel/time.c          |   81 ++++
 arch/ia64/kernel/sys_ia64.c     |   28 +
 arch/sparc/kernel/sys_sparc.c   |   27 +
 arch/sparc64/kernel/sys_sparc.c |   36 +-
 arch/um/drivers/ubd_kern.c      |    2 
 block/Kconfig                   |   20 +
 block/Kconfig.iosched           |    3 
 block/Makefile                  |    2 
 block/as-iosched.c              |  672 +++++++-----------------------
 block/blktrace.c                |   26 -
 block/cfq-iosched.c             |  865 +++++++++++++--------------------------
 block/deadline-iosched.c        |  464 +++------------------
 block/elevator.c                |  315 ++++++++++++--
 block/ll_rw_blk.c               |  223 ++++------
 block/noop-iosched.c            |    2 
 block/scsi_ioctl.c              |    6 
 drivers/block/DAC960.c          |    2 
 drivers/block/Kconfig           |    4 
 drivers/block/cciss.c           |    1 
 drivers/block/cpqarray.c        |    1 
 drivers/block/floppy.c          |    4 
 drivers/block/loop.c            |  160 +++++++
 drivers/block/nbd.c             |    8 
 drivers/block/paride/pd.c       |    6 
 drivers/block/pktcdvd.c         |    8 
 drivers/block/swim3.c           |    4 
 drivers/block/swim_iop.c        |    4 
 drivers/block/xd.c              |    2 
 drivers/cdrom/Kconfig           |    2 
 drivers/cdrom/cdrom.c           |    2 
 drivers/cdrom/cdu31a.c          |    4 
 drivers/char/Kconfig            |    1 
 drivers/char/random.c           |    4 
 drivers/fc4/fc.c                |    1 
 drivers/ide/Kconfig             |    4 
 drivers/ide/ide-cd.c            |   69 ++-
 drivers/ide/ide-disk.c          |    5 
 drivers/ide/ide-dma.c           |    2 
 drivers/ide/ide-floppy.c        |   17 -
 drivers/ide/ide-io.c            |   50 +-
 drivers/ide/ide-lib.c           |    5 
 drivers/ide/ide-proc.c          |    2 
 drivers/ide/ide-tape.c          |   14 -
 drivers/ide/ide-taskfile.c      |    8 
 drivers/ide/ide.c               |    8 
 drivers/ide/legacy/hd.c         |    2 
 drivers/ide/pci/sis5513.c       |    2 
 drivers/md/Kconfig              |    3 
 drivers/md/dm-emc.c             |    3 
 drivers/message/i2o/Kconfig     |    2 
 drivers/message/i2o/i2o_block.c |    7 
 drivers/mmc/Kconfig             |    2 
 drivers/mmc/Makefile            |    3 
 drivers/mmc/mmc_queue.c         |    6 
 drivers/mtd/Kconfig             |   12 -
 drivers/mtd/devices/Kconfig     |    2 
 drivers/mtd/mtd_blkdevs.c       |    2 
 drivers/net/Kconfig             |    2 
 drivers/s390/block/Kconfig      |    2 
 drivers/s390/block/dasd_diag.c  |    2 
 drivers/s390/block/dasd_eckd.c  |    2 
 drivers/s390/block/dasd_fba.c   |    2 
 drivers/scsi/Kconfig            |    2 
 drivers/scsi/aic7xxx_old.c      |    4 
 drivers/scsi/ide-scsi.c         |   16 -
 drivers/scsi/pluto.c            |    6 
 drivers/scsi/scsi.c             |   13 -
 drivers/scsi/scsi_lib.c         |   37 +-
 drivers/scsi/sd.c               |    5 
 drivers/scsi/sun3_NCR5380.c     |    2 
 drivers/scsi/sun3_scsi.c        |    2 
 drivers/scsi/sun3_scsi_vme.c    |    2 
 drivers/usb/storage/Kconfig     |    5 
 fs/Kconfig                      |   31 +
 fs/Makefile                     |   14 -
 fs/afs/file.c                   |    2 
 fs/binfmt_elf.c                 |    1 
 fs/bio.c                        |    4 
 fs/block_dev.c                  |   23 +
 fs/buffer.c                     |  174 --------
 fs/char_dev.c                   |    1 
 fs/cifs/file.c                  |    1 
 fs/cifs/inode.c                 |    1 
 fs/cifs/ioctl.c                 |    7 
 fs/compat.c                     |    8 
 fs/compat_ioctl.c               |  208 +--------
 fs/dcache.c                     |    4 
 fs/ext2/dir.c                   |    3 
 fs/ext2/ext2.h                  |    1 
 fs/ext2/file.c                  |    6 
 fs/ext2/ioctl.c                 |   32 +
 fs/ext3/dir.c                   |    3 
 fs/ext3/file.c                  |    3 
 fs/ext3/inode.c                 |   16 -
 fs/ext3/ioctl.c                 |   55 ++
 fs/ext3/namei.c                 |    3 
 fs/fat/dir.c                    |   56 +++
 fs/fs-writeback.c               |    9 
 fs/hfsplus/hfsplus_fs.h         |    8 
 fs/hfsplus/ioctl.c              |   17 -
 fs/inode.c                      |   21 -
 fs/internal.h                   |   55 ++
 fs/ioprio.c                     |   19 +
 fs/jfs/ioctl.c                  |   15 -
 fs/mpage.c                      |    2 
 fs/namespace.c                  |   12 -
 fs/nfs/direct.c                 |   50 ++
 fs/nfs/read.c                   |   24 -
 fs/nfs/write.c                  |   38 +-
 fs/no-block.c                   |   22 +
 fs/partitions/Makefile          |    2 
 fs/proc/proc_misc.c             |   11 
 fs/quota.c                      |   44 +-
 fs/reiserfs/dir.c               |    3 
 fs/reiserfs/file.c              |    4 
 fs/reiserfs/ioctl.c             |   35 ++
 fs/splice.c                     |    2 
 fs/super.c                      |   36 ++
 fs/sync.c                       |  113 +++++
 fs/xfs/Kconfig                  |    1 
 include/asm-i386/Kbuild         |    2 
 include/asm-ia64/mman.h         |    8 
 include/asm-sh/page.h           |    2 
 include/asm-sparc/mman.h        |    8 
 include/asm-sparc64/mman.h      |    8 
 include/linux/atmdev.h          |    2 
 include/linux/bio.h             |    2 
 include/linux/blkdev.h          |  333 ++++++++-------
 include/linux/blktrace_api.h    |    3 
 include/linux/buffer_head.h     |   19 +
 include/linux/compat.h          |    1 
 include/linux/compat_ioctl.h    |    8 
 include/linux/elevator.h        |   68 +++
 include/linux/ext2_fs.h         |   66 ++-
 include/linux/ext3_fs.h         |   26 +
 include/linux/fs.h              |   67 +++
 include/linux/genhd.h           |    4 
 include/linux/hrtimer.h         |    1 
 include/linux/ktime.h           |    7 
 include/linux/mm.h              |    4 
 include/linux/mpage.h           |    7 
 include/linux/nfs_fs.h          |    6 
 include/linux/nfs_xdr.h         |    4 
 include/linux/pci_ids.h         |    2 
 include/linux/raid/md.h         |    3 
 include/linux/raid/md_k.h       |    3 
 include/linux/ramfs.h           |    1 
 include/linux/rbtree.h          |    2 
 include/linux/reiserfs_fs.h     |   37 +-
 include/linux/sched.h           |    1 
 include/linux/sysfs.h           |    9 
 include/linux/tty.h             |    3 
 include/linux/writeback.h       |    2 
 include/scsi/scsi_tcq.h         |    5 
 init/Kconfig                    |    2 
 init/do_mounts.c                |   13 +
 kernel/exit.c                   |    1 
 kernel/futex.c                  |   84 +++-
 kernel/panic.c                  |    2 
 kernel/power/Kconfig            |    6 
 kernel/spinlock.c               |    2 
 kernel/sys_ni.c                 |    5 
 lib/rbtree.c                    |    6 
 mm/Makefile                     |    4 
 mm/bounce.c                     |  302 ++++++++++++++
 mm/filemap.c                    |   34 ++
 mm/highmem.c                    |  281 -------------
 mm/migrate.c                    |    4 
 mm/mmap.c                       |   17 -
 mm/page-writeback.c             |  143 ++++++
 mm/truncate.c                   |   37 +-
 security/seclvl.c               |    4 
 174 files changed, 3127 insertions(+), 3080 deletions(-)
 create mode 100644 fs/internal.h
 create mode 100644 fs/no-block.c
 create mode 100644 mm/bounce.c

-- 
Jens Axboe

-
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

Powered by Openwall GNU/*/Linux Powered by OpenVZ