freebsd-src/sys
Matt Jacob b85389e117 Add in the enabling of interrupts (to isp_attach). Clean up a busted
comment. Check against firmware state- not loop state when enabling
target mode. Other changes have to do with no longer enabling/disabling
interrupts at will.

Rearchitect command watchdog timeouts-

First of all, set the timeout period for a command that has a
timeout (in isp_action) to the period of time requested *plus* two
seconds. We don't want the Qlogic firmware and the host system to
race each other to report a dead command (the watchdog is there to
catch dead and/or broken firmware).

Next, make sure that the command being watched isn't done yet. If
it's not done yet, check for INT_PENDING and call isp_intr- if that
said it serviced an interrupt, check to see whether the command is
now done (this is what the "IN WATCHDOG" private flag is for- if
isp_intr completes the command, it won't call xpt_done on it because
isp_watchdog is still looking at the command).

If no interrupt was pending, or the command wasn't completed, check
to see if we've set the private 'grace period' flag. If so, the
command really *is* dead, so report it as dead and complete it with
a CAM_CMD_TIMEOUT value.

If the grace period flag wasn't set, set it and issue a SYNCHRONIZE_ALL
Marker Request Queue entry and re-set the timeout for one second
from now (see Revision 1.45 isp.c notes for more on this) to give
the firmware a final chance to complete this command.
2000-06-27 19:31:02 +00:00
..
alpha Report the line number where gethints.pl does not understand something 2000-06-26 09:08:23 +00:00
amd64 Duh. Fix a fatfingered patch. 2000-06-25 19:06:48 +00:00
boot Comment this. 2000-06-26 23:58:04 +00:00
cam Fix breakage where we never were attaching SES devices because inq_len 2000-06-18 04:19:08 +00:00
coda Remove 42 unneeded #include <sys/ioccom.h>. 2000-05-03 07:31:38 +00:00
compat fix races in the uidinfo subsystem, several problems existed: 2000-06-22 22:27:16 +00:00
compile
conf Make the ng_ether(4) node type dynamically loadable like the rest. 2000-06-26 23:34:54 +00:00
contrib/dev Remove these here, these were repocopied to src/sys/ufs/ffs. 2000-06-23 00:11:32 +00:00
crypto Remove ~25 unneeded #include <sys/conf.h> 2000-04-19 14:58:28 +00:00
ddb Add a new sysctl "debug.enter_debugger" (when the kernel is compiled 2000-01-27 22:27:34 +00:00
dev Add in the enabling of interrupts (to isp_attach). Clean up a busted 2000-06-27 19:31:02 +00:00
fs Remove obsolete comment. 2000-06-25 02:29:45 +00:00
geom Separate the struct bio related stuff out of <sys/buf.h> into 2000-05-05 09:59:14 +00:00
gnu Fix typo (accessable --> accessible). 2000-06-14 17:53:40 +00:00
i4b Borrow phk's axe and apply the next stage of config(8)'s evolution. 2000-06-13 22:28:50 +00:00
i386 Fix some fat-fingering of the isic lines. (argh!) 2000-06-26 10:04:00 +00:00
isa Only print the diagnostic about extended I/O ports if bootverbose is true. 2000-06-25 09:20:56 +00:00
isofs/cd9660 Separate the struct bio related stuff out of <sys/buf.h> into 2000-05-05 09:59:14 +00:00
kern remove crufty exec stuff, perl is in the base system 2000-06-27 19:09:55 +00:00
libkern Comment out unavailable call. This needs to be revisited when the entropy 2000-06-25 10:15:58 +00:00
miscfs Rename the VRXEC' macro used to clear read and exec bits to FDRX' so 2000-06-20 20:34:11 +00:00
modules Build ng_ether(4) KLD. 2000-06-26 23:41:08 +00:00
msdosfs Remove obsolete comment. 2000-06-25 02:29:45 +00:00
net Make the ng_ether(4) node type dynamically loadable like the rest. 2000-06-26 23:34:54 +00:00
netatalk Just need to pass the address family to if_simloop(), not the whole sockaddr. 2000-05-24 21:16:56 +00:00
netatm Just need to pass the address family to if_simloop(), not the whole sockaddr. 2000-05-24 21:16:56 +00:00
netgraph Make the ng_ether(4) node type dynamically loadable like the rest. 2000-06-26 23:34:54 +00:00
netinet Fixed PunchFWHole(): 2000-06-27 14:56:07 +00:00
netinet6 Inhibit successful DAD messages and "no default interface" messages. 2000-06-22 19:04:41 +00:00
netipx Add $FreeBSD$ 2000-05-01 20:32:07 +00:00
netkey Check for MGET* returning NULL and return ENOBUFS in this case. 2000-06-10 17:55:57 +00:00
netnatm Back out the previous change to the queue(3) interface. 2000-05-26 02:09:24 +00:00
netncp Back out the previous change to the queue(3) interface. 2000-05-26 02:09:24 +00:00
netns Clean up some loose ends in the network code, including the X.25 and ISO 2000-02-13 03:32:07 +00:00
nfs Correctly set the Maximum DHCP Message Size. bootpd now works 2000-06-13 09:32:09 +00:00
nfsclient Correctly set the Maximum DHCP Message Size. bootpd now works 2000-06-13 09:32:09 +00:00
nfsserver Back out the previous change to the queue(3) interface. 2000-05-26 02:09:24 +00:00
ntfs Back out the previous change to the queue(3) interface. 2000-05-26 02:09:24 +00:00
nwfs Back out the previous change to the queue(3) interface. 2000-05-26 02:09:24 +00:00
pc98 Report the line number where gethints.pl does not understand something 2000-06-26 09:08:23 +00:00
pccard There is no atdevbase on the alpha. Hide this case statement on alpha until 2000-06-23 22:47:17 +00:00
pci If swdpio1 doesn't clear, we have a reversed (or disconnected) cable. Change 2000-06-25 02:04:27 +00:00
posix4 Add $FreeBSD$ 2000-05-01 20:32:07 +00:00
powerpc Support bounce buffers for ISA DMA on the alpha. This is required for the 2000-06-19 18:41:27 +00:00
rpc $Id$ -> $FreeBSD$ 1999-08-27 23:45:13 +00:00
svr4 fix races in the uidinfo subsystem, several problems existed: 2000-06-22 22:27:16 +00:00
sys Add extra flag needed by nulldev/mmap. 2000-06-25 09:41:09 +00:00
tools remove crufty exec stuff, perl is in the base system 2000-06-27 19:09:55 +00:00
ufs Move prtactive to vfs from ufs. It is used all over the place. 2000-06-27 07:46:22 +00:00
vm Nifty idea from Jeroen van Gelderen; don't call a routine to check if 2000-06-25 09:44:32 +00:00
Makefile If "MODULES_WITH_WORLD" is defined, sys/modules will be built with the 2000-06-17 10:51:56 +00:00