| 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@
|
|
|
|
|
|
|
|
| |
and was always checked in concert with SDEV_ATAPI. Just rely on SDEV_ATAPI and
SDEV_UMASS in all but the one place sd(4) where SDEV_ONLYBIG is set
independently of SDEV_ATAPI/_UMASS.
ok jmatthew@
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
| |
&sc->sc_dev to get a device pointer rather than using the void *
whence we obtained 'sc'.
|
|
|
|
| |
(scsi_link.adapter_softc) to a pointer of a particular softc type.
|
|
|
|
|
|
| |
sc_link.
Keeps all the sc_link initialization in one easy target, er, place.
|
|
|
|
| |
statement. All to make upcoming diff(s) smaller and easier to read.
|
|
|
|
| |
immediately before initializing the only field in the struct.
|
|
|
|
|
|
|
|
|
| |
sc_link.openings is greater than 34.
Encountered by Sigi Rudzio on his Blade 2500, who kindly did some
testing to discover that the answer is 34, not 42.
Nuke some whitespace on the way by.
|
|
|
|
|
|
|
|
| |
nothing at all. MAXPHYS will be applied in minphys() and nothing at
all, well, doesn't do anything.
Also remove any '#define <blah> MAXPHYS' statements used solely to
disguise MAXPHYS in said functions.
|
| |
|
|
|
|
|
|
|
| |
system minphys(). scsi_minphys() will do that and cd/sd/st will call
scsi_minphys().
ok jmatthew@ as part of larger diff
|
|
|
|
|
|
|
|
|
|
|
| |
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@
|
|
|
|
| |
ok kn@
|
|
|
|
|
|
| |
out like other "modern" devices.
ok dlg@
|
|
|
|
| |
ok dlg@ deraadt@ kettenis@
|
|
|
|
|
|
| |
value.
Specs from mikeb@, ok dlg@
|
|
|
|
|
|
| |
drivers that fill that field in too.
quad types are going away.
|
|
|
|
| |
ok dlg@ krw@
|
| |
|
|
|
|
|
| |
precedence than ?:
ok guenther@ krw@ miod@
|
|
|
|
|
|
|
| |
have any direct symbols used. Tested for indirect use by compiling
amd64/i386/sparc64 kernels.
ok tedu@ deraadt@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
when workqs were introduced, we provided a second argument so you
could pass a thing and some context to work on it in. there were
very few things that took advantage of the second argument, so when
i introduced pools i suggested removing it. since tasks were meant
to replace workqs, it was requested that we keep the second argument
to make porting from workqs to tasks easier.
now that workqs are gone, i had a look at the use of the second
argument again and found only one good use of it (vdsp(4) on sparc64
if you're interested) and a tiny handful of questionable uses. the
vast majority of tasks only used a single argument. i have since
modified all tasks that used two args to only use one, so now we
can remove the second argument.
so this is a mechanical change. all tasks only passed NULL as their
second argument, so we can just remove it.
ok krw@
|
| |
|
|
|
|
|
|
| |
paths. take it again when going back to other parts of the kernel.
tested by and ok kettenis@
|
|
|
|
| |
ok mpi@ kspillner@
|
|
|
|
|
|
| |
of the task structure like workq tasks did.
tested on an fc929
|
|
|
|
| |
ok dlg@
|
|
|
|
| |
ok tedu
|
|
|
|
| |
after discussions with beck deraadt kettenis.
|
|
|
|
| |
nvme and other stuff.
|
| |
|
|
|
|
| |
jmatthew@ agrees with me
|
|
|
|
|
|
| |
apart from the flags handling in sgls, this shrinks the io hot path
on sparc64 and powerpc a lot. its pretty much the same on
i386/amd64/alpha.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
memory. that means you cant do 8 byte loads and stores on the sg_addr
member cos it wont be 8 byte aligned half the time which makes
strict alignment archs (ie, the fun ones ones) upset.
annotate the sge as being 4 byte aligned. replace the sg_addr member
with sg_addr_lo and sg_addr_hi.
replace htole64 assignment of the sg addr with a wrapper that does
the right thing with a couple of htolem32 calls.
generated code shrinks again.
|
|
|
|
|
|
|
|
| |
on behalf of all its callers.
use htolem32 and lemtoh32 to handle the message context.
both save bytes.
|
| |
|
| |
|
| |
|
|
|
|
| |
important, as per r1.167.
|
|
|
|
|
|
|
|
|
|
|
| |
any work to do in the interrupt handler, or to clear it. the relevant bits
indicate whether there's work on the doorbell and clear when there isnt.
we need to read the doorbell if there is work to do, so lets just go that
straight away anyway.
get rid of bus_space_barriers in the io path. barriers are for enforcing
ordering. the doorbell reads and writes dont depend on any other register
values so ordering isnt applicable here.
|
|
|
|
| |
the code.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
1. vmware advertises more scsi targets than command slots, so the maths
we did for openings gave each target 0 openings. always advertise at least
16 openings.
2. if we cant configure the ATA queue depth, dont fail to attach the
controller whole.
finally, improve the error reporting during attach so its more obvious
where things fail.
mostly figured out by jmatthew@
|
|
|
|
| |
ok dlg
|
|
|
|
| |
ok mikeb
|
| |
|
|
|
|
|
| |
their types to fit the iopools api rather than doing awful typecasts to
shove them into iopool_init.
|
|
|
|
|
|
| |
is causing problems when trying to boot sparc64 from an isp(4).
Verified to fix the sparc64/isp(4) regression by krw@; ok deraadt@
|