On Fri, Nov 04, 2022 at 03:57:20PM -0400, James Bottomley wrote: > On Wed, 2022-11-02 at 00:06 +0100, Ahelenia Ziemiańska wrote: > [...] > > @@ -4356,7 +4347,7 @@ static int ncr_queue_command (struct ncb *np, > > struct scsi_cmnd *cmd) > > */ > > > > /* activate this job. */ > > - cp->magic = CCB_MAGIC; > > + cp->busy = true; > > > > /* > > ** insert next CCBs into start queue. > > Are you sure this is just an internal magic number? The way these old > scripts engines used to work is that the CCB array forms a mailbox and > the card continually scans the mailbox to see if it has any work to do. > These magic values are often a signal to the card that the CCB array > contains a valid entry it hasn't seen and it should work on it, so the > card might be expecting to see this full 32 bit value. AFAICT this is an internal flag: in FreeBSD, whence this is copied, this driver is introduced in 37bd2c9c33d9684c0bf650e02579ebb329724d6a[1], and AFAICT it's used in exactly the same way as it is here; the manual[2] doesn't mention it at all; neither do the scripts; and the layout is vastly different between there and current Linux; so I'm happy to conclude it's not used by the device, I think? 1: https://cgit.freebsd.org/src/commit/?id=37bd2c9c33d9684c0bf650e02579ebb329724d6a 2: http://bitsavers.trailing-edge.com/components/ncr_symbios/scsi/53C810/53C810_PCI-SCSI_IO_Processor_Data_Manual_May1993.pdf
Attachment:
signature.asc
Description: PGP signature