#
04d76476 |
| 15-Jun-2010 |
dlg <dlg@openbsd.org> |
rearrange attach so that the SDEV_VIRTUAL flag is set during scsi_probe, rather than as a scan of all attached devices after scsibus is attached.
this will allow the cache enabling on virtual disks
rearrange attach so that the SDEV_VIRTUAL flag is set during scsi_probe, rather than as a scan of all attached devices after scsibus is attached.
this will allow the cache enabling on virtual disks to run as part of the disks attach routine.
show more ...
|
#
fdca2419 |
| 15-Jun-2010 |
dlg <dlg@openbsd.org> |
dont pass the dev_t from the scsi device drivers into the midlayer for ioctl requests, and dont pass the proc pointers around for any ioctl requests in scsi land at all. neither were used, so trim th
dont pass the dev_t from the scsi device drivers into the midlayer for 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@
show more ...
|
#
87c4ae93 |
| 19-May-2010 |
dlg <dlg@openbsd.org> |
the virtual scsi disks that mpi(4) presents dont grok modifications to the mode pages that control the caches. this adds code that talks to the mpi chip directly on behalf of those disks so you can e
the virtual scsi disks that mpi(4) presents dont grok modifications to the mode pages that control the caches. this adds code that talks to the mpi chip directly on behalf of those disks so you can enable write caching on them.
show more ...
|
#
5324c6c0 |
| 16-May-2010 |
nicm <nicm@openbsd.org> |
Use a temporary variable for now to sidestep -Wbounded checking when copying vendor[8]/product[16]/revision[4] out of struct scsi_inquiry_data together with one memcopy.
ok krw
|
#
7fd33a37 |
| 09-May-2010 |
dlg <dlg@openbsd.org> |
back out 1.143, it causes data corruption on the mpis in sun v20z boxes, but i suspect it is common to all SPI mpi parts.
problem found and problem diff verified by landry.
ok krw@ landry@ jasper@
|
#
f3f89bfb |
| 28-Apr-2010 |
marco <marco@openbsd.org> |
Fix gcc4 warning
|
#
579ce6c3 |
| 22-Apr-2010 |
oga <oga@openbsd.org> |
use BUS_DMA_ZERO on alloc instead of bzeroing after.
ok dlg@, marco@
|
#
068ab6fc |
| 22-Apr-2010 |
marco <marco@openbsd.org> |
Fix cut 'n paste typo
|
#
5790530b |
| 19-Apr-2010 |
dlg <dlg@openbsd.org> |
i thought mpi gave each device all the openings on the bus, which was a big motivation to implementing iopools. while looking at another issue i noticed that openings were cut up for each disk.
this
i thought mpi gave each device all the openings on the bus, which was a big motivation to implementing iopools. while looking at another issue i noticed that openings were cut up for each disk.
this cranks openings to maxcmds.
show more ...
|
#
652821e3 |
| 16-Apr-2010 |
dlg <dlg@openbsd.org> |
byteswap the number of blocks on physical disks for bioctl correctly. makes output sane on sparc64 and other BE archs.
found by jason george
|
#
c733887d |
| 16-Apr-2010 |
deraadt <deraadt@openbsd.org> |
if there is no raid, do not allocate a 0-sized structure for sensors and then start attaching it with 0 sensors attached ok dlg
|
#
ee7d21f8 |
| 12-Apr-2010 |
dlg <dlg@openbsd.org> |
dont need to call scsi_done with splbio. the midlayer protects itself now, its not the adapters responsibility anymore.
|
#
8188606d |
| 09-Apr-2010 |
dlg <dlg@openbsd.org> |
fix double free in an error path. the midlayer gets the ccb for scsi io now, so it not our job to free it.
|
#
86d9216a |
| 06-Apr-2010 |
dlg <dlg@openbsd.org> |
use SLISTs for managing the ccb free list rather than TAILQs.
|
#
737ba2a2 |
| 06-Apr-2010 |
dlg <dlg@openbsd.org> |
modify mpi to provide an iopool as a way for the midlayer to manage access to its free ccbs.
this allows the midlayer to schedule access to the bus in a roundrobin fashion for all consumers on the b
modify mpi to provide an iopool as a way for the midlayer to manage access to its free ccbs.
this allows the midlayer to schedule access to the bus in a roundrobin fashion for all consumers on the bus, including io from devices and even the internal mpi management commands used to poll the state of raid devices. the result is fairer sharing between disks on the bus and more reliable sensor updates.
ok krw@ beck@ marco@ tested by beck@
show more ...
|
#
a56d1f5e |
| 03-Apr-2010 |
dlg <dlg@openbsd.org> |
dont allocate with M_TEMP and then free with M_DEVBUF. made even worse that this was done for every sensor update, which really screwed up the memory stats.
noticed by deraadt@
|
#
bae03be6 |
| 23-Mar-2010 |
krw <krw@openbsd.org> |
Change the scsi_cmd function member of scsi_adapter from int to void. Use XS_NO_CCB error in the scsi command (xs) to report the NO_CCB condition. Eliminates all SUCCESSFULLY_QUEUED and COMPLETE conf
Change the scsi_cmd function member of scsi_adapter from int to 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@
show more ...
|
#
2c3a8999 |
| 11-Jan-2010 |
dlg <dlg@openbsd.org> |
rework the polling code to use the semantic krw@ proposed.
intercept the ccb_done handling so polled commands set a flag that mpi_poll tests on. when ccb_done sets the variable, the poll loop breaks
rework the polling code to use the semantic krw@ proposed.
intercept the ccb_done handling so polled commands set a flag that mpi_poll tests on. when ccb_done sets the variable, the poll loop breaks and mpi_poll runs the original ccb_done handler for the ccb completion.
this is a lot simpler than the previous implementation and removes a mutex.
ok beck@
show more ...
|
#
3a8bd1df |
| 09-Jan-2010 |
krw <krw@openbsd.org> |
Zap all setting of ITSDONE in drivers that don't look at it. Nobody else cares so it's just noise. Drivers that actually look at ITSDONE are unchanged.
ok marco@ (for his files) dlg@ beck@
|
#
c6eb992c |
| 03-Jan-2010 |
dlg <dlg@openbsd.org> |
oops, get the order of args right for the header request in mpi_bio_get_pg0_raid. the sensor updates dont poll at all now.
|
#
6df17549 |
| 03-Jan-2010 |
dlg <dlg@openbsd.org> |
mpi_bio_get_pg0_raid is only called from a process context. let the cfg requests sleep rather than poll for completion.
|
#
2b5df6e7 |
| 03-Jan-2010 |
dlg <dlg@openbsd.org> |
oops, forgot to set the ccb_cookie in mpi_wait. mpi_wait_done would fault when it used the uninitialized cookie.
|
#
04b09de1 |
| 03-Jan-2010 |
dlg <dlg@openbsd.org> |
get rid of the last internal user of splbio. waiting for the completion of a ccb can now be done with mpi_wait. this switches the cfg page handlers over from their own tsleep stuff to mpi_wait.
|
#
30aa5da1 |
| 03-Jan-2010 |
dlg <dlg@openbsd.org> |
rename ccb_xs to ccb_cookie, and switch it from a struct scsi_xfer * to a void *. this will let me stash things other than scsi xfers in the ccb for ccb_done handlers to use.
|
#
52bc9f3d |
| 03-Jan-2010 |
dlg <dlg@openbsd.org> |
dont leak a ccb if we fail to get a reply in portenable
|