freebsd-dev/sys
Duncan Barclay 9385b6d6d7 A bit of a messy monster.
Simple stuff
------------

	Split _download up so that the MIB settings are in their own functions.

	Made "tx completed but status is ..." a recoverable error

	Cut down verbosity of "unloaded" messages

	Moved ccs_free and com_runq from intr_ccs to ecf_done and runq_done
	to avoid embarasing mistakes and waits.

	Merged runq_add and runq_arr into one and called it runq_add

	Made RAY_COM_DUMP a real debug called RAY_DCOM

	Consistnet debugging around tsleeps.

	Use bus_activate_resource for attr/cm mapping, and set the flags
	correctly in the allocation routines (needs more hacks to
	sys/pccard/pcic.c)

	com_malloc is now seperated from the comq initialization. This was
	done whilst trying to set automatic variables for the comqs.

Harder Stuff
------------

	As part of the IFF_RUNNING fixes, remove the panic in runq if we are
	not running.

	Change, again, runq_add. This time we don't do any cleaning up
	if there were errors. This is so that callers get the chance
	to re-try (not that I ever see it being used).

	In runq_add, only sleep when there is something to sleep on!

	ioctl locking routines, stolen from awi.c but not used


Hardest Stuff
-------------

	Dealing with serialing ioctls correctly means that we must QUEUE
	changes to IFF_RUNNING and check it in the QUEUED commands, not
	in the user commands. Whilst simple to state, it took a few
	hours of head scratching to get it right. The realisation was that
	I only have to guarantee that sub-commands from a single process
	are serialised and "atomic", and that they check the status of the
	interface flags when invoked and not when they are queued.

	Another way of looking at it, is that the driver's state is stored
	in the runq and the IFF_RUNNING flag. These must be changed together.

	What this means practically, is that IFF_RUNNING is set after
	we have started/joined/associated with a network. And it is
	cleared by ray_stop via the runq so that unfinsished commands are
	not distrupted.

	I still have to fix up promisc, upp/repparams and mcast.

	Oh yeah, stop is essentially a noop in that it only
	changes IFF_RUNNING
2000-05-28 23:10:12 +00:00
..
alpha Part of AS2100 support that I neglected to commit last night 2000-05-28 17:52:08 +00:00
amd64 Add a new pmap entry point, pmap_enter_temporary() to be used during 2000-05-28 15:49:55 +00:00
boot Strip spaces and comments more agressively. 2000-05-26 22:58:10 +00:00
cam Add a new pmap entry point, pmap_enter_temporary() to be used during 2000-05-28 15:49:55 +00:00
coda Remove 42 unneeded #include <sys/ioccom.h>. 2000-05-03 07:31:38 +00:00
compat Back out the previous change to the queue(3) interface. 2000-05-26 02:09:24 +00:00
compile
conf Encapsulate the old PCI compatability support and APIs completely under 2000-05-28 16:35:57 +00:00
contrib Fix a reference to an old FreeBSD 2.2 register name. 2000-05-28 16:21:45 +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 A bit of a messy monster. 2000-05-28 23:10:12 +00:00
fs Back out the previous change to the queue(3) interface. 2000-05-26 02:09:24 +00:00
geom Separate the struct bio related stuff out of <sys/buf.h> into 2000-05-05 09:59:14 +00:00
gnu Mass update of isa drivers using compatability shims to use 2000-05-28 13:40:48 +00:00
i4b Make this compile without the old 2.2 compatability defines. 2000-05-28 16:24:17 +00:00
i386 Add a new pmap entry point, pmap_enter_temporary() to be used during 2000-05-28 15:49:55 +00:00
isa Add SUP1670 - Supra 336i V+ Intl. Since we update the PnP IDs 2000-05-26 11:41:08 +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 Add taskqueue system for easy-to-use SWIs among other things. 2000-05-28 15:45:30 +00:00
libkern Add $FreeBSD$ 2000-05-01 20:32:07 +00:00
miscfs Back out the previous change to the queue(3) interface. 2000-05-26 02:09:24 +00:00
modules Use .include <bsd.kmod.mk> to get to ../../*/conf/kmod.mk instead of 2000-05-27 01:14:33 +00:00
msdosfs Separate the struct bio related stuff out of <sys/buf.h> into 2000-05-05 09:59:14 +00:00
net Rather than checking for hlen causing misalignment, we should do the 2000-05-26 13:47:02 +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 Back out the previous change to the queue(3) interface. 2000-05-26 02:09:24 +00:00
netinet define CSUM_DELAY_DATA to match merge 2000-05-26 07:28:03 +00:00
netinet6 Back out the previous change to the queue(3) interface. 2000-05-26 02:09:24 +00:00
netipx Add $FreeBSD$ 2000-05-01 20:32:07 +00:00
netkey Back out the previous change to the queue(3) interface. 2000-05-26 02:09:24 +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 Back out the previous change to the queue(3) interface. 2000-05-26 02:09:24 +00:00
nfsclient Back out the previous change to the queue(3) interface. 2000-05-26 02:09:24 +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 The dreaded isa_compat.h tables are no longer used, so there is no need 2000-05-28 13:32:49 +00:00
pccard Make this compile without depending on the FreeBSD 2.2 compatability 2000-05-28 16:31:35 +00:00
pci Encapsulate the old PCI compatability support and APIs completely under 2000-05-28 16:35:57 +00:00
posix4 Add $FreeBSD$ 2000-05-01 20:32:07 +00:00
powerpc Handle PCI devices that actually use an ISA IRQ for the cia and tsunami 2000-05-10 18:54:28 +00:00
rpc
svr4 Back out the previous change to the queue(3) interface. 2000-05-26 02:09:24 +00:00
sys Add taskqueue system for easy-to-use SWIs among other things. 2000-05-28 15:45:30 +00:00
tools Use a seperate -c and -h mode. The vnode_if.c file is compiled only into 1999-12-12 16:43:05 +00:00
ufs Back out the previous change to the queue(3) interface. 2000-05-26 02:09:24 +00:00
vm Add a new pmap entry point, pmap_enter_temporary() to be used during 2000-05-28 15:49:55 +00:00
Makefile Cause modules to build with the kernel build. Modules are removed 2000-05-02 02:26:04 +00:00