From: Linus Torvalds Date: Tue, 13 Dec 2016 21:26:24 +0000 (-0800) Subject: Merge branch 'for-4.10' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=b92e09bb5bf4db65aeb8ca0094fdd5142ed54451;p=linux-beck.git Merge branch 'for-4.10' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata 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 --- b92e09bb5bf4db65aeb8ca0094fdd5142ed54451 diff --cc block/blk-core.c index bd642a43b98b,361b1b965d89..61ba08c58b64 --- a/block/blk-core.c +++ b/block/blk-core.c @@@ -1154,11 -1153,11 +1154,12 @@@ static struct request *__get_request(st blk_rq_init(q, rq); blk_rq_set_rl(rq, rl); + blk_rq_set_prio(rq, ioc); - req_set_op_attrs(rq, op, op_flags | REQ_ALLOCED); + 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);