Re: [hatari-devel] Wrong MODE SENSE data length for page code 0x3f |
[ Thread Index |
Date Index
| More lists.tuxfamily.org/hatari-devel Archives
]
Hi Uwe,
On 26.10.2024 1.04, Uwe Seimet wrote:
will definitely cause issues with an OS that expects SCSI, especially
SCSI-2, drives. Sending a different number of bytes than the initiator
requested can easily cause issues. If 0 bytes are requested, for instance,
this means 0 bytes have to be transferred, not 4 bytes.
It looks to me as if this code tries to simulate the behavior of old drives
like SH/Megafile or SASI drives, but for Linux this will probably not work.
Maybe it still makes sense to log INFO message?
"INFO: REQUEST SENSE max size (%d) differs from what old SCSI-1 drives
use (4-22)"
The bus reset you can see in the log is very likely caused by a mismatch of
the number of bytes expected/requested and the number actually returned by
Hatari.
I guess that (at least for a test) removing this code and returning the
proper number of bytes will resolve some of the Linux issues with SCSI
drives.
The only change from my patch is log for each of those SENSE requests
changing like this:
-WARN : HDC: *** Strange REQUEST SENSE ***!
-DEBUG: raw_scsi: data in 22 bytes waiting
-DEBUG: raw_scsi: data in finished, 22 bytes: status phase
+DEBUG: raw_scsi: data in 96 bytes waiting
+DEBUG: raw_scsi: data in finished, 96 bytes: status phase
There are still as many of them, and boot ends to same failure.
Maybe it's related more to the non-existing partition table?
- Eero