| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
member of 'struct scsi_xfer' has always been pointed at the 'struct scsi_generic
cmdstore' member of the same instance. So nuke 'cmdstore' and remove the '*'
from cmd. Take the address of cmd as required by the various casts.
No intentional functional change.
luna88k test by aoyama@, sparc64 test by jmatthew@
Identification of 2009's last *cmd use and ok jmatthew@
|
| |
|
|
|
|
|
|
|
|
| |
rarely (if ever) been done.
Fix many printf format errors to calm clang and gcc on amd64, i386,
hppa. Missing #include, complaints if 'option <blah>DEBUG' is used in
config files, etc. All in debug code.
|
|
|
|
|
|
|
| |
fields to struct scsibus_attach_args. Nuke the struct scsi_link *
(saa_sc_link) in scaibus_attach_args.
Explicitly initialize each field in scsibus_attach_args variables.
|
|
|
|
|
|
|
| |
adapter_buswidth, adapter_softc) from struct scsi_link to struct
scsibus_attach_args.
Additional compile tests by jmatthew@ (sparc64) and aoyam@ (luna88k).
|
|
|
|
|
|
|
|
| |
In sparc64 autoconf access 'luns' via sb_luns and 'adapter_buswidth'
via sb_adapter_buswidth.
Removes last post-config uses of the copies of bus related
information in scsi_link.
|
|
|
|
| |
(scsi_link.adapter_softc) to a pointer of a particular softc type.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
the width of the bus it is providing, it should rely on info in its
softc. i.e. not on info in the prototype scsi_link that is passed out
for other bits of the kernel to fiddle with.
Most drivers already do this. Make it so for the laggards iha(4) and
siop(4). Actually use the existing softc value in wd33c93.c.
No intentional functional change.
|
| |
|
|
|
|
| |
immediately before initializing the only field in the struct.
|
| |
|
|
|
|
|
| |
as static value of 16 * PAGE_SIZE (siop). But all end up with a max
i/o size of of MAXPHYS or more. So no need for their *_minphys.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
in drivers. Terse one liners, NULLs instead of 0's, explicitly specify
all members, etc.
Nuke #ifdef notyet blocks related to the scsi_adapter in aic.
No intentional functional change.
ok tedu@
|
| |
|
|
|
|
|
|
|
| |
have any direct symbols used. Tested for indirect use by compiling
amd64/i386/sparc64 kernels.
ok tedu@ deraadt@
|
|
|
|
| |
ok dlg@ mpi@ bcook@ millert@ miod@
|
|
|
|
| |
ok tedu
|
|
|
|
| |
after discussions with beck deraadt kettenis.
|
|
|
|
| |
got ok's for azalia but I don't remember from whom.
|
| |
|
|
|
|
|
|
|
|
| |
the siop command buffers and add dmaable buffers for sense data.
matthew@ found that siop used to try to dma to the xs->sense bufer, which
is not guaranteed to be dma safe.
tested by matthew@ kettenis@
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
are first sent to target/lun, as opposed to failing to allocate a ccb
(which ive already fixed). this moves the allocation and freeing of this
device state in siop into the scsi_probe and scsi_free handlers.
if siop cant allocate memory for a device when the midlayer is about to
probe it, we dont send commands to it. if the midlayer fails to find a
device at that target/lun, it asks siop to free it.
simplifies the io path and avoids work during interrupts.
ok deraadt@
reads good to both marco@ and krw@
|
|
|
|
| |
ok dlg@
|
|
|
|
|
|
|
|
| |
step in elminating 'struct scsi_device' entirely.
Spotted and initial diff from matthew@.
ok matthew@ dlg@ deraadt@ marco@ miod@
|
|
|
|
|
|
|
|
|
|
| |
state when starting an i/o. Necessary as the scsi layer may now
re-submit a completed xs/ccb to the adapter in some error situations.
Fixes panics seen by various people, reproduced and fix tested by
sobrado@.
ok dlg@
|
|
|
|
|
|
|
| |
access to its free ccbs.
ok krw@ beck@ marco@
tested by beck@
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
void. Use XS_NO_CCB error in the scsi command (xs) to report the
NO_CCB condition. Eliminates all SUCCESSFULLY_QUEUED and COMPLETE
confusion and untangles the midlayer from the adapter a bit more.
Eyes and some fixes by miod@
There may be some compile issues on little used (i.e. I don't have
any) drivers but the change is mechanical and thus easy to remedy.
ok dlg@
|
|
|
|
|
|
| |
in the drivers just before calling scsi_done().
ok dlg@ beck@
|
|
|
|
|
|
|
| |
disks actually do queueing correctly. Keep it SIMPLE. Fixes naddy@'s
magic DNES disks on siop even if dlg@'s new midlayer is active.
ok marco@, tested by naddy@.
|
|
|
|
|
|
|
|
|
|
|
| |
TRY_AGAIN_LATER uses with equivalent NO_CCB. Eliminates confusion
between the two as was always intended. buf I/O's that can't be
started get pushed back onto the front of the queue and retried.
Others get sent back to originator as failures. No more epi-cycle
looping inside the SCSI midlayer hoping the problem goes away.
Various testers, no objection from miod@ as vs(4) was tested by
nick@.
|
|
|
|
| |
data buffer.
|
|
|
|
| |
to issue a command.
|
|
|
|
| |
"I'm all for it." marco@ "Yeah" deraadt@
|
|
|
|
| |
sc_print_addr(); ok krw@
|
| |
|
|
|
|
| |
ok martin@, krw@, deraadt@
|
| |
|
| |
|
|
|
|
| |
ok miod@ marco@ deraadt@
|
|
|
|
|
|
| |
- print device name on request sense failure
ok krw@
|
|
|
|
|
|
|
|
| |
to set xs->error to XS_BUSY. So it is pointless and misleading to
set xs->error to XS_TIMEOUT, XS_DRIVER_STUFFUP or XS_BUSY just before
returning TRY_AGAIN_LATER.
No functional change.
|
|
|
|
|
|
|
|
|
| |
close NetBSD PR#31990. Fixes interaction with some problematic drives
found by miod@, martin@, otto@.
Tested martin@ otto@ miod@
ok miod@ mickey@
|
|
|
|
|
|
| |
some controllers
discussed with otto@ and henning@, first noted by miod@
|
|
|
|
|
|
|
|
|
| |
resid instead of assuming it is always 0. From bouyer via NetBSD. Note
we are now sync'd with the latest (1.78 siop.c, 1.37 siop_common.c)
NetBSD code.
Tested by various people over the last year+. Didn't solve any of
their problems but didn't cause any regression either.
|
|
|
|
|
| |
initializing siop_cmd to NULL first (matt via NetBSD), remove trailing
whitespace (perry vis NetBSD).
|
|
|
|
| |
ok krw@
|