IABSD.fr/src/sys/scsi

Branch :


Log

Author Commit Date CI Message
9593dc34 2024-09-04 07:54:51 Fix some spelling. Input and ok jmc@, jsg@
0f9e9ec2 2024-05-13 01:15:50 remove prototypes with no matching function ok mpi@
450e503c 2024-05-04 16:40:38 dma_free(9) just once in error case buf is free'd and NULL, don't do it again to avoid a panic. OK krw
ddd4a1bc 2023-11-10 17:43:39 scsi_xs_get() sets xs->flags via scsi_xs_io(). There is no need to separately add another flag via SET(). Just pass the correct combo to scsi_xs_get(). ok dlg@
10c9f1ae 2023-08-02 19:58:52 Set a low water mark on scsi_xfer_pool and prime the pool. This way there will always be some scsi_xfer structures around. Hopefully that means the pagedaemon can actually write out pages to swap if we're out of physical memory. ok krw@
4e4f5ce5 2023-07-06 10:17:43 Use mtx_init() to initialize stack-based mutexes mtx_init() ensures the mutex' lock_object has static storage duration. This makes it safe to re-enable WITNESS with stack-based mutexes. OK bluhm@ miod@
7bcaece1 2023-05-25 19:35:58 Disable witness for mutexes created on the stack which allows the ddb command 'show witness' to succeed without panicking. Leaving witness enabled on these mutexes saves a pointer to struct lock_type on the stack which gets clobbered resulting in a panic in witness_ddb_display_descendants(). okay miod@
176eada0 2023-05-10 15:28:26 Add flag SDEV_UFI so umass_scsi_attach() can provide information sufficient to get sdgetdisklabel() to correctly set d_type to DTYPE_FLOPPY in the default disklabel. installboot(8) in particular likes to know it is dealing with a floppy. ok miod@
55cda490 2023-04-27 18:21:44 add support for I/O statistics so that tape speeds can be observed with iostat(8)
b3af768d 2023-04-11 00:45:06 fix double words in comments feedback and ok jmc@ miod, ok millert@
cb529a4b 2022-10-23 14:39:19 bzero(disklabel) or memset(disklabel,0) should be enough for anyone. No need to also set d_flags to 0.
b4b4e563 2022-09-01 13:45:26 Stop setting d_bbsize and d_sbsize. Nobody has paid any attention for some time. ok otto@ as part of larger diff
1525749f 2022-07-02 08:50:41 Remove unused device poll functions. Also remove unneeded includes of <sys/poll.h> and <sys/select.h>. Some addenda from jsg@. OK miod@ mpi@
a454aff3 2022-04-16 19:19:58 constify SCSI adapter entry points ok krw@
29220739 2022-04-06 17:39:13 Avoid traversing SLIST twice to remove a link. From millert@
ed3e5711 2022-04-06 13:23:58 Recognize LUN 0 device if SID_QUAL_LU_OFFLINE and T_NODEVICE are true. This enables the discovery and probing of other LUNs the target has to offer. Add uk* to amd64 RAMDISK_CD so such devices are configured. Allows bsd.rd as well as bsd[.mp] to boot on Oracle Cloud amd64 instances. Issue reported by Ryan Kavanagh and Scott Nicholas via bugs@. Original diff and much subsequent testing by Scott. Thanks! ok dlg@ jmatthew@
34ceb667 2022-04-02 17:25:10 Add a paranoia/future proofing check for link->pool == NULL to the SDEV_OWN_IOPL flag check. Ambiguous/inconsistant code pointed out by Coverity #1515557.
974883aa 2022-04-02 13:57:39 Bring back r1.247, using scsi_detach_link() to release a partially configured struct scsi_link. Problematic code path found by jungle Boogie was plugged by r1.249.
6b0fbbfd 2022-03-28 15:47:11 Only SLIST_REMOVE() a link when the link is on the list. Avoids a potential panic.
47561816 2022-03-24 00:30:51 Revert previous. Breaks probing native IDE devices. Problem reported by jungle Boogie via bugs@
3a69a23a 2022-03-23 14:36:01 When configuring a scsi_link that has passed dev_probe() but fallen at one of the subsequent hurdles of scsi_probe_link() don't partially replicate scsi_discard_link(). Just call scsi_discard_link(). It now handles such partially configured scsi_link's.
6db5dbff 2022-03-22 16:29:58 Nuke increasingly pointless comment. Shorten a line and compare pointer to NULL instead of 0. No functional change.
eab44964 2022-03-21 12:57:46 Whitespace tweaks.
22d8fe70 2022-03-21 00:20:40 No point in calling scsi_link_shutdown() if link->pool is NULL. Ditto config_detach() if link->device_softc is NULL. Currently just some extra paranoia, but will allow simplification of exit logic in scsi_probe_link() and other future uses of scsi_detach_link() on partially configured links. No intentional functional change.
45653f8b 2022-03-03 19:10:13 r1.241 was the culprit. Unrevert r1.240.
f565022d 2022-03-03 16:52:07 Revert r1.241 and r1.240 which may have broken softraid.
f84da9bf 2022-03-02 17:47:11 Abstract the memory allocation, scsibus_softc data copying and flag setting bits of creating a scsi_link into scsi_alloc_link(). Shrinks the bloated scsi_probe_link() a bit, makes it possible to eventually create a useable scsi_link even when scsi_probe_link() can't attach a device. Developed from part of a diff submitted by Scott Nicholas via tech@.
bce6894f 2022-03-02 13:58:08 Move the code obtaining the LUN 0 scsi_link used to determine the LUNs available to a target into scsi_get_target_luns(). Clearer code and prep for future changes. No functional change. Extracted from a larger diff submitted by Scott Nicholas via tech@.
7d920e80 2022-02-28 14:48:11 Shuffle some SCSIDEBUG code to simplify code, tersify the emitted verbiage, and show INQUIRY header & vendor info early so humans can more easily determine what scsi_probe_link() will do. No functional change outside SCSIDEBUG.
dd2bb779 2022-02-27 02:27:55 SC_DEBUG() requires an initialized scsi_link. Shuffle code to make it so. Pointed out by clang when prodded with SCSIDEBUG.
e471ee1c 2022-01-11 23:10:11 spelling
9eaf72d1 2021-10-24 16:57:30 Constify struct cfattach. ok visa@ a long time ago, ok krw@
a3f7ec94 2021-08-31 05:29:55 add support for obtaining sense status and source slot of a media this fixes a bug in bacula where the catalog was not properly kept up-to-date if a tape was in a drive becuse its source slot was unknown based on code from FreeBSD; ok krw@ picker 0: sense: <0x00/0x00> voltag: <:0> avoltag: <:0> source: <> slot 0: <ACCESS,FULL> sense: <0x00/0x00> voltag: <XX1168L1:0> avoltag: <:0> source: <slot 0> slot 1: <ACCESS,FULL> sense: <0x00/0x00> voltag: <XX1187L1:0> avoltag: <:0> source: <slot 1> slot 2: <ACCESS,FULL> sense: <0x00/0x00> voltag: <XX1184L1:0> avoltag: <:0> source: <slot 2> slot 3: <ACCESS,FULL> sense: <0x00/0x00> voltag: <XX1195L1:0> avoltag: <:0> source: <slot 3> slot 4: <ACCESS,FULL> sense: <0x00/0x00> voltag: <XX1037L1:0> avoltag: <:0> source: <slot 4> slot 5: <ACCESS,FULL> sense: <0x00/0x00> voltag: <XX1038L1:0> avoltag: <:0> source: <slot 5> slot 6: <ACCESS,FULL> sense: <0x00/0x00> voltag: <XX1166L1:0> avoltag: <:0> source: <slot 6> slot 7: <ACCESS,FULL> sense: <0x00/0x00> voltag: <XX1167L1:0> avoltag: <:0> source: <slot 7> slot 8: <ACCESS,FULL> sense: <0x00/0x00> voltag: <XX1180L1:0> avoltag: <:0> source: <slot 8> slot 9: <ACCESS,FULL> sense: <0x00/0x00> voltag: <XX1186L1:0> avoltag: <:0> source: <slot 9> slot 10: <ACCESS> sense: <0x00/0x00> voltag: <:0> avoltag: <:0> source: <picker 0> slot 11: <ACCESS,FULL> sense: <0x00/0x00> voltag: <XX1182L1:0> avoltag: <:0> source: <slot 11> slot 12: <ACCESS,FULL> sense: <0x00/0x00> voltag: <XX1181L1:0> avoltag: <:0> source: <slot 12> slot 13: <ACCESS,FULL> sense: <0x00/0x00> voltag: <XX1196L1:0> avoltag: <:0> source: <slot 13> slot 14: <ACCESS,FULL> sense: <0x00/0x00> voltag: <XX1169L1:0> avoltag: <:0> source: <slot 14> slot 15: <ACCESS,FULL> sense: <0x00/0x00> voltag: <XX1197L1:0> avoltag: <:0> source: <slot 15> slot 16: <ACCESS,FULL> sense: <0x00/0x00> voltag: <XX1165L1:0> avoltag: <:0> source: <slot 16> slot 17: <ACCESS,FULL> sense: <0x00/0x00> voltag: <XX1199L1:0> avoltag: <:0> source: <slot 17> slot 18: <ACCESS,FULL> sense: <0x00/0x00> voltag: <XX1189L1:0> avoltag: <:0> source: <slot 18> slot 19: <ACCESS,FULL> sense: <0x00/0x00> voltag: <XX1185L1:0> avoltag: <:0> source: <slot 19> slot 20: <ACCESS,FULL> sense: <0x00/0x00> voltag: <XX1198L1:0> avoltag: <:0> source: <slot 20> slot 21: <ACCESS,FULL> sense: <0x00/0x00> voltag: <XX1039L1:0> avoltag: <:0> source: <slot 21> slot 22: <ACCESS,FULL> sense: <0x00/0x00> voltag: <XX1035L1:0> avoltag: <:0> source: <slot 22> slot 23: <ACCESS,FULL> sense: <0x00/0x00> voltag: <XX1188L1:0> avoltag: <:0> source: <slot 23> drive 0: <ACCESS,FULL> sense: <0x00/0x00> voltag: <XX1183L1:0> avoltag: <:0> source: <slot 10>
7a992fac 2021-05-13 02:22:33 Whitespace fix for unintentional unindenting event in r1.260. Reported by Ashton Fagg via tech@. Thanks!
84f3acfd 2021-03-12 10:22:46 spelling
6b0aba5f 2020-11-19 13:45:15 TL;DR -- don't configure devices that return insufficient INQUIRY data. Treat INQUIRY data with fewer than SID_SCSI2_HDRLEN bytes as invalid. Use only INQUIRY data returned by the device. Get all available INQUIRY data (up to sizeof(struct scsi_inquiry_data)) even when SCSIDEBUG is not set. Tweak returned INQUIRY data so additional_length field does not point past end of returned data when available data is greater than sizeof(struct scsi_inquiry_data). Missing dmafree() spotted by gnezdo@. ok jmatthew@.
f31f903f 2020-10-14 23:40:33 Introduce scsi_copy_internal_data() to copy 'faked' data from a driver to a scsi_xfer. Will replace various equivalent functions/hand-rolled chunks, none of which were setting xs->resid.
5c6e2d25 2020-09-23 15:24:16 Remove 'void *sc_sdhook' member of sd_softc. Unused since mpi@ removed sd_shutdown() in 2014.
664c6166 2020-09-22 19:32:51 Since dlg@'s 2009 scsi midlayer refactoring the 'struct scsi_generic *cmd' member of 'struct scsi_xfer' has always been pointed at the 'struct scsi_generic cmdstore' member of the same instance. So nuke 'cmdstore' and remove the '*' from cmd. Take the address of cmd as required by the various casts. No intentional functional change. luna88k test by aoyama@, sparc64 test by jmatthew@ Identification of 2009's last *cmd use and ok jmatthew@
37656c4c 2020-09-14 18:44:54 No need to check for SDEV_DYING as the first thing in both branches of an if/else. Just do it once before the if. Move the SC_DEBUG() documenting entry into sdopen() to before the various error bailouts.
3e16148d 2020-09-13 14:26:56 Always use READ(16)/WRITE(16) commands for disks large enough to require READ(16)/WRITE(16) to access the last sectors Fixes (at least) large 512E (a.k.a. emulated 512-byte sector) devices plugged into overly helpful USB <-> ATA/ATAPI bridges. Which can tell you they are using 512-byte sector addresses but spontaneously/silently interpret READ(10)/WRITE(10) commands as using 4K sector addresses/sizes. Diagnosed and fix tested with James Cook. Thanks!
3da569d0 2020-09-12 17:03:51 Use SID_SCSI2_RESPONSE instead of '2' when checking INQUIRY data format.
7be1499a 2020-09-12 16:51:04 No need to check inq for NULL when it always points at the inqdata inside a scsi_link.
96a16d09 2020-09-12 15:54:51 No need to ask for extra INQUIRY data, all available data is already cached in scsi_link's inqdata.
ac22ea16 2020-09-08 12:36:42 If SCSI_IGNORE_ILLEGAL_REQUEST is set no error is returned from scsi_xs_sync() when the request is unsupported. So check mode sense(6) and mode sense(10) results for valid headers before passing the results back. Avoid overwriting any error that was returned. ok jmatthew@
65e0582e 2020-09-05 14:21:52 Rename SID_INQUIRY_HDR (a.k.a. 5) to more explicit SID_SCSI2_HDRLEN and use it to replace various uses of '5' when calculating the amount of data in the INQUIRY response. Matches up more naturally with SID_SCSI2_ALEN. Also use to fix SCSIDEBUG display of INQUIRY responses to show correct count of bytes received/available.
ed09ea98 2020-09-02 23:41:01 Add #define SID_SCSI2_RESPONSE 0x2 to allow elimination of another bunch of magic numbers. As the nearby comment says '< 2 is obsolete. >2 is reserved'. So 0x2 is just right.
eccd596d 2020-09-01 12:17:52 Rename [READ|WRITE]_BIG to [READ|WRITE]_10. Rename struct scsi_rw_big to struct scsi_rw_10. ok gnezdo@ jmatthew@ (who also did sparc64 compile test)
626e0bda 2020-08-30 19:41:25 Compactify SDEV_/ADEV_ flags & quirks to eliminate the gaps in bit use and thus allow shrinking the names arrays.
b8fc71d1 2020-08-29 19:34:07 More recent MMC specificiations add READ(12)/WRITE(12). So add cd_cmd_rw12() and let cdstart() use it if the requested i/o is unable to fit into a READ(10). Certainly better than silently truncating the i/o into a READ(10)/WRITE(10).
57a0c0c6 2020-08-29 18:20:12 Use ISSET() to check b_flags for B_READ.
3da91bb4 2020-08-29 17:10:06 Missing u_int -> u_int32_t chunks from previous.
81e09b69 2020-08-29 16:07:19 Use u_int32_t for nsecs, making it crystal clear that the values are expected to fit into a 4-byte field.
4459c984 2020-08-29 02:03:31 Have [cd|sd]_cmd_rw[6|10|12|16] return the length of the created command and have the caller assign it to xs->cmdlen. Pass in xs->cmd instead of xs. A slightly cleaner API that provides the potential of detecting and reacting to a failure to create the desired command.
257244d2 2020-08-28 21:01:54 Shuffle [cd|sd]start code into closer alignment. Move the initialization of the xs fields to a more convenient location, shrinking upcoming diffs. Nuke some Captain Obvious comments.
927e8030 2020-08-28 18:57:16 Abstract cd_cmd_rw6() and cd_cmd_rw10() a la sd_cmd_rw6() and sd_cmd_rw10().
b9499433 2020-08-28 15:18:14 Nuke CDF_ANCIENT, SDF_ANCIENT SDEV_ONLYBIG and bogus check of SID_RelAdr in favour of simply using the device's claimed SCSI level of support. Except of course for ATAPI/USB devices which often don't claim anything. Keep assuming they are at least SCSI-2. Use consistant tests in sdminphys/cdminphys/sdstart/cdstart.
fc548c49 2020-08-26 13:57:19 Remove needless uses of SDEV_ONLYBIG. It was always set when SDEV_UMASS was set, and was always checked in concert with SDEV_ATAPI. Just rely on SDEV_ATAPI and SDEV_UMASS in all but the one place sd(4) where SDEV_ONLYBIG is set independently of SDEV_ATAPI/_UMASS. ok jmatthew@
6a0d0cec 2020-08-22 15:07:11 The last timeout_add(sc_timeout) died in the great XS_NO_CCB purge of 2017. Nuke pointless timeout_set(sc_timoeut) and timeout_del(sc_timeout) calls and the sc_timeout fields themselves.
d35ed37d 2020-08-20 01:47:45 Revert DYING. At least some USB memory sticks get very upset.
382a5d4c 2020-08-19 22:46:19 Replace last 2 'blah & (flag1 | flag2) == 0' with !ISSET(blah, (flag1 | flag2)).
9ed449b7 2020-08-19 14:53:39 Nuke SDF_DYING, CDF_DYING and ST_DYING flags. Use the scsi_link flag SDEV_S_DYING instead. Makes it clear that the scsi_link and the [cd|sd|st] device always agree on their state.
f803c2f9 2020-08-18 16:30:38 Try to avoid a theoretical infinite loop while detaching all the scsi_link's on the bus. Use SLIST_FOREACH_SAFE() rather than 'while (!SLIST_EMPTY())'' as there is a condition which would cause scsi_detach_link() to return without removing the scsi_link from the SLIST.
ecb1c2be 2020-08-16 13:39:21 Don't include scsi_debug.h via scsiconf.h. Nobody but scsi/* should be using the contents thereof. Compile tests by martjn@ (alpha), visa@ (sgi) jmatthew@ (sparc64) aoyama@ (luna88k)
66dcdfe8 2020-08-15 17:50:45 The last SET()s of CDF_WAITING, SDF_WAITING, and ST_WAITING died in the great XS_NO_CCB purge of 2017. Nuke pointless ISSET()/CLR() checks and the #define's.
58fa39c1 2020-08-14 16:45:48 Redistribute and tweak the scsi_[attach|probe|detach]_[bus|target|lun]() code to make the three variants more similar and easier to understand. Ensures consistent error checks and eliminates pointless adapter_buswidth checks when processing the list of scsi_links.
bba39a67 2020-08-11 15:23:57 Explicitly #include <scsi/scsi_debug.h> rather than assuming scsiconf.h will do it. Prepares for removal of #include <scsi/scsi_debug.h> from scsiconf.h as soon as the alpha tester digs out from hurricane to compile last untested files.
ae7c6741 2020-08-10 12:12:44 Minor code shuffle to get all *_activate(), *_probe() and *_detach() functions nestled together. Rename scsibusprint() to scsibussubprint() since it is used with scsibussubmatch().
9c2a17ab 2020-08-09 15:06:01 More code shuffling. Fix a rename missed in previous.
14832242 2020-08-09 13:29:08 Shuffle functions and declarations around to more logical grouping. Nuke some leading whitespace. Rename some local functions.
cdca80fc 2020-08-08 13:08:23 scsi_link's are born knowing their bus. Use that instead of passing extra scsibus_softc pointers around.
c85ebcd4 2020-07-27 19:19:49 Refactor scsi_show_flags() to allow 32-bit flags. Display unnamed flags as one hex value after named flags. Make flag name arrays NULL terminated rathar than fixed size.
6e0c44f3 2020-07-27 13:08:25 SDEV_2NDBUS is gone. Update flagnames[] appropriately.
7380a3a4 2020-07-22 13:16:04 Nuke unused struct scsi_link members of adapter softc's where the driver successfully compiles on one or more of amd64, i386, hppa.
e5eae15d 2020-07-20 14:41:12 Move remaining scsi bus initialization info from "prototype scsi link" fields to struct scsibus_attach_args. Nuke the struct scsi_link * (saa_sc_link) in scaibus_attach_args. Explicitly initialize each field in scsibus_attach_args variables.
ead808c4 2020-07-19 18:57:57 Move the adapter related items (luns, adapter, adapter_target, adapter_buswidth, adapter_softc) from struct scsi_link to struct scsibus_attach_args. Additional compile tests by jmatthew@ (sparc64) and aoyam@ (luna88k).
67c3123b 2020-07-16 14:44:55 Access scsibus_softc info (luns, adapter, adapter_target, adapter_softc, adapter_buswidth) via link->bus rather than using copies currently residing in the link.
41e86d54 2020-07-16 12:38:43 Beef up struct scsibus_softc to hold the information needed to initialize the scsi_link's on the bus. After sucking this information out of the "prototype" link provided by the scsibus_attach_arg, no need to keep a pointer to that prototype.
17e73562 2020-07-05 20:17:25 Nuke struct scsi_link's "scsibus" member. The two drivers using it (ahc(4) and qlw(4)) can just compare the values of the "bus" member directly. A slightly different path to the same result that matthew@ traversed in his work culminating in scsiconf.h r1.146.
0fbd355c 2020-06-30 18:43:36 Nuke unneeded 'sa_inqbuf' member of struct scsi_attach_args. It always points to the inquiry data contained in the struct scsi_link pointed to by the other member, sa_sc_link.
a667fc03 2020-06-30 18:05:02 Garbage collect SDEV_S_WAITING, last used in scsi_base.c r1.167 in 2010. Part of matthew@'s reverted scsiconf.h r1.146.
1b83eff9 2020-06-27 21:01:20 Garbage collect SDEV_2NDBUS. Only used in isp(4) which was removed in 2015 in favour of ql*(4).
a7997e14 2020-06-27 14:29:44 No need to bzero()/memset() 'struct scsibus_attach_args' variables immediately before initializing the only field in the struct.
182e13b7 2020-06-24 18:59:30 Use SDEV_NO_ADAPTER_TARGET instead of the value that is being aassigned to adapter_buswidth to indicate the adapter is not a target on the bus. ok dlg@ as part of a larger diff.
13a00b8a 2020-06-24 16:07:53 Adapters that do not appear as a target on the SCSI bus must set 'adapter_target' to a value greater than or equal to 'adapater_buswidth' to allow all possible targets to be probed. Add SDEV_NO_ADAPTER_TARGET (0xffff), a value guaranteed to be greater than or equal to the u_int16_t 'adapter_buswidth'. ok dlg@ as part of a larger diff.
586de4b8 2020-03-12 19:21:01 Pass scsi_mode_sense_buf pointers to scsi_mode_sense[_buf]() rather than scsi_mode_header[_big] pointers to the same data. Continues the umtamgling and simplification of the mode sense code. CID 1491299 CID 1491297
b9aee7ab 2020-03-12 16:15:03 Check for short mode sense error inside scsi_mode_sense_big() rather than after the only invocation. No functional change.
fe20f155 2020-03-12 13:49:25 Eliminate 'len' parameter from scsi_mode_sense[_big](). It's always sizeof(struct scsi_mode_sense_buf). No functional change.
b2c9587a 2020-03-11 19:23:08 No need to pass 20000 to scsi_mode_sense[_big]() as the desired xs->timeout. Just set xs->timeout to 20000 and drop the parameter. No functional change.
1d2f13ac 2020-03-10 02:01:21 Access 4-byte address field with _4btol() not _8btol(), fixing detecton of a 0 value. CID 1488899
7f649021 2020-02-20 16:26:01 Relax the grip the dead hand of QBUS (a.k.a. MAXPHYS) has on the throat of physio(). Allows individual devices to eventually be modified to support larger physio() (a.k.a. 'raw') i/o's if they prove capable of them. No immediate functional change. Tested for many weeks by and ok robert@.
4674773e 2020-02-06 21:06:15 Try to reduce the lying, hyperbolic or obsolete commentary on the relationships between various scsi structs.
ca82ddf5 2020-02-05 21:50:41 Ooops. Missed a file in nuke of scsi_minphys. mpath_minphys() needs to check dev_minphys for NULL before calling it.
21ceeee0 2020-02-05 16:29:29 Nuke unnecessary abstraction 'scsi_minphys()' which just calls 'minphys()'. Just use & check for NULL instead, since 'minphys()' is always called on the code path ([cd|sd|st]minphys) that calls physio().
0d9c2585 2020-01-27 07:41:02 Make the commonalities of cdminphys, sdminphys and stminphys more obvious by consistently using the variable names and idiom of sdminphys. No functional change.
9f36bc94 2020-01-26 00:53:31 Shuffle some names around to make reading the code less headache inducing. Rename scsi_adapter member 'scsi_minphys' to 'dev_minphys' to reflect what it is supposed to do. Use consistent naming convention (<dev>_minphys) for the actual device functions. No functional change.
f5f2a2d0 2020-01-25 21:40:34 Ensure scsi_minphys() is always called on the physio() path. Will allow simplification of individual driver *minphys() functions. ok jmatthew@ as part of larger diff
854a1b2d 2020-01-24 05:14:51 cleanup unused headers generated by config ok tedu@ krw@ deraadt@
a867c811 2020-01-23 07:52:59 Use a consistant idiom/format when declaring scsi_adapter structures in drivers. Terse one liners, NULLs instead of 0's, explicitly specify all members, etc. Nuke #ifdef notyet blocks related to the scsi_adapter in aic. No intentional functional change. ok tedu@
911b201f 2020-01-22 00:17:46 scsi_delay(): sleep without lbolt If we want to sleep for a multiple of seconds we can do that without involving lbolt. This may cause some paths to sleep longer than they have on average, as sleeping on lbolt wakes you up within one second, not after one second. If this is a problem we will need to shorten the intervals given to scsi_delay(). With insight from deraadt@. ok krw@