Age | Commit message (Collapse) | Author |
|
serial number and split the vpd header out for use in other places. while
here define the device identification page bits too.
ok krw@ marco@
|
|
|
|
sent to the adapter instead of the 10 bytes the scsi_sychronize_cache
command actually occupies. This freaked out the ahc on jsing@'s SGI
and probably others.
Found, isolated, fix tested, and ok jsing@
|
|
called from the last sdclose() on a device will now reset SDF_DIRTY
after submitting the SYNCHRONIZE CACHE command. sddone() need not
worry about SDF_DIRTY since it was never called for the SYNCHRONIZE
CACHE command anyway.
This eliminates a spurious SYNCHRONIZE CACHE command being issued for
every sd device from sd_shutdown().
ok dlg@
|
|
and a file is written onto the stick. Without these fixes the
machine panics or hangs.
The usb fix calls the callback when the stick is pulled out to free
the associated buffers. Otherwise we have busy buffers for ever
and the automatic unmount will panic.
The change in the scsi layer prevents passing down further dirty
buffers to usb after the stick has been deactivated.
In vfs the automatic unmount has moved from the function vgonel()
to vop_generic_revoke(). Both are called when the sd device's vnode
is removed. In vgonel() the VXLOCK is already held which can cause
a deadlock. So call dounmount() earlier.
ok krw@, I like this marco@, tested by ian@
|
|
Tested, tweaked and ok otto@
|
|
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@
|
|
of the I/O being attempted. Throw in a comment typo fix to properly
refer to sectors and not blocks.
ok marco@
|
|
number (wd.c), and the uses are to find the minimum minor to be
detached.
|
|
but differently named SD/CD ones. No change to .o files.
ok deraadt@ dlg@
|
|
geometry used to 255 heads and 63 sectors/track from 64 heads and 32
sectors. 255/63 makes the cylinders as large as PC/BIOS compatibility
allows, increasing the size of devices that can be supported.
ok pedro@ (long ago) marco@ millert@ weingart@
|
|
media in while the device is open, allow the open anyway. Fixes some
USB devices which do odd things when presented by PREVENT_ALLOW.
Suggestion from mickey@.
ok millert@ marco@
|
|
No functional change.
ok krw
|
|
ok krw
|
|
no binary change, and ok krw@ marco@
|
|
vendor, etc details.
|
|
certainly don't need it, or are capable of reporting themselves in
need of a spin up. Feedback from various agreeing it is unlikely such
devices exist.
Fixes devices found by Markus Bergkvist and Johan M:son Lindman.
ok dlg@
|
|
|
|
|
|
'transfer', 'tranfered' -> 'transferred'.
|
|
using the new NO_CCB result. Currently a no-op since no driver produces
that result.
ok dlg@ marco@ deraadt@
|
|
confusing when trying to attach scsibus to a hba, since it is really meant
for attaching scsi devices to scsibus.
ok deraadt@ marco@
|
|
ok miod@, deraadt@
|
|
ok marco@, deraadt@
|
|
"becoming ready" - this is done in the exact same way that it
was done for tape in st.c. This commit adds a cd specific interpret_sense
routine to cd.c that will catch the becoming ready case and handle it.
This also removes the need to use crazy timeouts to catch this case.
ok krw@
|
|
that specifies the version of SCSI being supported. Even the ANSI part
that we use is complex. 4 means 2, 5 means 3 and 6 means 4. Translate
and use the value correctly. Fixes SCSI5 and SCSI6 in dmesg. And
properly protects SCSI2 devices from getting SCSI3 commands.
"seems like an elegant solution to me" millert@ ok dlg@ marco@
|
|
bus. supporting these complicates the midlayer unnecessarily.
ok krw@
|
|
stored in scsi_link. That's where the value came from anyway. Move 'luns'
field to where 'scsi_version' used to be to preserve alignment.
ok dlg@
|
|
inquiry. this removes the flags member and makes all its users refer to the
whole inquiry now.
ok miod@ krw@
|
|
prevents the issuing of sizing inquiries to non-existant or non-responsive
devices like empty slots on a USB card reader.
Also try to avoid *extremely* unlikely loop of scsi_start() commands, by
not using sd_interpret_sense() until after the disk is spinning.
ok dlg@
|
|
|
|
|
|
ok miod@ marco@
|
|
|
|
zeroref() - just to be on the safe side, should we mess up our ref count.
|
|
|
|
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@
|
|
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@
|
|
become ready. Make verbiage SC_DEBUG().
ok dlg@
|
|
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@
|
|
|
|
functional change.
ok dlg@
|
|
headers; } to just union scsi_mode_sense_buf {}. No functional change.
ok marco@
|
|
Some blow up if buffer length is not 0. Just fake geometry for all
UMASS devices since it's almost always fictitious anyway. One step on
the road to eliminate geometry entirely.
Fixes Ed Wandasiewicz's 2nd gen iPod mini and Sebastiaan Indesteege's
UBest Technology device.
ok marco@
|