summaryrefslogtreecommitdiff
path: root/sys/scsi
AgeCommit message (Collapse)Author
2006-01-21Invoke disk_detach() and related cleanup work in detach(), rather thanMiod Vallat
zeroref() - just to be on the safe side, should we mess up our ref count.
2006-01-19Replace SENSOR_ADD() macro with a pair of functionsAlexander Yurchenko
sensor_add()/sensor_del() so that sensors can be attached and detached dynamicaly. ok kettenis@ deraadt@ dlg@
2006-01-18Don't index before the start of the sc_link array if scsi_probe_bus()Kenneth R Westerback
is called with a target of -1 and a valid lun. Spotted by Miod. ok miod@
2006-01-17Use strchr() from libkern instead of rolling our own.Miod Vallat
2006-01-17Need to device_unreg() the implicit device_ref() done by cdlookup() inMiod Vallat
cdminphys().
2006-01-12Don't populate the fabricated disklabel's partition info from trackKenneth R Westerback
information in the TOC. The partition info is just overwritten or rendered incomplete by readdisklabel(). Just examine the TOC to determine if the cd is audio only, i.e. it has a valid TOC but no data tracks. In this case don't call readdisklabel(). Much simpler code. No functional change for single data track CD's like the install media. ok pedro@.
2006-01-11dont print anything if we're unable to read the status pageDavid Gwynne
requested by deraadt@
2006-01-08i cant spell my own name.David Gwynne
noticed by miod@
2005-12-25Cleanup/fix cdgetdisklabel() byKenneth R Westerback
1) Using cd_load_toc() instead of replicating code. 2) Using struct cd_toc and betoh32() like other parts of cd.c. 3) Restoring pre-Sept. 26 behaviour of trying to read usable disklabel info if there is no TOC. i.e. avoid readdisklabel() only when it is an audio-only CD. Stop abusing spoofonly. Tested by mjc@
2005-12-23Make cd_load_toc() take an address mode parameter, clean up a bit.Kenneth R Westerback
Add a check for ending_track < starting_track before calculating size of TOC to read. Tested by mjc@
2005-12-22Move a struct cd_toc (800 bytes) from the stack to malloc'ed memory.Kenneth R Westerback
bzero() all malloc'ed cd_toc structs because cd_read_toc() will only zero as much as it is trying to read. malloc M_TEMP memory instead of M_DEVBUF memory for the cd_toc structs. ok deraadt@
2005-12-22Initialize data_track before a 'goto done;' could lead to it beingKenneth R Westerback
used.
2005-12-17Kill unreachable code. Found by lint.Kenneth R Westerback
ok kettenis@ deraadt@ pedro@ miod@
2005-12-15A sanity check for an unsigned variable being < 0 after a subtractionKenneth R Westerback
is not useful. Check the value about to be subtracted. Spotted by lint.
2005-12-10in ansi c, bitfields must be done against int, unsigned int, or _Bool.Theo de Raadt
so we must start to use u_int; ok cloder
2005-12-10in ansi c, bitfields must be done against int, unsigned int, or _Bool.Theo de Raadt
so we must start to use u_int; ok cloder
2005-12-08Don't panic for pathological i/o sizes unless minphys() really isKenneth R Westerback
broken. Eliminate an unneeded variable and potential conversion issues in SCIOCCOMMAND code before calling physio. Similar to what NetBSD does. Fixes cdda2wav vs "Billie Holiday - Songs for Distingue Lovers" problem noted by Alexandre Ratchov. Tested by Alexandre. ok marco@ pedro@ deraadt@ mickey@
2005-12-02Remove one tab that cause a line to overflow. No functional change.Marco Peereboom
2005-12-02Missing 'break;'. Spotted by lint.Kenneth R Westerback
ok dlg@
2005-11-28fix month-old breakage found by genududes (after henning's breakage)Michael Shalayeff
2005-11-19Remove unnecessary lockmgr() archaism that was costing too much in termsPedro Martelletto
of panics and bugfixes. Access curproc directly, do not expect a process pointer as an argument. Should fix many "process context required" bugs. Incentive and okay millert@, okay marc@. Various testing, thanks.
2005-11-17Don't forget to device_unref() in sdclose() if sdlock() fails; ok krw@Miod Vallat
2005-11-17Use sectors as the size units for the RAW_PART (i.e. 'c') partition inKenneth R Westerback
spoofed sd disklabels. Sectors are the partition size units used and documented everywhere else in the tree. sd ensures a sector will always be a multiple of 512. Fixes disklabel(8) error messages and partition size display for sd devices that have no OpenBSD disklabel and a sectorsize > 512. Noted by Robert Szasz on his Sony Hi-MD device. ok pedro@ marco@
2005-11-13Allow removable disks to be spun up if they ask for initializationKenneth R Westerback
after being opened. Use SC_DEBUG() to suppress some verbiage during spin up. Return actual errors encountered during attempt to spin up, rather than always returning EIO. ok dlg@
2005-11-13ATAPI Tape drives need 6 byte MODE SENSE commands according to atKenneth R Westerback
least one spec. Unlike other ATAPI devices. Fixes PR #4611.
2005-11-13Use SCSI_DELAY only once. Document it. Default to no delay.Kenneth R Westerback
Fixes two second system 'freeze' when umass device plugged in. Speeds up boot by not waiting for a minimum of 2 seconds at each scsi bus. ok jmc@ pedro@ deraadt@
2005-11-13Use scsi_delay() instead of delay() when waiting for scsi disk toKenneth R Westerback
become ready. Make verbiage SC_DEBUG(). ok dlg@
2005-11-13lock accesses to the buffer so that it wont get confused between theDavid Gwynne
multiple processes using it
2005-11-13lock updates to the buffer with the enclosure status in it so that oneDavid Gwynne
process cant read from it while another one is fetching it from the scsi device. looks ok krw@
2005-11-13if the particular ses device has no slots or sensors to handle, then freeDavid Gwynne
all the resources.
2005-11-12there are two things that safte does: update sensors and blink lights. ifDavid Gwynne
attach figures out that we cant do either of them, then free up all the resources.
2005-11-12clean up unused includesDavid Gwynne
2005-11-12remove the ses kthread goop and use the sensor kthread for updates insteadDavid Gwynne
tested by deraadt@
2005-11-11include sys/device.h. builds on sparc. dlg@ ok.Federico G. Schwindt
2005-11-10remove half the includes since they seem to be unnecessary.David Gwynne
2005-11-10i am a stupid head. unbreak kernels that done have the bio(4) device.David Gwynne
reported and fixed by Michael Knudsen.
2005-11-10cut safte over to using the generic sensors kthread.David Gwynne
2005-11-07Death to superfluous verbiage. Suppress errors when getting the parametersKenneth R Westerback
for a raw partition like we suppress errors for the other operations on raw partitions. Replace 'could not get size' with more specific and informative SC_DEBUG() output. Silences a usb card reader that fgsch@ found. Now attach message is only 'sdX: drive offline'. Tested & ok fgsch@
2005-11-02Abstract delay code out and call it directly from XX_interpret_sense.Kenneth R Westerback
Makes the logic simpler by eliminating the XS_BUSY dance in xs->error, and will allow individual device types to delay different lengths on certain conditions. Allow SCSI_NOSLEEP commands to be retried without waiting. Who knows, they may work even without a delay. ok marco@
2005-10-22When a scsi command is waiting for an opening or is waiting to be retried,Kenneth R Westerback
abort it when a signal interrupts the tsleep(). Suggested by deraadt@. "I really like this" deraadt@ "I like this" marco@
2005-10-16Don't pound UNIT ATTENTION retries in as fast as possible. If we areKenneth R Westerback
going to retry the command, pause for a second to let the condition clear. Just as we do for certain NOT READY conditions. Found with the help of, and fixes Ed Wandasiewicz's IBM USB Memory key. ok deraadt@
2005-10-15Eliminate unnecessary bzero() by only writing valid information.Kenneth R Westerback
Eliminate separate check/break from for() loop. No functional change. ok deraadt@
2005-10-14Eliminate uneeded variable 'i' and use under utilized 'data_track'Kenneth R Westerback
instead. ok deraadt@
2005-10-11use [bl]etohXX instead of ntoh[sl], makes the code more consistent andHans-Joerg Hoexer
better readable. actually no binary change. ok krw@
2005-10-11Change some byte shifting to _4btol() and swap32() calls.Kenneth R Westerback
ok hshoexer@
2005-10-10Some KNF. malloc/free instead of MALLOC/FREE since it's a variableKenneth R Westerback
sized allocation. Remove some dead code.
2005-10-10Make some panic messages more useful.Kenneth R Westerback
2005-10-04shorter name for wait channelTheo de Raadt
2005-09-29fix the check for the type of enclosureDavid Gwynne
2005-09-29Clear SDEV_MEDIA_LOADED for cd media on the last close of a device, asKenneth R Westerback
sd does. Prevents spurious label information from being seen on devices that return NOT READY/UNABLE TO RECOVER TABLE-OF-CONTENTS error (or other sense errors) for blank media. Burning cd's still works. ok marco@ dlg@ fgsch@ deraadt@