| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
| |
ok miod@, krw@
|
|
|
|
|
|
| |
to better handle detaching.
ok deraadt@
|
|
|
|
|
|
| |
disk is now ready to handle I/O.
ok krw@ dlg@
|
|
|
|
|
|
|
| |
ioctl requests, and dont pass the proc pointers around for any ioctl
requests in scsi land at all. neither were used, so trim the fat.
ok krw@ marco@
|
|
|
|
|
|
|
|
|
|
|
|
| |
in the great re-write. If the scsi device *_interpret_sense()
function returns 0 that means there was no error.
Fixes restore(8) problems seen on certain tape drives.
Found and fix tested by Percey Piper. Suggestions from Matthew
Dempsky. Thanks!
ok dlg@
|
|
|
|
|
|
|
| |
WAITING fix.
tested by sthen@ thib@ sobrado@ krw@ on atapiscsi, atascsi, and real scsi
ok krw@ thib@
|
|
|
|
|
| |
Tested by myself and krw.
ok krw@
|
|
|
|
|
|
|
|
|
|
|
| |
gets rid of #include <sys/dkio.h> in sys/ioctl.h and adds #include
<sys/dkio.h> to the places that actually want and use the disk
ioctls.
this became an issue when krw@'s X build failed when he was testing
a change to dkio.h.
tested by krw@
help from and ok miod@
|
|
|
|
|
|
|
| |
identifier, allowing the disk to be identified without relying on the
device name.
ok deraadt@ krw@ beck@ marco@ todd@
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
other stuff ive been doing in here. everything that needs protection
inside the midlayer and the scsi device drivers (sd, cd, etc) uses
mutexes now.
this pushes splbio out of the midlayer. splbio is only taken before
biodone is called now.
ok beck@ marco@ krw@ deraadt@. theyre all terrified, but they all
say if we're going to do then now is the right stage of the dev
cycle.
|
|
|
|
|
|
|
|
| |
ok.
Stops cdio(1) from printing bogus TOC info.
ok marco@ beck@
|
|
|
|
|
|
|
| |
one place for easier debugging and maintenance. No intended functional
changes.
ok dlg@
|
|
|
|
| |
ok dlg@
|
|
|
|
| |
ie, dont clear the WAITING flag when restarting the xxstart loops.
|
|
|
|
|
|
| |
done in sd. Make names consistant across all three.
ok dlg@ tested (cd) & ok beck@
|
|
|
|
|
|
|
|
|
| |
st's queue manipulations. i.e. ensure b_actb is correctly updated as the
queue becomes empty or has an i/o requeued on it.
Tested on claudio@'s backup crashing box.
ok dlg@ beck@
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
by setting flags around the loop. there is a race which can prevent
necessary work being completed by any of the currently running instances
of xxstart.
the caveat with the removal of this code is because multiple xxstarts can
be running at the same time they can cause io reordering, but that is less
of a problem than no io.
found by and fix tested by claudio@
debugged with krw@ claudio@ beck@ deraadt@
|
|
|
|
| |
ok marco@ guenther@
|
| |
|
|
|
|
| |
cd.
|
|
|
|
|
|
|
|
|
| |
this brings it in line with the new midlayer changes.
mostly borrowed from sd(4) changes.
tested by krw@ and me
ok krw@
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
This is needed for the addition of further suspend/resume actions.
Okay deraadt@, marco@.
|
|
|
|
|
|
|
|
|
| |
errnos. Note that the error strings are being ignored, since we long ago
decided to not spam the console, and there is no other nice way to use the
errors (without changing the ioctls to pass it back)
The errno is now useful, since we can pass b_error from failing IO up, and
the drive can decide how to use that
ok miod
|
|
|
|
|
|
| |
have been going on. this appears to bring us back to stable state.
lots of testing by oga and ariane and my self.
|
|
|
|
|
|
|
|
|
| |
one by tedu@. It doesn't do anything smart yet, it just uses
plain old disksort. we also keep the old method of queueing bufs
since some miods have crazy MD drivers that need some love.
ok beck@, art@
tested by many on many archs.
|
|
|
|
|
|
| |
as additional argument. This will allow intermediate layers between
scsi devices such as sd and scsi host adapters to take appropriate
action if necessary.
|
|
|
|
|
|
|
|
| |
on apple laptops.
The eject button will only eject the disc when it's not used by
anything.
ok miod@
|
|
|
|
| |
ok krw@ marco@ miod@ deraadt@
|
| |
|
|
|
|
|
| |
all defined to 4. Replace some magic number 4's with SCSI_RETRIES. Fix a
few lines that were now too long.
|
|
|
|
|
|
| |
commands. Bump limit back to the standard 4, and at the same time eliminate
SDRETRIES and CDRETRIES (both defined to 4) in favour of a new define,
SCSI_RETRIES, also defined to 4.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
instead. We do not make use of the PMI and RELADDR bits in the
READ CAPACITY command, and thus there is no difference between
cd and sd capacity handling. Brings cd and sd more into line,
shrinks code and makes things easier to understand.
Make types for blocksize and disksize consistant and MI.
Make cdopen() as silent as sdopen().
ok marco@
|
|
|
|
|
|
| |
scsi_read_cap_data as READ_CD_CAPACITY, scsi_read_cd_capacity and
scsi_read_cd_cap_data respectively. No functional change as all were
identical to their counterparts.
|
|
|
|
|
|
|
|
|
|
|
| |
RAW_PART will always be 0 -> disksize, so the bounds check will always
pass for i/o's to valid addresses. Now the i/o will be properly truncated
if it goes past the end of the device. This prevents various adverse
impacts of issuing i/o's for data past the end of the device.
Repeatedly requested by todd@.
ok weingart@ deraadt@
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
1) remove multiple size queues, introduced as a stopgap.
2) decouple pages containing data from their mappings
3) only keep buffers mapped when they actually have to be mapped
(right now, this is when buffers are B_BUSY)
4) New functions to make a buffer busy, and release the busy flag
(buf_acquire and buf_release)
5) Move high/low water marks and statistics counters into a structure
6) Add a sysctl to retrieve buffer cache statistics
Tested in several variants and beat upon by bob and art for a year. run
accidentally on henning's nfs server for a few months...
ok deraadt@, krw@, art@ - who promises to be around to deal with any fallout
|
| |
|
|
|
|
| |
extraneous #include <malloc.h>
|
| |
|
|
|
|
| |
cpu_disklabel can go away, since nothing anymore needs to use it; ok miod
|
| |
|
| |
|
|
|
|
| |
need for special case code; ok krw
|
|
|
|
|
|
|
| |
type of all variables to daddr64_t. this includes the APIs for XXsize()
and XXdump(), all range checks inside bio drivers, internal variables
for disklabel handling, and even uvm's swap offsets. re-read numerous
times by otto, miod, krw, thib to look for errors
|
|
|
|
|
| |
to size. tested on almost all machines, double checked by miod and krw
next comes the type handling surrounding these values
|
|
|
|
|
|
| |
readdisklabel(), since all readdisklabel()'s do that already.
ok deraadt@
|
|
|
|
| |
this time!
|