diff options
author | Nicholas Bellinger <nab@linux-iscsi.org> | 2016-11-03 23:06:53 -0700 |
---|---|---|
committer | Nicholas Bellinger <nab@linux-iscsi.org> | 2017-03-07 22:15:19 -0800 |
commit | a04e54f2c35823ca32d56afcd5cea5b783e2f51a (patch) | |
tree | 631bf922978866bf34f0405ad62f72229257f85e /drivers/staging/vc04_services | |
parent | c1ae3cfa0e89fa1a7ecc4c99031f5e9ae99d9201 (diff) |
target/pscsi: Fix TYPE_TAPE + TYPE_MEDIMUM_CHANGER export
The following fixes a divide by zero OOPs with TYPE_TAPE
due to pscsi_tape_read_blocksize() failing causing a zero
sd->sector_size being propigated up via dev_attrib.hw_block_size.
It also fixes another long-standing bug where TYPE_TAPE and
TYPE_MEDIMUM_CHANGER where using pscsi_create_type_other(),
which does not call scsi_device_get() to take the device
reference. Instead, rename pscsi_create_type_rom() to
pscsi_create_type_nondisk() and use it for all cases.
Finally, also drop a dump_stack() in pscsi_get_blocks() for
non TYPE_DISK, which in modern target-core can get invoked
via target_sense_desc_format() during CHECK_CONDITION.
Reported-by: Malcolm Haak <insanemal@gmail.com>
Cc: <stable@vger.kernel.org>
Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
Diffstat (limited to 'drivers/staging/vc04_services')
0 files changed, 0 insertions, 0 deletions