<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/drivers/scsi/hosts.c, branch linux-4.16.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-4.16.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-4.16.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2018-03-15T03:31:13Z</updated>
<entry>
<title>scsi: core: introduce force_blk_mq</title>
<updated>2018-03-15T03:31:13Z</updated>
<author>
<name>Ming Lei</name>
</author>
<published>2018-03-13T09:42:41Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=2f31115e940c4afd49b99c33123534e2ac924ffb'/>
<id>urn:sha1:2f31115e940c4afd49b99c33123534e2ac924ffb</id>
<content type='text'>
This patch introduces 'force_blk_mq' to the scsi_host_template so that
drivers that have no desire to support the legacy I/O path can signal
blk-mq only support.

[mkp: commit desc]

Cc: Omar Sandoval &lt;osandov@fb.com&gt;,
Cc: "Martin K. Petersen" &lt;martin.petersen@oracle.com&gt;,
Cc: James Bottomley &lt;james.bottomley@hansenpartnership.com&gt;,
Cc: Christoph Hellwig &lt;hch@lst.de&gt;,
Cc: Don Brace &lt;don.brace@microsemi.com&gt;
Cc: Kashyap Desai &lt;kashyap.desai@broadcom.com&gt;
Cc: Mike Snitzer &lt;snitzer@redhat.com&gt;
Cc: Laurence Oberman &lt;loberman@redhat.com&gt;
Signed-off-by: Ming Lei &lt;ming.lei@redhat.com&gt;
Reviewed-by: Hannes Reinecke &lt;hare@suse.de&gt;
Reviewed-by: Christoph Hellwig &lt;hch@lst.de&gt;
Signed-off-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
</content>
</entry>
<entry>
<title>scsi: core: Avoid that ATA error handling can trigger a kernel hang or oops</title>
<updated>2018-03-02T01:16:52Z</updated>
<author>
<name>Bart Van Assche</name>
</author>
<published>2018-02-22T19:30:20Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=3be8828fc507cdafe7040a3dcf361a2bcd8e305b'/>
<id>urn:sha1:3be8828fc507cdafe7040a3dcf361a2bcd8e305b</id>
<content type='text'>
Avoid that the recently introduced call_rcu() call in the SCSI core
triggers a double call_rcu() call.

Reported-by: Natanael Copa &lt;ncopa@alpinelinux.org&gt;
Reported-by: Damien Le Moal &lt;damien.lemoal@wdc.com&gt;
References: https://bugzilla.kernel.org/show_bug.cgi?id=198861
Fixes: 3bd6f43f5cb3 ("scsi: core: Ensure that the SCSI error handler gets woken up")
Signed-off-by: Bart Van Assche &lt;bart.vanassche@wdc.com&gt;
Reviewed-by: Damien Le Moal &lt;damien.lemoal@wdc.com&gt;
Tested-by: Damien Le Moal &lt;damien.lemoal@wdc.com&gt;
Cc: Natanael Copa &lt;ncopa@alpinelinux.org&gt;
Cc: Damien Le Moal &lt;damien.lemoal@wdc.com&gt;
Cc: Alexandre Oliva &lt;oliva@gnu.org&gt;
Cc: Pavel Tikhomirov &lt;ptikhomirov@virtuozzo.com&gt;
Cc: Hannes Reinecke &lt;hare@suse.com&gt;
Cc: Johannes Thumshirn &lt;jthumshirn@suse.de&gt;
Cc: &lt;stable@vger.kernel.org&gt;
Signed-off-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
</content>
</entry>
<entry>
<title>scsi: core: Ensure that the SCSI error handler gets woken up</title>
<updated>2017-12-08T02:06:31Z</updated>
<author>
<name>Bart Van Assche</name>
</author>
<published>2017-12-04T18:06:23Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=3bd6f43f5cb3714f70c591514f344389df593501'/>
<id>urn:sha1:3bd6f43f5cb3714f70c591514f344389df593501</id>
<content type='text'>
If scsi_eh_scmd_add() is called concurrently with
scsi_host_queue_ready() while shost-&gt;host_blocked &gt; 0 then it can
happen that neither function wakes up the SCSI error handler. Fix
this by making every function that decreases the host_busy counter
wake up the error handler if necessary and by protecting the
host_failed checks with the SCSI host lock.

Reported-by: Pavel Tikhomirov &lt;ptikhomirov@virtuozzo.com&gt;
References: https://marc.info/?l=linux-kernel&amp;m=150461610630736
Fixes: commit 746650160866 ("scsi: convert host_busy to atomic_t")
Signed-off-by: Bart Van Assche &lt;bart.vanassche@wdc.com&gt;
Reviewed-by: Pavel Tikhomirov &lt;ptikhomirov@virtuozzo.com&gt;
Tested-by: Stuart Hayes &lt;stuart.w.hayes@gmail.com&gt;
Cc: Konstantin Khorenko &lt;khorenko@virtuozzo.com&gt;
Cc: Stuart Hayes &lt;stuart.w.hayes@gmail.com&gt;
Cc: Pavel Tikhomirov &lt;ptikhomirov@virtuozzo.com&gt;
Cc: Christoph Hellwig &lt;hch@lst.de&gt;
Cc: Hannes Reinecke &lt;hare@suse.com&gt;
Cc: Johannes Thumshirn &lt;jthumshirn@suse.de&gt;
Cc: &lt;stable@vger.kernel.org&gt;
Signed-off-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
</content>
</entry>
<entry>
<title>scsi: Remove Scsi_Host.uspace_req_q</title>
<updated>2017-09-05T12:18:42Z</updated>
<author>
<name>Bart Van Assche</name>
</author>
<published>2017-08-31T23:59:06Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=7760e223507b5218d0674b5e2e8dc29fea079a89'/>
<id>urn:sha1:7760e223507b5218d0674b5e2e8dc29fea079a89</id>
<content type='text'>
A patch I wrote myself several years ago removed SCSI target support
from the code under drivers/scsi. That patch removed the code that sets
uspace_req_q to a non-NULL value. Hence also remove the code that
depends on uspace_req_q != NULL.

References: commit 066465251303 ("tgt: removal")
Signed-off-by: Bart Van Assche &lt;bart.vanassche@wdc.com&gt;
Cc: Christoph Hellwig &lt;hch@lst.de&gt;
Cc: Hannes Reinecke &lt;hare@suse.de&gt;
Cc: Johannes Thumshirn &lt;jthumshirn@suse.de&gt;
Reviewed-by: Johannes Thumshirn &lt;jthumshirn@suse.de&gt;
Reviewed-by: Christoph Hellwig &lt;hch@lst.de&gt;
Signed-off-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
</content>
</entry>
<entry>
<title>scsi: allocate scsi_cmnd structures as part of struct request</title>
<updated>2017-01-27T22:08:35Z</updated>
<author>
<name>Christoph Hellwig</name>
</author>
<published>2017-01-02T18:55:26Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=e9c787e65c0c36529745be47d490d998b4b6e589'/>
<id>urn:sha1:e9c787e65c0c36529745be47d490d998b4b6e589</id>
<content type='text'>
Rely on the new block layer functionality to allocate additional driver
specific data behind struct request instead of implementing it in SCSI
itѕelf.

Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
Acked-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
Reviewed-by: Hannes Reinecke &lt;hare@suse.com&gt;
Signed-off-by: Jens Axboe &lt;axboe@fb.com&gt;
</content>
</entry>
<entry>
<title>scsi: respect unchecked_isa_dma for blk-mq</title>
<updated>2017-01-27T22:08:35Z</updated>
<author>
<name>Christoph Hellwig</name>
</author>
<published>2017-01-03T05:28:41Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=0a6ac4ee7c21098cb0e41cc4053b9d9ddc9e70a1'/>
<id>urn:sha1:0a6ac4ee7c21098cb0e41cc4053b9d9ddc9e70a1</id>
<content type='text'>
Currently blk-mq always allocates the sense buffer using normal GFP_KERNEL
allocation.  Refactor the cmd pool code to split the cmd and sense allocation
and share the code to allocate the sense buffers as well as the sense buffer
slab caches between the legacy and blk-mq path.

Note that this switches to lazy allocation of the sense slab caches - the
slab caches (not the actual allocations) won't be destroy until the scsi
module is unloaded instead of keeping track of hosts using them.

Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
Reviewed-by: Hannes Reinecke &lt;hare@suse.com&gt;
Acked-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
Signed-off-by: Jens Axboe &lt;axboe@fb.com&gt;
</content>
</entry>
<entry>
<title>Merge tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi</title>
<updated>2016-10-07T16:28:53Z</updated>
<author>
<name>Linus Torvalds</name>
</author>
<published>2016-10-07T16:28:53Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=4dfddf503670d8def0fddb497e628130fc4522a8'/>
<id>urn:sha1:4dfddf503670d8def0fddb497e628130fc4522a8</id>
<content type='text'>
Pull SCSI updates from James Bottomley:
 "This update includes the usual round of major driver updates (hpsa,
  be2iscsi, hisi_sas, zfcp, cxlflash). There's a new incarnation of hpsa
  called smartpqi for which a driver is added, there's some cleanup work
  of the ibm vscsi target and updates to libfc, plus a whole host of
  minor fixes and updates and finally the removal of several ISA drivers
  which seem not to have been used for years"

* tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi: (173 commits)
  scsi: mvsas: Mark symbols static where possible
  scsi: pm8001: Mark symbols static where possible
  scsi: arcmsr: Simplify user_len checking
  scsi: fcoe: fix off by one in eth2fc_speed()
  scsi: dtc: remove from tree
  scsi: t128: remove from tree
  scsi: pas16: remove from tree
  scsi: u14-34f: remove from tree
  scsi: ultrastor: remove from tree
  scsi: in2000: remove from tree
  scsi: wd7000: remove from tree
  scsi: scsi_dh_alua: Fix memory leak in alua_rtpg()
  scsi: lpfc: Mark symbols static where possible
  scsi: hpsa: correct call to hpsa_do_reset
  scsi: ufs: Get a TM service response from the correct offset
  scsi: ibmvfc: Fix I/O hang when port is not mapped
  scsi: megaraid_sas: clean function declarations in megaraid_sas_base.c up
  scsi: ipr: Remove redundant messages at adapter init time
  scsi: ipr: Don't log unnecessary 9084 error details
  scsi: smartpqi: raid bypass lba calculation fix
  ...
</content>
</entry>
<entry>
<title>scsi: Avoid that toggling use_blk_mq triggers a memory leak</title>
<updated>2016-09-27T00:58:42Z</updated>
<author>
<name>Bart Van Assche</name>
</author>
<published>2016-09-22T21:20:54Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=8d58881b995904bf8b150dae69be0829f832e7be'/>
<id>urn:sha1:8d58881b995904bf8b150dae69be0829f832e7be</id>
<content type='text'>
This patch avoids that the following memory leak is triggered if
use_blk_mq is disabled after a SCSI host has been allocated by the
ib_srp driver and before the same SCSI host is freed:

unreferenced object 0xffff8803a168c568 (size 256):
  backtrace:
    [&lt;ffffffff81620c95&gt;] kmemleak_alloc+0x45/0xa0
    [&lt;ffffffff811bb104&gt;] __kmalloc_node+0x1e4/0x400
    [&lt;ffffffff81309fe4&gt;] blk_mq_alloc_tag_set+0xb4/0x230
    [&lt;ffffffff814731b7&gt;] scsi_mq_setup_tags+0xc7/0xd0
    [&lt;ffffffff81469c26&gt;] scsi_add_host_with_dma+0x216/0x2d0
    [&lt;ffffffffa064bef5&gt;] srp_create_target+0xe55/0x13d0 [ib_srp]
    [&lt;ffffffff8143ce23&gt;] dev_attr_store+0x13/0x20
    [&lt;ffffffff8125f030&gt;] sysfs_kf_write+0x40/0x50
    [&lt;ffffffff8125e397&gt;] kernfs_fop_write+0x137/0x1c0
    [&lt;ffffffff811d8c13&gt;] __vfs_write+0x23/0x140
    [&lt;ffffffff811d92e0&gt;] vfs_write+0xb0/0x190
    [&lt;ffffffff811da5b4&gt;] SyS_write+0x44/0xa0
    [&lt;ffffffff8162c8a5&gt;] entry_SYSCALL_64_fastpath+0x18/0xa8

Fixes: 9aa9cc4221f5 ("scsi: remove the disable_blk_mq host flag")
Signed-off-by: Bart Van Assche &lt;bart.vanassche@sandisk.com&gt;
Cc: Christoph Hellwig &lt;hch@lst.de&gt;
Cc: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
Cc: &lt;stable@vger.kernel.org&gt;
Reviewed-by: Christoph Hellwig &lt;hch@lst.de&gt;
Signed-off-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
</content>
</entry>
<entry>
<title>scsi: configure runtime pm before calling device_add in scsi_add_host_with_dma</title>
<updated>2016-08-26T03:39:24Z</updated>
<author>
<name>Heiner Kallweit</name>
</author>
<published>2016-08-03T19:49:03Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=0d5644b7d8daa3c1d91acb4367731f568c9c9469'/>
<id>urn:sha1:0d5644b7d8daa3c1d91acb4367731f568c9c9469</id>
<content type='text'>
Runtime PM should be configured already once we call device_add. See
also the description in this mail thread
https://lists.linuxfoundation.org/pipermail/linux-pm/2009-November/023198.html
or the order of calls e.g. in usb_new_device.

The changed order also helps to avoid scenarios where runtime pm for
&amp;shost-&gt;shost_gendev is activated whilst the parent is suspended,
resulting in error message "runtime PM trying to activate child device
hostx but parent yyy is not active".

In addition properly reverse the runtime pm calls in the error path.

Signed-off-by: Heiner Kallweit &lt;hkallweit1@gmail.com&gt;
Acked-by: Alan Stern &lt;stern@rowland.harvard.edu&gt;
Signed-off-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
</content>
</entry>
<entry>
<title>scsi: remove the disable_blk_mq host flag</title>
<updated>2016-07-15T19:11:20Z</updated>
<author>
<name>Christoph Hellwig</name>
</author>
<published>2016-07-13T04:19:05Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=9aa9cc4221f5154ed93e999662ccfef7b6a82e3e'/>
<id>urn:sha1:9aa9cc4221f5154ed93e999662ccfef7b6a82e3e</id>
<content type='text'>
We've had scsi-mq for 2.5 years now, so we can remove the unused flag to
disable the code on a per-host basis that was put in for unexpected
emergencies during bringup.

Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
Reviewed-by: Bart Van Assche &lt;bart.vanassche@sandisk.com&gt;
Signed-off-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
</content>
</entry>
</feed>
