[GIT PULL] Block driver changes for 4.8-rc

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Linus,

This builds on top of the core branch I just sent out. This branch also
contains core changes. I've come to the conclusion that from 4.9 and
forward, I'll be doing just a single branch. We often have dependencies
between core and drivers, and it's hard to always split them up
appropriately without pulling core into drivers when that happens.

This branch will also have a few merge conflicts, primarily around the
missing bio_put() that was fixed in -4.7-rc.

That said, this pull request contains:

- Separate secure erase type for the core block layer, from Christoph.

- Set of discard fixes, from Christoph.

- Bio shrinking fixes from Christoph, as a followup up to the op/flags
  change in the core branch.

- Map and append request fixes from Christoph.

- NVMeF (NVMe over Fabrics) code from Christoph. This is pretty
  exciting!

- nvme-loop fixes from Arnd.

- Removal of ->driverfs_dev from Dan, after providing a
  device_add_disk() helper.

- Bcache fixes from Bhaktipriya and Yijing.

- cdrom subchannel read fix from Vchannaiah.

- Set of lightnvm updates from Wenwei, Matias, Johannes, and Javier.

- Set of drbd updates and fixes from Fabian, Lars, and Philipp.

- mg_disk error path fix from Bart.

- User notification for failed device add for loop, from Minfei.

- NVMe in general:

        - NVMe delay quirk from Guilherme.
        - SR-IOV support and command retry limits from Keith.
        - Fix for memory-less NUMA node from Masayoshi.
        - Use UINT_MAX for discard sectors, from Minfei.
        - Cancel IO fixes from Ming.
        - Don't allocate unused major, from Neil.
        - Error code fixup from Dan.
        - Use constants for PSDT/FUSE from James.
        - Variable init fix from Jay.
        - Fabrics fixes from Ming, Sagi, and Wei.
        - Various fixes.

Please pull!


  git://git.kernel.dk/linux-block.git for-4.8/drivers


----------------------------------------------------------------
Armen Baloyan (1):
      nvme.h: Add get_log_page command strucure

Arnd Bergmann (2):
      nvme-loop: add configfs dependency
      nvme-loop: fix nvme-loop Kconfig dependencies

Bartlomiej Zolnierkiewicz (1):
      mg_disk: fix error path in mg_probe()

Bhaktipriya Shridhar (1):
      bcache: Remove deprecated create_workqueue

Christoph Hellwig (28):
      block: add a separate operation type for secure erase
      nvme.h: add RTD3R, RTD3E and OAES fields
      nvme.h: add NVM command set SQE/CQE size defines
      nvme.h: add AER constants
      nvme: allow for size limitations from transport drivers
      nvme: factor out a add nvme_is_write helper
      nvme: move the workaround for I/O queue-less controllers from PCIe to core
      nvme: allow transitioning from NEW to LIVE state
      nvme: Modify and export sync command submission for fabrics
      nvme.h: add NVMe over Fabrics definitions
      nvme-fabrics: add a generic NVMe over Fabrics library
      nvmet: add a generic NVMe target
      nvme-loop: add a NVMe loopback host driver
      nvme: add new reconnecting controller state
      nvmet-rdma: add a NVMe over Fabrics RDMA target driver
      nvme-rdma: add a NVMe over Fabrics RDMA host driver
      block: introduce BLKDEV_DISCARD_ZERO to fix zeroout
      block: don't ignore -EOPNOTSUPP blkdev_issue_write_same
      block: get rid of bio_rw and READA
      block: simplify and cleanup bvec pool handling
      block: shrink bio size again
      memstick: don't allow REQ_TYPE_BLOCK_PC requests
      virtio_blk: use blk_rq_map_kern
      block: ensure bios return from blk_get_request are properly initialized
      block: simplify and export blk_rq_append_bio
      target: stop using blk_make_request
      scsi/osd: open code blk_make_request
      block: unexport various bio mapping helpers

Dan Carpenter (1):
      nvmet: fix an error code

Dan Williams (5):
      block: introduce device_add_disk()
      mmc: move 'parent' tracking to mmc_blk_data
      um: track 'parent' device in a local variable
      block: convert to device_add_disk()
      block: remove ->driverfs_dev

Fabian Frederick (1):
      drbd: code cleanups without semantic changes

Guilherme G. Piccoli (1):
      nvme/quirk: Add a delay before checking for adapter readiness

James Smart (1):
      nvme.h: add constants for PSDT and FUSE values

Javier González (2):
      lightnvm: add media manager mark_blk helper
      lightnvm: initialize ppa_addr in dev_to_generic_addr()

Jay Freyensee (1):
      nvme: initialize variable before logical OR'ing it

Jens Axboe (1):
      Merge branch 'for-4.8/block' of git://git.kernel.org/.../nvdimm/nvdimm into for-4.8/drivers

Johannes Thumshirn (2):
      nvme: lightnvm: make MLC num_pairs little endian
      lightnvm: Make functions not used by ouside static

Keith Busch (2):
      nvme: Limit command retries
      nvme/pci: Provide SR-IOV support

Lars Ellenberg (24):
      drbd: bitmap bulk IO: do not always suspend IO
      drbd: change bitmap write-out when leaving resync states
      drbd: adjust assert in w_bitmap_io to account for BM_LOCKED_CHANGE_ALLOWED
      drbd: fix regression: protocol A sometimes synchronous, C sometimes double-latency
      drbd: fix for truncated minor number in callback command line
      drbd: allow parallel flushes for multi-volume resources
      drbd: when receiving P_TRIM, zero-out partial unaligned chunks
      drbd: possibly disable discard support, if backend has discard_zeroes_data=0
      drbd: zero-out partial unaligned discards on local backend
      drbd: allow larger max_discard_sectors
      drbd: finish resync on sync source only by notification from sync target
      drbd: introduce unfence-peer handler
      drbd: don't forget error completion when "unsuspending" IO
      drbd: if there is no good data accessible, writes should be IO errors
      drbd: only restart frozen disk io when D_UP_TO_DATE
      drbd: discard_zeroes_if_aligned allows "thin" resync for discard_zeroes_data=0
      drbd: report sizes if rejecting too small peer disk
      drbd: introduce WRITE_SAME support
      drbd: sync_handshake: handle identical uuids with current (frozen) Primary
      drbd: disallow promotion during resync handshake, avoid deadlock and hard reset
      drbd: bump current uuid when resuming IO with diskless peer
      drbd: finally report ms, not jiffies, in log message
      drbd: al_write_transaction: skip re-scanning of bitmap page pointer array
      drbd: correctly handle failed crypto_alloc_hash

Masayoshi Mizuma (1):
      nvme: avoid crashes when node 0 is memoryless node.

Matias Bjørling (12):
      lightnvm: remove checkpatch warning for unsigned ints
      lightnvm: fix checkpatch terse errors
      lightnvm: remove open/close statistics for gennvm
      lightnvm: rename gennvm and update description
      lightnvm: move target mgmt into media mgr
      lightnvm: remove nested lock conflict with mm
      lightnvm: remove unused lists from struct rrpc_block
      lightnvm: remove _unlocked variant of [get/put]_blk
      lightnvm: make rrpc_map_page call nvm_get_blk outside locks
      lightnvm: fix lun offset calculation for mark blk
      lightnvm: make ppa_list const in nvm_set_rqd_list
      lightnvm: make __nvm_submit_ppa static

Mike Christie (1):
      mg_disk: fix enum REQ_OP_ kbuild error

Minfei Huang (2):
      nvme: use UINT_MAX for max discard sectors
      loop: Make user notify for adding loop device failed

Ming Lin (5):
      nvme: update and rename nvme_cancel_io to nvme_cancel_request
      nvme: move nvme_cancel_request() to common code
      blk-mq: add blk_mq_alloc_request_hctx
      nvme: add fabrics sysfs attributes
      nvme-fabrics: add-remove ctrl repeat fix

NeilBrown (1):
      NVMe: don't allocate unused nvme_major

Philipp Reisner (4):
      drbd: Kill code duplication
      drbd: Implement handling of thinly provisioned storage on resync target nodes
      drbd: Introduce new disk config option rs-discard-granularity
      drbd: Create the protocol feature THIN_RESYNC

Roland Kammerer (1):
      drbd: get rid of empty statement in is_valid_state

Sagi Grimberg (7):
      nvme.h: Add keep-alive opcode and identify controller attribute
      nvme: add keep-alive support
      block: Export blk_poll
      blk-mq: Introduce blk_mq_reinit_tagset
      nvme-rdma.h: Add includes for nvme rdma_cm negotiation
      nvme-rdma: Don't use tl_retry_count
      nvme-fabrics: Remove tl_retry_count

Sunad Bhandary (1):
      NVMe: Fix removal in case of active namespace list scanning method

Wei Yongjun (2):
      nvme-rdma: fix the return value of nvme_rdma_reinit_request()
      nvmet: fix return value check in nvmet_subsys_alloc()

Wenwei Tao (1):
      lightnvm: break the loop when rqd is not null

Yijing Wang (3):
      bcache: Remove redundant parameter for cache_alloc()
      bcache: update document info
      bcache: Remove redundant block_size assignment

vchannaiah (1):
      cdrom: support read sub-channel command in LBA format

 Documentation/ioctl/cdrom.txt               |    3 +-
 MAINTAINERS                                 |    7 +
 arch/powerpc/sysdev/axonram.c               |    3 +-
 arch/um/drivers/ubd_kern.c                  |    5 +-
 block/bio-integrity.c                       |    9 +-
 block/bio.c                                 |   35 +-
 block/blk-core.c                            |   97 +-
 block/blk-lib.c                             |   44 +-
 block/blk-map.c                             |   25 +-
 block/blk-merge.c                           |    6 +-
 block/blk-mq-tag.c                          |   26 +
 block/blk-mq.c                              |   43 +
 block/blk.h                                 |    2 -
 block/genhd.c                               |   18 +-
 drivers/block/brd.c                         |    4 +-
 drivers/block/cciss.c                       |    3 +-
 drivers/block/drbd/drbd_actlog.c            |   29 +-
 drivers/block/drbd/drbd_bitmap.c            |   84 +-
 drivers/block/drbd/drbd_debugfs.c           |   13 +-
 drivers/block/drbd/drbd_int.h               |   49 +-
 drivers/block/drbd/drbd_interval.h          |   14 +-
 drivers/block/drbd/drbd_main.c              |  115 +-
 drivers/block/drbd/drbd_nl.c                |  282 +++-
 drivers/block/drbd/drbd_proc.c              |   30 +-
 drivers/block/drbd/drbd_protocol.h          |   77 +-
 drivers/block/drbd/drbd_receiver.c          |  535 +++++--
 drivers/block/drbd/drbd_req.c               |  118 +-
 drivers/block/drbd/drbd_req.h               |    5 +-
 drivers/block/drbd/drbd_state.c             |   61 +-
 drivers/block/drbd/drbd_state.h             |    2 +-
 drivers/block/drbd/drbd_strings.c           |    8 +-
 drivers/block/drbd/drbd_worker.c            |  115 +-
 drivers/block/floppy.c                      |    3 +-
 drivers/block/loop.c                        |    1 +
 drivers/block/mg_disk.c                     |    9 +-
 drivers/block/mtip32xx/mtip32xx.c           |    5 +-
 drivers/block/null_blk.c                    |    2 +-
 drivers/block/ps3disk.c                     |    3 +-
 drivers/block/ps3vram.c                     |    3 +-
 drivers/block/rsxx/dev.c                    |    4 +-
 drivers/block/skd_main.c                    |    8 +-
 drivers/block/sunvdc.c                      |    3 +-
 drivers/block/umem.c                        |    6 +-
 drivers/block/virtio_blk.c                  |   24 +-
 drivers/block/xen-blkback/xenbus.c          |    2 +-
 drivers/block/xen-blkfront.c                |   17 +-
 drivers/cdrom/cdrom.c                       |   28 +-
 drivers/ide/ide-cd.c                        |    3 +-
 drivers/ide/ide-gd.c                        |    3 +-
 drivers/lightnvm/Kconfig                    |   10 +-
 drivers/lightnvm/core.c                     |  242 +---
 drivers/lightnvm/gennvm.c                   |  385 +++--
 drivers/lightnvm/gennvm.h                   |   10 +-
 drivers/lightnvm/rrpc.c                     |  149 +-
 drivers/lightnvm/rrpc.h                     |   13 +-
 drivers/lightnvm/sysblk.c                   |    8 +-
 drivers/md/bcache/closure.c                 |    2 +-
 drivers/md/bcache/closure.h                 |    3 +-
 drivers/md/bcache/io.c                      |    1 -
 drivers/md/bcache/super.c                   |   10 +-
 drivers/md/dm-raid1.c                       |    8 +-
 drivers/md/dm-snap.c                        |   13 +-
 drivers/md/dm-zero.c                        |   15 +-
 drivers/md/dm.c                             |    2 +-
 drivers/md/raid1.c                          |    5 +-
 drivers/md/raid10.c                         |    5 +-
 drivers/md/raid5.c                          |    2 +-
 drivers/memstick/core/ms_block.c            |    6 +-
 drivers/memstick/core/mspro_block.c         |    6 +-
 drivers/mmc/card/block.c                    |   15 +-
 drivers/mmc/card/queue.c                    |    2 +-
 drivers/mtd/mtd_blkdevs.c                   |    4 +-
 drivers/nvdimm/blk.c                        |    3 +-
 drivers/nvdimm/btt.c                        |    3 +-
 drivers/nvdimm/bus.c                        |    2 +-
 drivers/nvdimm/pmem.c                       |    3 +-
 drivers/nvme/Kconfig                        |    1 +
 drivers/nvme/Makefile                       |    1 +
 drivers/nvme/host/Kconfig                   |   19 +
 drivers/nvme/host/Makefile                  |    6 +
 drivers/nvme/host/core.c                    |  318 ++++-
 drivers/nvme/host/fabrics.c                 |  952 +++++++++++++
 drivers/nvme/host/fabrics.h                 |  132 ++
 drivers/nvme/host/lightnvm.c                |    4 +-
 drivers/nvme/host/nvme.h                    |   48 +-
 drivers/nvme/host/pci.c                     |   68 +-
 drivers/nvme/host/rdma.c                    | 2018 +++++++++++++++++++++++++++
 drivers/nvme/target/Kconfig                 |   36 +
 drivers/nvme/target/Makefile                |    9 +
 drivers/nvme/target/admin-cmd.c             |  465 ++++++
 drivers/nvme/target/configfs.c              |  917 ++++++++++++
 drivers/nvme/target/core.c                  |  964 +++++++++++++
 drivers/nvme/target/discovery.c             |  221 +++
 drivers/nvme/target/fabrics-cmd.c           |  240 ++++
 drivers/nvme/target/io-cmd.c                |  215 +++
 drivers/nvme/target/loop.c                  |  754 ++++++++++
 drivers/nvme/target/nvmet.h                 |  331 +++++
 drivers/nvme/target/rdma.c                  | 1448 +++++++++++++++++++
 drivers/s390/block/dasd_genhd.c             |    3 +-
 drivers/s390/block/dcssblk.c                |    3 +-
 drivers/s390/block/scm_blk.c                |    3 +-
 drivers/scsi/osd/osd_initiator.c            |   25 +-
 drivers/scsi/sd.c                           |    3 +-
 drivers/scsi/sr.c                           |    3 +-
 drivers/staging/lustre/lustre/llite/lloop.c |   13 +-
 drivers/target/target_core_pscsi.c          |   87 +-
 fs/buffer.c                                 |   12 +-
 fs/f2fs/checkpoint.c                        |    2 +-
 fs/f2fs/gc.c                                |    3 +-
 fs/f2fs/node.c                              |    2 +-
 fs/gfs2/bmap.c                              |    3 +-
 fs/gfs2/dir.c                               |    2 +-
 fs/gfs2/meta_io.c                           |    2 +-
 fs/reiserfs/stree.c                         |    2 +-
 fs/udf/dir.c                                |    2 +-
 fs/udf/directory.c                          |    2 +-
 include/linux/bio.h                         |    2 -
 include/linux/blk-mq.h                      |    5 +
 include/linux/blk_types.h                   |   31 +-
 include/linux/blkdev.h                      |   30 +-
 include/linux/drbd.h                        |   10 +-
 include/linux/drbd_genl.h                   |    7 +-
 include/linux/drbd_limits.h                 |   15 +-
 include/linux/fs.h                          |   18 +-
 include/linux/genhd.h                       |    8 +-
 include/linux/lightnvm.h                    |   34 +-
 include/linux/nvme-rdma.h                   |   71 +
 include/linux/nvme.h                        |  406 +++++-
 include/trace/events/f2fs.h                 |    4 +-
 kernel/trace/blktrace.c                     |    6 +-
 130 files changed, 11620 insertions(+), 1284 deletions(-)
 create mode 100644 drivers/nvme/host/fabrics.c
 create mode 100644 drivers/nvme/host/fabrics.h
 create mode 100644 drivers/nvme/host/rdma.c
 create mode 100644 drivers/nvme/target/Kconfig
 create mode 100644 drivers/nvme/target/Makefile
 create mode 100644 drivers/nvme/target/admin-cmd.c
 create mode 100644 drivers/nvme/target/configfs.c
 create mode 100644 drivers/nvme/target/core.c
 create mode 100644 drivers/nvme/target/discovery.c
 create mode 100644 drivers/nvme/target/fabrics-cmd.c
 create mode 100644 drivers/nvme/target/io-cmd.c
 create mode 100644 drivers/nvme/target/loop.c
 create mode 100644 drivers/nvme/target/nvmet.h
 create mode 100644 drivers/nvme/target/rdma.c
 create mode 100644 include/linux/nvme-rdma.h

-- 
Jens Axboe

--
To unsubscribe from this list: send the line "unsubscribe linux-block" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux RAID]     [Linux SCSI]     [Linux ATA RAID]     [IDE]     [Linux Wireless]     [Linux Kernel]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Device Mapper]

  Powered by Linux