All of lore.kernel.org
 help / color / mirror / Atom feed
From: willy@linux.intel.com (Matthew Wilcox)
Subject: [GIT PULL] NVM Express driver
Date: Wed, 18 Jan 2012 09:39:44 -0500	[thread overview]
Message-ID: <20120118143944.GA14291@linux.intel.com> (raw)


Hi Linus,

Please can you pull the NVM Express driver?

The only code touched outside the driver is adding an EXPORT_SYMBOL for
xen_biovec_phys_mergeable which was approved by Jens here:
https://lkml.org/lkml/2011/9/21/185

The following changes since commit ccb19d263fd1c9e34948e2158c53eacbff369344:

  Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net (2012-01-17 22:26:41 -0800)

are available in the git repository at:

  git://git.infradead.org/users/willy/linux-nvme.git master

Krzysztof Wierzbicki (1):
      NVMe: Update admin opcodes to match the 1.0RC spec

Matthew Wilcox (99):
      Xen: Export xen_biovec_phys_mergeable
      NVMe: New driver
      NVMe: Factor out queue_request_irq()
      NVMe: Reduce set_queue_count arguments by one
      NVMe: Implement per-CPU queues
      NVMe: Rename 'cycle' to 'phase'
      NVMe: Fix admin IRQ claim on real hardware
      NVMe: Use PRP2 for the nvme_identify ioctl
      NVMe: Make nvme_common_command more featureful
      NVMe: Add nvme_setup_prps()
      NVMe: Zero the command before we send it
      NVMe: Change NVME_IOCTL_GET_RANGE_TYPE to return all the ranges
      NVMe: Create nvme_map_user_pages() and nvme_unmap_user_pages()
      NVMe: Add NVME_IOCTL_SUBMIT_IO
      NVMe: Read the model, serial & firmware rev from the controller
      NVMe: Remove 'node' from nvme_dev
      NVMe: Check returns from nvme_alloc_queue()
      NVMe: Enable device DMA
      NVMe: Allow queues to be allocated above 4GB
      NVMe: Request I/O regions
      NVMe: Move sysfs entries to the right place
      NVMe: Add remaining status codes
      NVMe: Add download / activate firmware ioctls
      NVMe: Release 0.2
      NVMe: Allow fatal signals to interrupt I/O
      NVMe: Call put_nvmeq() before calling nvme_submit_sync_cmd()
      NVMe: Add a module parameter to use a threaded interrupt
      NVMe: Use a symbolic name to represent cancelled commands instead of 0
      NVMe: Detect commands that are completed twice
      NVMe: Detect command IDs completing that are out of range
      NVMe: Need to lock queue during interrupt handling
      NVMe: Record the timeout for each command
      NVMe: Handle the congestion list a little better
      NVMe: Renumber the special context values
      NVMe: Advance the sg pointer when filling in an sg list
      NVMe: Rename nvme_req_info to nvme_bio
      NVMe: Switch to use DMA Pool API
      NVMe: Optimise memory usage for I/Os between 4k and 128k
      NVMe: Pass the nvme_dev to nvme_free_prps and nvme_setup_prps
      NVMe: Check for DMA mapping failure
      NVMe: Handle physical merging of bvec entries
      NVMe: Update BAR structure to match the current spec
      NVMe: Handle failures differently in nvme_submit_bio_queue()
      NVMe: Add a kthread to handle the congestion list
      NVMe: Release 0.3
      NVMe: Remove setting of 'flags' in rw command
      NVMe: Rename nr_queues to nr_io_queues
      NVMe: Let the kthread take care of devices earlier
      NVMe: Correct SQ doorbell semantics
      NVMe: Mark CMD_CTX_CANCELLED as being unlikely
      NVMe: Implement Flush
      NVMe: Handle bios that contain non-virtually contiguous addresses
      NVMe: Fix discontiguous accesses
      NVMe: Reduce maximum queue depth by 1
      NVMe: Version 0.4
      NVMe: Convert comments to kernel-doc notation
      NVMe: Fix comment formatting
      NVMe: Remove outdated comments
      NVMe: Fix interpretation of 'Number of Namespaces' field
      NVMe: Fix off-by-one when filling in PRP lists
      NVMe: Remove the kthread from the wait queue
      NVMe: Simplify queue lookup
      NVMe: Add compat_ioctl
      NVMe: Correct the definitions of two ioctls
      NVMe: Change the definition of nvme_user_io
      NVMe: Version 0.5
      NVMe: Correct the Controller Configuration settings
      NVMe: Fix warning in free_irq
      NVMe: Time out initialisation after a few seconds
      NVMe: Fix bug in error handling
      NVMe: Rename cancel_cmdid_data to cancel_cmdid
      NVMe: Add support for timing out I/Os
      NVMe: Add include of delay.h for msleep
      NVMe: Use an IDA to allocate minor numbers
      NVMe: Handle failures from memory allocations in nvme_setup_prps
      NVMe: Add a few calling convention notes
      NVMe: Version 0.6
      NVMe: Return real error from nvme_create_queue
      NVMe: Add the nvme thread to the wait queue before waking it up
      NVMe: Rework ioctls
      Fix bug in NVME_IOCTL_SUBMIT_IO
      NVMe: Correct sg list setup in nvme_map_user_pages
      NVMe: Fix memory leak in nvme_dev_add()
      NVMe: Create nvme_identify and nvme_get_features functions
      NVMe: Don't probe namespace 0
      NVMe: Version 0.7
      NVMe: Implement doorbell stride capability
      NVMe: Update Identify Controller data structure
      NVMe: Simplify completion handling
      NVMe: Change get_nvmeq to take a dev instead of a namespace
      NVMe: Change nvme_completion_fn to take a dev
      NVMe: Merge the nvme_bio and nvme_prp data structures
      NVMe: Rename IO_TIMEOUT to NVME_IO_TIMEOUT
      NVMe: Fix DMA mapping for admin commands
      NVMe: Mark the end of the sg list
      NVMe: Simplify nvme_unmap_user_pages
      NVMe: Set queue flags correctly
      NVMe: Version 0.8
      NVMe: Set number of queues correctly

Nisheeth Bhat (2):
      NVMe: Fix calls to dma_unmap_sg
      Fix calculation of number of pages in a PRP List

Shane Michael Matthews (3):
      NVMe: Enable and disable the PCI device
      NVMe: Disable the device before we write the admin queues
      NVMe: Initial PRP List support

 Documentation/ioctl/ioctl-number.txt |    1 +
 drivers/block/Kconfig                |   11 +
 drivers/block/Makefile               |    1 +
 drivers/block/nvme.c                 | 1745 ++++++++++++++++++++++++++++++++++
 drivers/xen/biomerge.c               |    1 +
 include/linux/nvme.h                 |  434 +++++++++
 6 files changed, 2193 insertions(+), 0 deletions(-)
 create mode 100644 drivers/block/nvme.c
 create mode 100644 include/linux/nvme.h

WARNING: multiple messages have this Message-ID (diff)
From: Matthew Wilcox <willy@linux.intel.com>
To: Linus Torvalds <torvalds@linux-foundation.org>
Cc: linux-nvme@lists.infradead.org, linux-kernel@vger.kernel.org
Subject: [GIT PULL] NVM Express driver
Date: Wed, 18 Jan 2012 09:39:44 -0500	[thread overview]
Message-ID: <20120118143944.GA14291@linux.intel.com> (raw)


Hi Linus,

Please can you pull the NVM Express driver?

The only code touched outside the driver is adding an EXPORT_SYMBOL for
xen_biovec_phys_mergeable which was approved by Jens here:
https://lkml.org/lkml/2011/9/21/185

The following changes since commit ccb19d263fd1c9e34948e2158c53eacbff369344:

  Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net (2012-01-17 22:26:41 -0800)

are available in the git repository at:

  git://git.infradead.org/users/willy/linux-nvme.git master

Krzysztof Wierzbicki (1):
      NVMe: Update admin opcodes to match the 1.0RC spec

Matthew Wilcox (99):
      Xen: Export xen_biovec_phys_mergeable
      NVMe: New driver
      NVMe: Factor out queue_request_irq()
      NVMe: Reduce set_queue_count arguments by one
      NVMe: Implement per-CPU queues
      NVMe: Rename 'cycle' to 'phase'
      NVMe: Fix admin IRQ claim on real hardware
      NVMe: Use PRP2 for the nvme_identify ioctl
      NVMe: Make nvme_common_command more featureful
      NVMe: Add nvme_setup_prps()
      NVMe: Zero the command before we send it
      NVMe: Change NVME_IOCTL_GET_RANGE_TYPE to return all the ranges
      NVMe: Create nvme_map_user_pages() and nvme_unmap_user_pages()
      NVMe: Add NVME_IOCTL_SUBMIT_IO
      NVMe: Read the model, serial & firmware rev from the controller
      NVMe: Remove 'node' from nvme_dev
      NVMe: Check returns from nvme_alloc_queue()
      NVMe: Enable device DMA
      NVMe: Allow queues to be allocated above 4GB
      NVMe: Request I/O regions
      NVMe: Move sysfs entries to the right place
      NVMe: Add remaining status codes
      NVMe: Add download / activate firmware ioctls
      NVMe: Release 0.2
      NVMe: Allow fatal signals to interrupt I/O
      NVMe: Call put_nvmeq() before calling nvme_submit_sync_cmd()
      NVMe: Add a module parameter to use a threaded interrupt
      NVMe: Use a symbolic name to represent cancelled commands instead of 0
      NVMe: Detect commands that are completed twice
      NVMe: Detect command IDs completing that are out of range
      NVMe: Need to lock queue during interrupt handling
      NVMe: Record the timeout for each command
      NVMe: Handle the congestion list a little better
      NVMe: Renumber the special context values
      NVMe: Advance the sg pointer when filling in an sg list
      NVMe: Rename nvme_req_info to nvme_bio
      NVMe: Switch to use DMA Pool API
      NVMe: Optimise memory usage for I/Os between 4k and 128k
      NVMe: Pass the nvme_dev to nvme_free_prps and nvme_setup_prps
      NVMe: Check for DMA mapping failure
      NVMe: Handle physical merging of bvec entries
      NVMe: Update BAR structure to match the current spec
      NVMe: Handle failures differently in nvme_submit_bio_queue()
      NVMe: Add a kthread to handle the congestion list
      NVMe: Release 0.3
      NVMe: Remove setting of 'flags' in rw command
      NVMe: Rename nr_queues to nr_io_queues
      NVMe: Let the kthread take care of devices earlier
      NVMe: Correct SQ doorbell semantics
      NVMe: Mark CMD_CTX_CANCELLED as being unlikely
      NVMe: Implement Flush
      NVMe: Handle bios that contain non-virtually contiguous addresses
      NVMe: Fix discontiguous accesses
      NVMe: Reduce maximum queue depth by 1
      NVMe: Version 0.4
      NVMe: Convert comments to kernel-doc notation
      NVMe: Fix comment formatting
      NVMe: Remove outdated comments
      NVMe: Fix interpretation of 'Number of Namespaces' field
      NVMe: Fix off-by-one when filling in PRP lists
      NVMe: Remove the kthread from the wait queue
      NVMe: Simplify queue lookup
      NVMe: Add compat_ioctl
      NVMe: Correct the definitions of two ioctls
      NVMe: Change the definition of nvme_user_io
      NVMe: Version 0.5
      NVMe: Correct the Controller Configuration settings
      NVMe: Fix warning in free_irq
      NVMe: Time out initialisation after a few seconds
      NVMe: Fix bug in error handling
      NVMe: Rename cancel_cmdid_data to cancel_cmdid
      NVMe: Add support for timing out I/Os
      NVMe: Add include of delay.h for msleep
      NVMe: Use an IDA to allocate minor numbers
      NVMe: Handle failures from memory allocations in nvme_setup_prps
      NVMe: Add a few calling convention notes
      NVMe: Version 0.6
      NVMe: Return real error from nvme_create_queue
      NVMe: Add the nvme thread to the wait queue before waking it up
      NVMe: Rework ioctls
      Fix bug in NVME_IOCTL_SUBMIT_IO
      NVMe: Correct sg list setup in nvme_map_user_pages
      NVMe: Fix memory leak in nvme_dev_add()
      NVMe: Create nvme_identify and nvme_get_features functions
      NVMe: Don't probe namespace 0
      NVMe: Version 0.7
      NVMe: Implement doorbell stride capability
      NVMe: Update Identify Controller data structure
      NVMe: Simplify completion handling
      NVMe: Change get_nvmeq to take a dev instead of a namespace
      NVMe: Change nvme_completion_fn to take a dev
      NVMe: Merge the nvme_bio and nvme_prp data structures
      NVMe: Rename IO_TIMEOUT to NVME_IO_TIMEOUT
      NVMe: Fix DMA mapping for admin commands
      NVMe: Mark the end of the sg list
      NVMe: Simplify nvme_unmap_user_pages
      NVMe: Set queue flags correctly
      NVMe: Version 0.8
      NVMe: Set number of queues correctly

Nisheeth Bhat (2):
      NVMe: Fix calls to dma_unmap_sg
      Fix calculation of number of pages in a PRP List

Shane Michael Matthews (3):
      NVMe: Enable and disable the PCI device
      NVMe: Disable the device before we write the admin queues
      NVMe: Initial PRP List support

 Documentation/ioctl/ioctl-number.txt |    1 +
 drivers/block/Kconfig                |   11 +
 drivers/block/Makefile               |    1 +
 drivers/block/nvme.c                 | 1745 ++++++++++++++++++++++++++++++++++
 drivers/xen/biomerge.c               |    1 +
 include/linux/nvme.h                 |  434 +++++++++
 6 files changed, 2193 insertions(+), 0 deletions(-)
 create mode 100644 drivers/block/nvme.c
 create mode 100644 include/linux/nvme.h

             reply	other threads:[~2012-01-18 14:39 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-01-18 14:39 Matthew Wilcox [this message]
2012-01-18 14:39 ` [GIT PULL] NVM Express driver Matthew Wilcox

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=20120118143944.GA14291@linux.intel.com \
    --to=willy@linux.intel.com \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.