summaryrefslogtreecommitdiffstats
path: root/sys/dev/ic/aac.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Partially revert previous mallocarray conversions that containdhill2017-04-111-2/+2
| | | | | | | | | constants. The consensus is that if both operands are constant, we don't need mallocarray. Reminded by tedu@ ok deraadt@
* Convert some malloc(9) to mallocarray(9)dhill2017-04-091-2/+2
| | | | ok deraadt@
* A pile of sizes to free(9). In test for a few days in snapshots.deraadt2017-04-081-3/+3
| | | | | Errors will result in nice clean panic messages so we know what's wrong. Reviewed by dhill visa natano jsg.
* Kill async code commented out for more than 10 years.mpi2016-03-271-306/+1
|
* Die, damned distracting red space.krw2015-05-021-46/+46
|
* unbreak aac(4) by re-adding uvm_extern.h for ptoa()jasper2014-07-311-1/+3
| | | | ok deraadt@ sthen@
* add a size argument to free. will be used soon, but for now default to 0.tedu2014-07-121-6/+6
| | | | after discussions with beck deraadt kettenis.
* decouple struct uvmexp into a new file, so that uvm_extern.h and sysctl.hderaadt2014-07-081-3/+1
| | | | | don't need to be married. ok guenther miod beck jsing kettenis
* a polled command timing out isnt a software resource shortage, itsdlg2014-01-171-2/+2
| | | | | | a driver stuffup. aac is XS_NO_CCB clean now.
* remove a XS_NO_CCB case by moving aac to iopools.dlg2014-01-171-41/+33
| | | | eyes and ok by krw@ jmatthew@
* replace aacminphys with scsi_minphys. both are just wrappers arounddlg2014-01-171-15/+6
| | | | minphys.
* aacvar advertises a public api which is only used inside aac.c. make itdlg2014-01-171-1/+8
| | | | "private" so i dont feel bad about changing it.
* simplify kthread_create(). no more stdargderaadt2013-11-181-2/+2
| | | | ok matthew guenther mikeb
* ENOMEM is probably more appropriate than 0 in this error case.mlarkin2013-11-131-2/+2
|
* Use of uninitialized variable. There are obvious locking problems alsomlarkin2013-11-131-2/+2
| | | | | | | | present in this function, but I've been advised to walk away, and it have been this way forever (and this code is not even enabled in GENERIC by default anyway) original bug found by Maxime Villard, thanks.
* Enforce ca_activate tree-walks over the entire heirarchy for all events,deraadt2013-05-301-6/+1
| | | | | | cleaning up some shutdown-hook related code on the way. (A few drivers related to sparc are still skipped at kettenis' request) ok kettenis mlarkin, tested by many others too
* Backout a bunch of my SCSI commits from c2k11. At least one of thesematthew2011-07-171-2/+2
| | | | | | is causing problems when trying to boot sparc64 from an isp(4). Verified to fix the sparc64/isp(4) regression by krw@; ok deraadt@
* First batch of converting SCSI HBAs from setting saa_targets andmatthew2011-07-081-2/+2
| | | | | | saa_luns instead of adapter_buswidth and luns in the prototype link. ok dlg@, miod@
* Kill some #if 0'ed code (the 'raw' scsi path). Move splx()krw2011-04-041-30/+5
| | | | | | to before scsi_done(). This doesn't mean aac will ever enabled! ok dlg@
* Force openings to 1 for devices that can't do tagged i/o, i.e. morekrw2010-10-121-1/+2
| | | | | | | | | | | | | | than 1 i/o active at once. This reduces the chances that concurrent i/o's for such devices will confuse the device or the adapter code. It also eliminates a reason for adapter code to maintain its own queues. Tweak all drivers that fake INQUIRY results to set the SID_CmdQue flag, thus continuing to claim to be able to do tagged i/o. Positive feedback from matthew@ and marco@ for an earlier version. ok dlg@
* Stefan Rinkes pointed that the disabled aac(4) driver does not compilekrw2010-09-211-4/+5
| | | | | | with gcc4. Use his diff to make it compile. Submitted & tested by Stefan Rinkes. Thanks!
* Use SSD_ERRCODE_CURRENT instead of magic 0x70.krw2010-09-201-2/+2
| | | | ok dlg@ matthew@
* No "\n" needed at the end of panic() strings.krw2010-08-071-5/+5
| | | | | | | Bogus chunks pointed out by matthew@ and miod@. No cookies for marco@ and jasper@. ok deraadt@ miod@ matthew@ jasper@ macro@
* Remove all adapter-specific 'struct scsi_device's. They are never used. Firstkrw2010-06-281-6/+1
| | | | | | | | step in elminating 'struct scsi_device' entirely. Spotted and initial diff from matthew@. ok matthew@ dlg@ deraadt@ marco@ miod@
* New scsi code seems to be stable. Pluck previously identifiedkrw2010-05-201-4/+2
| | | | | | | low-hanging splbio/splx pairs that are no longer needed and see if this reveals any hidden scsi flaws. ok dlg@
* more BUS_DMA_ZERO love.oga2010-05-181-5/+3
| | | | ok marco.
* Remove a bunch of if 0ed out code that used vtophys. it hasn't been usedoga2010-04-101-15/+1
| | | | | | | by now, probably won't be in the future. ok krw. "Correctski" from miod@ after I put back another chunk he wanted to remain.
* Change the scsi_cmd function member of scsi_adapter from int tokrw2010-03-231-15/+10
| | | | | | | | | | | | | 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@
* Zap all setting of ITSDONE in drivers that don't look at it. Nobodykrw2010-01-091-11/+1
| | | | | | | else cares so it's just noise. Drivers that actually look at ITSDONE are unchanged. ok marco@ (for his files) dlg@ beck@
* Bring last drivers fully into the NO_CCB world by replacingkrw2009-11-221-2/+2
| | | | | | | | | | | TRY_AGAIN_LATER uses with equivalent NO_CCB. Eliminates confusion between the two as was always intended. buf I/O's that can't be started get pushed back onto the front of the queue and retried. Others get sent back to originator as failures. No more epi-cycle looping inside the SCSI midlayer hoping the problem goes away. Various testers, no objection from miod@ as vs(4) was tested by nick@.
* Missing scsi_done() in some error path returning COMPLETE; ok dlg@miod2009-09-041-1/+13
|
* Extend the scsi_adapter minphys() callback to take a struct scsi_link *miod2009-02-161-2/+2
| | | | | | as additional argument. This will allow intermediate layers between scsi devices such as sd and scsi host adapters to take appropriate action if necessary.
* Return NO_CCB instead of TRY_AGAIN_LATER when ccb's run out.krw2008-11-241-2/+2
| | | | "I'm all for it." marco@ "Yeah" deraadt@
* More easy bzero() -> M_ZERO. Use 'p = malloc(sizeof(*p) ...'.krw2007-10-011-5/+3
|
* ctob is gone, use ptoamartin2007-09-021-2/+2
| | | | tested by ckuethe
* missing include and also use time_uptime as art suggested; compiles nowmickey2007-03-201-8/+9
|
* - struct scsibus_attach_args;mpf2006-12-181-2/+2
| | | | | | + struct scsibus_attach_args saa; OK miod@.
* give scsi controllers a real attach args to fill in when attaching scsibus.dlg2006-11-281-2/+6
| | | | ok miod@ marco@ deraadt@
* properly report errors thru scsi layer and not bio that will be overwritten later by scsi no no error; tested by mesel and nate@mickey2006-07-211-20/+5
|
* remove function prototypes for a few functions removed in rev 1.25.brad2006-04-281-5/+1
| | | | ok krw@
* Add support for the Adaptec RAID-On-Chip architecture. This in turnbrad2006-04-221-1/+80
| | | | | | | | provides support for the Adaptec 2130S and 2230SLP adapters. From FreeBSD ok dlg@
* Fix various printf() issues: too many arguments, not enough arguments, argumentmiod2006-04-201-2/+2
| | | | order reversed, wrong modifiers. ok deraadt@ marco@ mickey@
* typos from alexey dobriyan;jmc2006-02-061-12/+12
| | | | ok mickey marco mbalmer niklas brad
* Don't retry unsupported SCSI commands, causing large delays duringkrw2005-12-131-9/+5
| | | | | | boot process. Same as done to gdt and ioprbs. ok nate@
* The first thing done when XXX_scsi_cmd() returns TRY_AGAIN_LATER iskrw2005-12-031-3/+1
| | | | | | | | to set xs->error to XS_BUSY. So it is pointless and misleading to set xs->error to XS_TIMEOUT, XS_DRIVER_STUFFUP or XS_BUSY just before returning TRY_AGAIN_LATER. No functional change.
* Major improvements to the aac(4) device driver.nate2005-11-181-1247/+2399
| | | | | | | | | | | | | - decouple the command structures from scsi structures, allowing non block oriented commands (e.g. management commands) to be built. - redesign the various command queues to remove race conditions and to allow commands from multiple sources to coexist in the system - move major processing of commands and messages to a dedicated kernel thread to avoid spending too long in the interrupt handler - add device data structures for various management commands to the header file Much code from FreeBSD
* Don't fake MODE SENSE page 4 info inside raid drivers, just let sdkrw2005-09-151-44/+3
| | | | | | | fake a geometry. Page 4 info does not get used for size information. Eliminate now unused union scsi_disk_pages. ok marco@ mickey@ pre-lock.
* Test xs->bp before de-referencing it. Initialize it to NULL, not 0.krw2005-08-241-1/+6
| | | | ok deraadt@
* Parameter being passed __func__ must be const char *. Allows aac tokrw2005-08-211-3/+3
| | | | | | compile with AAC_DEBUG set. ok deraadt@
* Fix data_length values in simulationed MODE SENSE page 4 responses sokrw2005-07-031-3/+4
| | | | | | | | | | | | | that scsi_do_mode_sense() accepts them. The data_length value does not include itself, and the pg_length value in a mode page does not include itself or the page_code fields. We were +1 on the former and -2 on the latter resulting in a data_length value that was too small by one. Eliminates 'mode sense page 5 not simulated' messages. ok marco@