<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel/linux.git/drivers/scsi/atari_scsi.c, branch v6.6.131</title>
<subtitle>Linux kernel stable tree (mirror)</subtitle>
<id>https://git.radix-linux.su/kernel/linux.git/atom?h=v6.6.131</id>
<link rel='self' href='https://git.radix-linux.su/kernel/linux.git/atom?h=v6.6.131'/>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/'/>
<updated>2022-02-23T02:11:03+00:00</updated>
<entry>
<title>scsi: NCR5380: Add SCp members to struct NCR5380_cmd</title>
<updated>2022-02-23T02:11:03+00:00</updated>
<author>
<name>Finn Thain</name>
<email>fthain@linux-m68k.org</email>
</author>
<published>2022-02-18T19:50:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=ff1269cb3d978655fb4f61f87d08a46af9854567'/>
<id>urn:sha1:ff1269cb3d978655fb4f61f87d08a46af9854567</id>
<content type='text'>
This is necessary for the eventual removal of SCp from struct scsi_cmnd.

Link: https://lore.kernel.org/r/20220218195117.25689-9-bvanassche@acm.org
Cc: Michael Schmitz &lt;schmitzmic@gmail.com&gt;
Cc: Ondrej Zary &lt;linux@zary.sk&gt;
Suggested-by: Bart Van Assche &lt;bvanassche@acm.org&gt;
Signed-off-by: Finn Thain &lt;fthain@linux-m68k.org&gt;
Signed-off-by: Bart Van Assche &lt;bvanassche@acm.org&gt;
Signed-off-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
</content>
</entry>
<entry>
<title>scsi: NCR5380: Remove the NCR5380_CMD_SIZE macro</title>
<updated>2022-02-23T02:11:03+00:00</updated>
<author>
<name>Bart Van Assche</name>
<email>bvanassche@acm.org</email>
</author>
<published>2022-02-18T19:50:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=cd614642e1a24e501633d5aea79c1bafb10d9f36'/>
<id>urn:sha1:cd614642e1a24e501633d5aea79c1bafb10d9f36</id>
<content type='text'>
This makes it easier to find users of the NCR5380_cmd data structure with
'grep'.

Link: https://lore.kernel.org/r/20220218195117.25689-8-bvanassche@acm.org
Cc: Finn Thain &lt;fthain@telegraphics.com.au&gt;
Cc: Hannes Reinecke &lt;hare@suse.com&gt;
Cc: Ondrej Zary &lt;linux@rainbow-software.org&gt;
Cc: Michael Schmitz &lt;schmitzmic@gmail.com&gt;
Reviewed-by: Johannes Thumshirn &lt;johannes.thumshirn@wdc.com&gt;
Reviewed-by: Himanshu Madhani &lt;himanshu.madhani@oracle.com&gt;
Reviewed-by: Hannes Reinecke &lt;hare@suse.de&gt;
Acked-by: Finn Thain &lt;fthain@linux-m68k.org&gt;
Signed-off-by: Bart Van Assche &lt;bvanassche@acm.org&gt;
Signed-off-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
</content>
</entry>
<entry>
<title>scsi: atari_scsi: Fix race condition between .queuecommand and EH</title>
<updated>2020-11-24T03:12:09+00:00</updated>
<author>
<name>Finn Thain</name>
<email>fthain@telegraphics.com.au</email>
</author>
<published>2020-11-20T04:39:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=03fe6a640a05c5dc04b6bcdddfb981d015e84ed4'/>
<id>urn:sha1:03fe6a640a05c5dc04b6bcdddfb981d015e84ed4</id>
<content type='text'>
It is possible that bus_reset_cleanup() or .eh_abort_handler could be
invoked during NCR5380_queuecommand(). If that takes place before the new
command is enqueued and after the ST-DMA "lock" has been acquired, the
ST-DMA "lock" will be released again. This will result in a lost DMA
interrupt and a command timeout. Fix this by excluding EH and interrupt
handlers while the new command is enqueued.

Link: https://lore.kernel.org/r/af25163257796b50bb99d4ede4025cea55787b8f.1605847196.git.fthain@telegraphics.com.au
Tested-by: Michael Schmitz &lt;schmitzmic@gmail.com&gt;
Reviewed-by: Michael Schmitz &lt;schmitzmic@gmail.com&gt;
Signed-off-by: Finn Thain &lt;fthain@telegraphics.com.au&gt;
Signed-off-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
</content>
</entry>
<entry>
<title>scsi: atari_scsi: sun3_scsi: Set sg_tablesize to 1 instead of SG_NONE</title>
<updated>2019-11-13T03:21:34+00:00</updated>
<author>
<name>Finn Thain</name>
<email>fthain@telegraphics.com.au</email>
</author>
<published>2019-11-02T01:06:54+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=79172ab20bfd8437b277254028efdb68484e2c21'/>
<id>urn:sha1:79172ab20bfd8437b277254028efdb68484e2c21</id>
<content type='text'>
Since the scsi subsystem adopted the blk-mq API, a host with zero
sg_tablesize crashes with a NULL pointer dereference.

blk_queue_max_segments: set to minimum 1
scsi 0:0:0:0: Direct-Access     QEMU     QEMU HARDDISK    2.5+ PQ: 0 ANSI: 5
scsi target0:0:0: Beginning Domain Validation
scsi target0:0:0: Domain Validation skipping write tests
scsi target0:0:0: Ending Domain Validation
blk_queue_max_segments: set to minimum 1
scsi 0:0:1:0: Direct-Access     QEMU     QEMU HARDDISK    2.5+ PQ: 0 ANSI: 5
scsi target0:0:1: Beginning Domain Validation
scsi target0:0:1: Domain Validation skipping write tests
scsi target0:0:1: Ending Domain Validation
blk_queue_max_segments: set to minimum 1
scsi 0:0:2:0: CD-ROM            QEMU     QEMU CD-ROM      2.5+ PQ: 0 ANSI: 5
scsi target0:0:2: Beginning Domain Validation
scsi target0:0:2: Domain Validation skipping write tests
scsi target0:0:2: Ending Domain Validation
blk_queue_max_segments: set to minimum 1
blk_queue_max_segments: set to minimum 1
blk_queue_max_segments: set to minimum 1
blk_queue_max_segments: set to minimum 1
sr 0:0:2:0: Power-on or device reset occurred
sd 0:0:0:0: Power-on or device reset occurred
sd 0:0:1:0: Power-on or device reset occurred
sd 0:0:0:0: [sda] 10485762 512-byte logical blocks: (5.37 GB/5.00 GiB)
sd 0:0:0:0: [sda] Write Protect is off
sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
Unable to handle kernel NULL pointer dereference at virtual address (ptrval)
Oops: 00000000
Modules linked in:
PC: [&lt;001cd874&gt;] blk_mq_free_request+0x66/0xe2
SR: 2004  SP: (ptrval)  a2: 00874520
d0: 00000000    d1: 00000000    d2: 009ba800    d3: 00000000
d4: 00000000    d5: 08000002    a0: 0087be68    a1: 009a81e0
Process kworker/u2:2 (pid: 15, task=(ptrval))
Frame format=7 eff addr=0000007a ssw=0505 faddr=0000007a
wb 1 stat/addr/data: 0000 00000000 00000000
wb 2 stat/addr/data: 0000 00000000 00000000
wb 3 stat/addr/data: 0000 0000007a 00000000
push data: 00000000 00000000 00000000 00000000
Stack from 0087bd98:
        00000002 00000000 0087be72 009a7820 0087bdb4 001c4f6c 009a7820 0087bdd4
        0024d200 009a7820 0024d0dc 0087be72 009baa00 0087be68 009a5000 0087be7c
        00265d10 009a5000 0087be72 00000003 00000000 00000000 00000000 0087be68
        00000bb8 00000005 00000000 00000000 00000000 00000000 00265c56 00000000
        009ba60c 0036ddf4 00000002 ffffffff 009baa00 009ba600 009a50d6 0087be74
        00227ba0 009baa08 00000001 009baa08 009ba60c 0036ddf4 00000000 00000000
Call Trace: [&lt;001c4f6c&gt;] blk_put_request+0xe/0x14
 [&lt;0024d200&gt;] __scsi_execute+0x124/0x174
 [&lt;0024d0dc&gt;] __scsi_execute+0x0/0x174
 [&lt;00265d10&gt;] sd_revalidate_disk+0xba/0x1f02
 [&lt;00265c56&gt;] sd_revalidate_disk+0x0/0x1f02
 [&lt;0036ddf4&gt;] strlen+0x0/0x22
 [&lt;00227ba0&gt;] device_add+0x3da/0x604
 [&lt;0036ddf4&gt;] strlen+0x0/0x22
 [&lt;00267e64&gt;] sd_probe+0x30c/0x4b4
 [&lt;0002da44&gt;] process_one_work+0x0/0x402
 [&lt;0022b978&gt;] really_probe+0x226/0x354
 [&lt;0022bc34&gt;] driver_probe_device+0xa4/0xf0
 [&lt;0002da44&gt;] process_one_work+0x0/0x402
 [&lt;0022bcd0&gt;] __driver_attach_async_helper+0x50/0x70
 [&lt;00035dae&gt;] async_run_entry_fn+0x36/0x130
 [&lt;0002db88&gt;] process_one_work+0x144/0x402
 [&lt;0002e1aa&gt;] worker_thread+0x0/0x570
 [&lt;0002e29a&gt;] worker_thread+0xf0/0x570
 [&lt;0002e1aa&gt;] worker_thread+0x0/0x570
 [&lt;003768d8&gt;] schedule+0x0/0xb8
 [&lt;0003f58c&gt;] __init_waitqueue_head+0x0/0x12
 [&lt;00033e92&gt;] kthread+0xc2/0xf6
 [&lt;000331e8&gt;] kthread_parkme+0x0/0x4e
 [&lt;003768d8&gt;] schedule+0x0/0xb8
 [&lt;00033dd0&gt;] kthread+0x0/0xf6
 [&lt;00002c10&gt;] ret_from_kernel_thread+0xc/0x14
Code: 0280 0006 0800 56c0 4400 0280 0000 00ff &lt;52b4&gt; 0c3a 082b 0006 0013 6706 2042 53a8 00c4 4ab9 0047 3374 6640 202d 000c 670c
Disabling lock debugging due to kernel taint

Avoid this by setting sg_tablesize = 1.

Link: https://lore.kernel.org/r/4567bcae94523b47d6f3b77450ba305823bca479.1572656814.git.fthain@telegraphics.com.au
Reported-and-tested-by: Michael Schmitz &lt;schmitzmic@gmail.com&gt;
Reviewed-by: Michael Schmitz &lt;schmitzmic@gmail.com&gt;
References: commit 68ab2d76e4be ("scsi: cxlflash: Set sg_tablesize to 1 instead of SG_NONE")
Signed-off-by: Finn Thain &lt;fthain@telegraphics.com.au&gt;
Signed-off-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
</content>
</entry>
<entry>
<title>nvram: Replace nvram_* function exports with static functions</title>
<updated>2019-01-22T09:21:43+00:00</updated>
<author>
<name>Finn Thain</name>
<email>fthain@telegraphics.com.au</email>
</author>
<published>2019-01-15T04:18:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=1278cf66cf4b1c3d30e311200b50c45457c92baa'/>
<id>urn:sha1:1278cf66cf4b1c3d30e311200b50c45457c92baa</id>
<content type='text'>
Replace nvram_* functions with static functions in nvram.h. These will
become wrappers for struct nvram_ops method calls.

This patch effectively disables existing NVRAM functionality so as to
allow the rest of the series to be bisected without build failures.
That functionality is gradually re-implemented in subsequent patches.

Replace the sole validate-checksum-and-read-byte sequence with a call to
nvram_read() which will gain the same semantics in subsequent patches.

Remove unused exports.

Acked-by: Geert Uytterhoeven &lt;geert@linux-m68k.org&gt;
Signed-off-by: Finn Thain &lt;fthain@telegraphics.com.au&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>scsi/atari_scsi: Don't select CONFIG_NVRAM</title>
<updated>2019-01-22T09:21:43+00:00</updated>
<author>
<name>Finn Thain</name>
<email>fthain@telegraphics.com.au</email>
</author>
<published>2019-01-15T04:18:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=83d2aed4440c47acc813abeac4acf4390cb40a8c'/>
<id>urn:sha1:83d2aed4440c47acc813abeac4acf4390cb40a8c</id>
<content type='text'>
On powerpc, setting CONFIG_NVRAM=n builds a kernel with no NVRAM support.
Setting CONFIG_NVRAM=m enables the /dev/nvram misc device module without
enabling NVRAM support in drivers. Setting CONFIG_NVRAM=y enables the
misc device (built-in) and also enables NVRAM support in drivers.

m68k shares the valkyriefb driver with powerpc, and since that driver uses
NVRAM, it is affected by CONFIG_ATARI_SCSI, because of the use of
"select NVRAM". We can avoid the "select" here, but drivers still have
to interpret the CONFIG_NVRAM symbol consistently regardless of platform.

In this patch and the subsequent fbdev driver patch, the convention is
adopted across all relevant platforms whereby NVRAM functionality gets
enabled in a given device driver when the nvram misc device is built-in
or when both drivers are modules.

Acked-by: Michael Schmitz &lt;schmitzmic@gmail.com&gt;
Signed-off-by: Finn Thain &lt;fthain@telegraphics.com.au&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>scsi: remove the use_clustering flag</title>
<updated>2018-12-19T04:19:21+00:00</updated>
<author>
<name>Christoph Hellwig</name>
<email>hch@lst.de</email>
</author>
<published>2018-12-13T15:17:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=4af14d113bcf95c12d1462ba623b7e7117bd3fb3'/>
<id>urn:sha1:4af14d113bcf95c12d1462ba623b7e7117bd3fb3</id>
<content type='text'>
The same effects can be achieved by setting the dma_boundary to
PAGE_SIZE - 1 and the max_segment_size to PAGE_SIZE, so shift those
settings into the drivers.  Note that in many cases the setting might
be bogus, but this keeps the status quo.

[mkp: fix myrs and myrb]

Signed-off-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: NCR5380: Move bus reset to host reset</title>
<updated>2017-08-25T21:21:11+00:00</updated>
<author>
<name>Hannes Reinecke</name>
<email>hare@suse.de</email>
</author>
<published>2017-08-25T11:57:10+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=12e5fc665a2d8380c1551291a0d7684fc181b02d'/>
<id>urn:sha1:12e5fc665a2d8380c1551291a0d7684fc181b02d</id>
<content type='text'>
The bus reset handler really is a host reset, so move it to
eh_bus_reset_handler.

Signed-off-by: Hannes Reinecke &lt;hare@suse.com&gt;
Acked-by: Finn Thain &lt;fthain@telegraphics.com.au&gt;
Reviewed-by: Christoph Hellwig &lt;hch@lst.de&gt;
Reviewed-by: Johannes Thumshirn &lt;jthumshirn@suse.de&gt;
Signed-off-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
</content>
</entry>
<entry>
<title>scsi: atari_scsi: Use m68k_realnum_memory for FastRAM test</title>
<updated>2017-06-13T00:48:08+00:00</updated>
<author>
<name>Michael Schmitz</name>
<email>schmitzmic@gmail.com</email>
</author>
<published>2017-06-05T07:37:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=6ff8a3b2a1e9ad5f0b559e7ef3b991918ef1caf9'/>
<id>urn:sha1:6ff8a3b2a1e9ad5f0b559e7ef3b991918ef1caf9</id>
<content type='text'>
m68k_num_memory is unsuitable to test for the presence of FastRAM on
CT60 if the kernel is located in FastRAM: in arch/m68k/mm/motorola.c the
ST-RAM chunk is skipped and m68k_num_memory is decremented in this
case. m68k_realnum_memory still contains the actual number of RAM chunks
so use that.

Signed-off-by: Michael Schmitz &lt;schmitzmic@gmail.com&gt;
Tested-by: Christian T. Steigies &lt;cts@debian.org&gt;
Signed-off-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
</content>
</entry>
<entry>
<title>scsi: atari_scsi: Reset DMA during bus reset only under ST-DMA lock</title>
<updated>2017-02-01T02:39:22+00:00</updated>
<author>
<name>Finn Thain</name>
<email>fthain@telegraphics.com.au</email>
</author>
<published>2017-01-15T23:50:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=546a4d1812b647fddad58a4416c7a44c27bb0499'/>
<id>urn:sha1:546a4d1812b647fddad58a4416c7a44c27bb0499</id>
<content type='text'>
The atari_scsi driver should not access Falcon DMA chip registers unless
it has acquired exclusive access to that chip. If the driver doesn't
have exclusive access then there's no need for a DMA reset as there are
no scsi commands in progress.

Signed-off-by: Finn Thain &lt;fthain@telegraphics.com.au&gt;
Tested-by: Ondrej Zary &lt;linux@rainbow-software.org&gt;
Tested-by: Michael Schmitz &lt;schmitzmic@gmail.com&gt;
Signed-off-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
</content>
</entry>
</feed>
