Port-mips archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

wd33c93 cleanup patch set



hi!

I have four patches I'd like to be reviewed and considered for
inclusion. There's one bug and some clean-ups based on what I'm doing
in my local branch.

* patch-1 fixes a panic if the timed out command isn't currently
active. This can happen if the device disconnects mid-transfer and the
controller is then idle (or active on another transfer to another
device.)

* patch-2 adds a string parameter to wd33c93_error() so the caller can
specify what the SCSI error was.

* patch-3 adds a new debug flag to log submitted SCSI requests to the
driver with some details about what the underlying request is (which i
found useful for debugging transfer vs sync/async setup stuff.)

* patch-4 splits wd33c93_timeout() into wd33c93_timeout() and
wd33c93_timeout_callback(). It's being used both as a timeout and as a
callback, and whilst tinkering with error handling locally I found it
was useful to have them split so I could do stuff like abort/complete
the transfer if it's a timeout as there's no subsequent code in that
path that would actually complete the transfer.

I still have an outstanding question on the kern list about SCSI
timeouts and where they're supposed to be handled - for patch-4, I
don't think the scsipi layer is running its own timeouts on transfers
- it's asking the driver to do it - and if the driver hits the timeout
but never completes the transfer it will just be hung/lost for good.

Thanks!



-adrian

Attachment: 20251201-netbsd-wd33c91-patch-4.diff
Description: Binary data

Attachment: 20251201-netbsd-wd33c91-patch-1.diff
Description: Binary data

Attachment: 20251201-netbsd-wd33c91-patch-3.diff
Description: Binary data

Attachment: 20251201-netbsd-wd33c91-patch-2.diff
Description: Binary data



Home | Main Index | Thread Index | Old Index