Merge branch 'for-4.10' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata
authorLinus Torvalds <torvalds@linux-foundation.org>
Tue, 13 Dec 2016 21:26:24 +0000 (13:26 -0800)
committerLinus Torvalds <torvalds@linux-foundation.org>
Tue, 13 Dec 2016 21:26:24 +0000 (13:26 -0800)
Pull libata updates from Tejun Heo:

 - Adam added opt-in ATA command priority support.

 - There are machines which hide multiple nvme devices behind an ahci
   BAR. Dan Williams proposed a solution to force-switch the mode but
   deemed too hackishd. People are gonna discuss the proper way to
   handle the situation in nvme standard meetings. For now, detect and
   warn about the situation.

 - Low level driver specific changes.

Christoph Hellwig pipes in about the hidden nvme warning:
 "I wish that was the case. We've pretty much agreed that we'll want to
  implement it as a virtual PCIe root bridge, similar to Intels other
  'innovation' VMD that we work around that way.

  But Intel management has apparently decided that they don't want to
  spend more cycles on this now that Lenovo has an optional BIOS that
  doesn't force this broken mode anymore, and no one outside of Intel
  has enough information to implement something like this.

  So for now I guess this warning is it, until Intel reconsideres and
  spends resources on fixing up the damage their Chipset people caused"

* 'for-4.10' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata:
  ahci: warn about remapped NVMe devices
  ahci-remap.h: add ahci remapping definitions
  nvme: move NVMe class code to pci_ids.h
  pata: imx: support controller modes up to PIO4
  pata: imx: add support of setting timings for PIO modes
  pata: imx: set controller PIO mode with .set_piomode callback
  pata: imx: sort headers out
  ata: set ncq_prio_enabled iff device has support
  ata: ATA Command Priority Disabled By Default
  ata: Enabling ATA Command Priorities
  block: Add iocontext priority to request
  ahci: qoriq: added ls1046a platform support

1  2 
block/blk-core.c
drivers/ata/ahci.c
drivers/ata/libata-core.c
drivers/ata/libata-scsi.c
drivers/nvme/host/pci.c
include/linux/blkdev.h

index bd642a43b98b13fa95911677c60e4465e15d59e9,361b1b965d890f166835285c31803b6a42b954a5..61ba08c58b649b54fdfbc4e06c7e1b11b015512a
@@@ -1154,11 -1153,11 +1154,12 @@@ static struct request *__get_request(st
  
        blk_rq_init(q, rq);
        blk_rq_set_rl(rq, rl);
 -      req_set_op_attrs(rq, op, op_flags | REQ_ALLOCED);
+       blk_rq_set_prio(rq, ioc);
 +      rq->cmd_flags = op;
 +      rq->rq_flags = rq_flags;
  
        /* init elvpriv */
 -      if (op_flags & REQ_ELVPRIV) {
 +      if (rq_flags & RQF_ELVPRIV) {
                if (unlikely(et->icq_cache && !icq)) {
                        if (ioc)
                                icq = ioc_create_icq(ioc, q, gfp_mask);
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge