freebsd-dev/sys/dev
Marius Strobl 1f317bf968 - In gem_ioctl() move the call to ether_ioctl() to the default case of
the switch statement in order to make this driver more like other
  Ethernet NIC drivers.
- In gem_attach() call gem_stop() in addition to gem_reset() to make
  sure the chip actually is stopped and not just reset.
- In gem_stop() also stop the gem_rint_timeout() callout in case the
  driver is compiled with GEM_RINT_TIMEOUT defined.

Merge some locking improvements from hme(4):
- Use callout_init_mtx() to close races between gem_stop() and gem_tick()
  as weel as gem_stop() and gem_rint() in case the driver is compiled
  with GEM_RINT_TIMEOUT defined.
- Use the driver lock instead of Giant in a bus dma callback.
- Lock the driver lock around mii operations.
- Cleanup locking in gem_ioctl().
- Remove redundant assertions that the driver lock is not held in
  gem_attach() and gem_detach() since mtx_lock() will assert that
  already since the driver lock is not recursive.
- Add callout_drain()'s to gem_detach() after calling gem_stop() to make
  sure that if softclock is running on another CPU and is blocked on our
  driver lock, we will wait until it has acquired the lock, seen that it
  was cancelled, dropped the lock, and awakened us so that we can safely
  destroy the mutex.
2005-09-18 13:23:19 +00:00
..
aac Bring aac_cam into line with using time_uptime instead of time_second. 2005-09-14 05:49:34 +00:00
acpi_support Canonize the include of acpi.h. 2005-09-11 18:39:03 +00:00
acpica Commit a workaround to a problem with resource allocation. This helps 2005-09-16 07:02:29 +00:00
adlink
advansys Don't try to probe ISA PnP devices for now until this driver can grow a 2005-07-13 15:44:53 +00:00
agp Add a new AGP driver for ATI IGP chipsets. The driver is based on reading of 2005-09-17 03:36:47 +00:00
aha Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
ahb Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
aic Eliminate unused argument in PCMCIA_CARD macro. 2005-06-24 14:36:54 +00:00
aic7xxx Back out change accidentally committed as Makefile:1.21 -- a local 2005-08-03 00:47:33 +00:00
amd Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
amr Complete the removal of __FreeBSD_version checks from the amr driver. The 2005-08-08 12:16:21 +00:00
an Propagate rename of IFF_OACTIVE and IFF_RUNNING to IFF_DRV_OACTIVE and 2005-08-09 10:20:02 +00:00
ar Propagate rename of IFF_OACTIVE and IFF_RUNNING to IFF_DRV_OACTIVE and 2005-08-09 10:20:02 +00:00
arcmsr Use same RID we allocated the resource with to free it 2005-06-05 23:05:26 +00:00
arl Propagate rename of IFF_OACTIVE and IFF_RUNNING to IFF_DRV_OACTIVE and 2005-08-09 10:20:02 +00:00
asr Only create the rdpti alias if the asr device creation succeeds. 2005-04-29 04:47:11 +00:00
ata Harden the hotplug support for SATA devices. 2005-09-14 12:45:06 +00:00
ath Fix "struct ifnet" leak on detach. 2005-09-16 10:09:23 +00:00
atkbdc - Hook up the new locations of the atkbdc(4), atkbd(4) and psm(4) source 2005-06-10 20:56:38 +00:00
auxio Switch from trying to allocate up to 8 register banks for the EBus 2005-07-10 10:33:00 +00:00
awi fix handling of the current channel (missed in previous commit) 2005-08-13 00:30:26 +00:00
bfe Fix "struct ifnet" leaks when attach() fails in the middle. 2005-09-16 11:25:19 +00:00
bge Fix "struct ifnet" leaks when attach() fails in the middle. 2005-09-16 11:25:19 +00:00
bktr Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
buslogic Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
cardbus
ciss There's no reason to check the valence. This allows ciss to work 2005-08-09 20:53:51 +00:00
cm Propagate rename of IFF_OACTIVE and IFF_RUNNING to IFF_DRV_OACTIVE and 2005-08-09 10:20:02 +00:00
cnw Fix "struct ifnet" leaks when attach() fails in the middle. 2005-09-16 11:25:19 +00:00
cp Reorder code to not depend on an ISO-C illegal forward extern declaration. 2005-09-07 09:53:35 +00:00
cpufreq
cs Propagate rename of IFF_OACTIVE and IFF_RUNNING to IFF_DRV_OACTIVE and 2005-08-09 10:20:02 +00:00
ct Change a directory layout for pc98. 2005-05-10 12:02:18 +00:00
ctau Reorder code to not depend on an ISO-C illegal forward extern declaration. 2005-09-07 09:53:35 +00:00
cx Reorder code to not depend on an ISO-C illegal forward extern declaration. 2005-09-07 09:53:35 +00:00
cy
dc Fix "struct ifnet" leaks when attach() fails in the middle, e.g. 2005-09-16 11:11:51 +00:00
dcons
de - Use m_defrag() instead of homerolling our own variant 2005-08-26 14:27:38 +00:00
dec
digi Increase boot-time DigiBIOS initialization timeout to allow 2005-09-14 15:18:12 +00:00
dpt Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
drm Fix a buffer aging problem in new r300 code that could lead to hangs with some 2005-08-01 17:50:19 +00:00
ed Fix "struct ifnet" leaks when attach() fails in the middle. 2005-09-16 11:25:19 +00:00
eisa Make the eisa probe messages just like all the others in the system. 2005-08-01 07:09:15 +00:00
em Fix "Memory modified after free" panic on detach, caused by accessing 2005-09-14 10:28:01 +00:00
en Fix "struct ifnet" leaks when attach() fails in the middle. 2005-09-16 11:25:19 +00:00
ep MFp4: Migrate from CARD_CIS_SCAN to pccard_cis_scan 2005-09-13 19:56:07 +00:00
esp - Try to not leak resources in the attach functions of the esp(4) SBus 2005-05-19 14:51:10 +00:00
ex Fix "struct ifnet" leaks when attach() fails in the middle. 2005-09-16 11:25:19 +00:00
exca
fatm Propagate rename of IFF_OACTIVE and IFF_RUNNING to IFF_DRV_OACTIVE and 2005-08-09 10:20:02 +00:00
fb - Declare lookup tables etc. const. [1] 2005-07-10 11:43:20 +00:00
fdc Canonize the include of acpi.h. 2005-09-11 18:39:03 +00:00
fe Fix "struct ifnet" leak if attach() fails in the middle. 2005-09-16 12:49:06 +00:00
firewire Remove an unnecessicary bzero that was zeroing the softc's struct ifnet 2005-08-17 18:53:06 +00:00
fxp Add callout_drain()'s to foo_detach() after calling foo_stop() to make sure 2005-08-17 17:44:32 +00:00
gem - In gem_ioctl() move the call to ether_ioctl() to the default case of 2005-09-18 13:23:19 +00:00
gfb Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
harp Stop embedding struct ifnet at the top of driver softcs. Instead the 2005-06-10 16:49:24 +00:00
hatm Fix "struct ifnet" leaks when attach() fails in the middle. 2005-09-16 11:25:19 +00:00
hfa Stop embedding struct ifnet at the top of driver softcs. Instead the 2005-06-10 16:49:24 +00:00
hifn These registers are saved by pci bus code. Remove from #if 0'd code anyway 2005-06-05 22:57:32 +00:00
hme Move hme_stop() after ether_ifdetach() and if_free() to prevent a 2005-09-08 13:50:16 +00:00
hptmv Fix a typo that broke LINT. 2005-09-08 14:13:36 +00:00
hwpmc Process one NMI interrupt per handler invocation as the processor 2005-09-12 15:55:44 +00:00
ic cosmetic change. 2005-05-14 10:26:31 +00:00
ichsmb Make ichsmb unloadable. 2005-07-29 00:20:50 +00:00
ichwd
ida Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
idt Stop embedding struct ifnet at the top of driver softcs. Instead the 2005-06-10 16:49:24 +00:00
ie Fix "struct ifnet" leaks when attach() fails in the middle. 2005-09-16 11:25:19 +00:00
ieee488 First cut at a driver for National Instruments PCI-GPIB hardware. 2005-09-15 13:27:16 +00:00
if_ndis Propagate rename of IFF_OACTIVE and IFF_RUNNING to IFF_DRV_OACTIVE and 2005-08-09 10:20:02 +00:00
iicbus Remove public declarations of variables that were forgotten when they were 2005-08-10 07:10:02 +00:00
iir Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
io
ips Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
ipw Remove IEEE80211_C_WPA from capabilities flags. WPA support is not fully 2005-08-20 15:03:41 +00:00
isp AT_MAKE_TAGID needs an instance as the 2nd arg- not just a 0. 2005-07-31 23:21:19 +00:00
ispfw
iwi o Add initial bits for IBSS support. 2005-09-17 12:41:05 +00:00
ixgb Propagate rename of IFF_OACTIVE and IFF_RUNNING to IFF_DRV_OACTIVE and 2005-08-09 10:20:02 +00:00
joy
kbd kbdmux(4) keyboard multiplexer integration 2005-07-13 23:58:57 +00:00
kbdmux kbdmux(4) keyboard multiplexer integration 2005-07-14 22:43:20 +00:00
led
lge Propagate rename of IFF_OACTIVE and IFF_RUNNING to IFF_DRV_OACTIVE and 2005-08-09 10:20:02 +00:00
lnc Fix "struct ifnet" leak if attach() fails in the middle. 2005-09-16 12:49:06 +00:00
mc146818 After some input from bde@ and rereading the datasheet use a MTX_SPIN 2005-06-04 23:24:50 +00:00
mca
mcd Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
md Do not destroy the queue mutex until the thread is done with it. 2005-09-11 12:35:32 +00:00
mem
mii Add an evil hack to work around a cast from the softc to the ifnet that 2005-06-11 00:20:38 +00:00
mk48txx - Add locking. 2005-05-19 21:16:50 +00:00
mlx Add missing parenthesis around error handling code upon attaching 2005-07-30 15:53:40 +00:00
mly Retire the last of the FreeBSD 4.x compat code from the mly driver. 2005-08-08 12:23:27 +00:00
mpt Restore the 929X support that got nuked in merge 2005-09-11 19:58:19 +00:00
mse
my Fixup locking in if_my(4) and mark it MPSAFE: 2005-08-16 20:39:30 +00:00
ncv Eliminate unused argument in PCMCIA_CARD macro. 2005-06-24 14:36:54 +00:00
nge Add two missing if_free() calls. 2005-09-15 20:06:44 +00:00
nmdm Merge the dev_clone and dev_clone_cred event handlers into a single 2005-08-08 19:55:32 +00:00
nsp Eliminate unused argument in PCMCIA_CARD macro. 2005-06-24 14:36:54 +00:00
null
nve Fix "struct ifnet" leak if attach() fails in the middle. 2005-09-16 12:49:06 +00:00
ofw Sync with openfirm(4) and check the return value of malloc() although 2005-05-19 15:23:17 +00:00
owi Propagate rename of IFF_OACTIVE and IFF_RUNNING to IFF_DRV_OACTIVE and 2005-08-09 10:20:02 +00:00
patm Fix "struct ifnet" leak if attach() fails in the middle. 2005-09-16 12:49:06 +00:00
pbio Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
pccard Add a few new functions interfaces to allow reading/writing attribute 2005-09-13 17:56:36 +00:00
pccbb This appears to be good for some folks, but really bad for others. 2005-09-12 05:35:11 +00:00
pcf Account for ebus(4) defaulting to SYS_RES_MEMORY for memory resources 2005-06-04 20:29:28 +00:00
pci Change hw.pci.do_powerstate from a boolean to a range. 0 means the 2005-09-11 04:09:44 +00:00
pdq Propagate rename of IFF_OACTIVE and IFF_RUNNING to IFF_DRV_OACTIVE and 2005-08-09 10:20:02 +00:00
ppbus Propagate rename of IFF_OACTIVE and IFF_RUNNING to IFF_DRV_OACTIVE and 2005-08-09 10:20:02 +00:00
ppc
pst
puc Recognize the SAB82532 in USIII machines. 2005-08-07 13:37:25 +00:00
ral Avoid deferencing NULL in if_free(). 2005-09-16 12:17:12 +00:00
random malloc.h relies on param.h for a definition of MAXCPU. I guess that there is 2005-05-30 05:01:44 +00:00
ray Propagate rename of IFF_OACTIVE and IFF_RUNNING to IFF_DRV_OACTIVE and 2005-08-09 10:20:02 +00:00
rc
re Don't recommend re_detach() (like in vr(4)) as another 2005-09-15 19:07:10 +00:00
rndtest
rp
sab Account for ebus(4) defaulting to SYS_RES_MEMORY for memory resources 2005-06-04 20:29:28 +00:00
safe
sbni Propagate rename of IFF_OACTIVE and IFF_RUNNING to IFF_DRV_OACTIVE and 2005-08-09 10:20:02 +00:00
sbsh Propagate rename of IFF_OACTIVE and IFF_RUNNING to IFF_DRV_OACTIVE and 2005-08-09 10:20:02 +00:00
scd Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
sf Fix "struct ifnet" leaks when attach() fails in the middle, e.g. 2005-09-16 11:11:51 +00:00
si
sio Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
sk Fix "struct ifnet" leaks when attach() fails in the middle, e.g. 2005-09-16 11:11:51 +00:00
smbus Remove public declarations of variables that were forgotten when they were 2005-08-10 07:10:02 +00:00
sn Spell "destroy" correctly. 2005-09-15 19:34:12 +00:00
snc Propagate rename of IFF_OACTIVE and IFF_RUNNING to IFF_DRV_OACTIVE and 2005-08-09 10:20:02 +00:00
snp Merge the dev_clone and dev_clone_cred event handlers into a single 2005-08-08 19:55:32 +00:00
sound Fix module unload panic which was caused by missing sx lock release. 2005-09-14 01:34:13 +00:00
speaker - Move timerreg.h to <arch>/include and split i8253 specific defines into 2005-05-14 09:10:02 +00:00
sr Propagate rename of IFF_OACTIVE and IFF_RUNNING to IFF_DRV_OACTIVE and 2005-08-09 10:20:02 +00:00
stg Eliminate unused argument in PCMCIA_CARD macro. 2005-06-24 14:36:54 +00:00
streams
sx
sym Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
syscons In set_mouse_pos(), try to avoid division by zero errors. 2005-09-07 15:19:03 +00:00
tdfx
tga Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
ti Fix "struct ifnet" leaks when attach() fails in the middle, e.g. 2005-09-16 11:11:51 +00:00
trm Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
twa Don't pollute the entire kernel build with -I$S/dev/twa. 2005-09-11 00:52:05 +00:00
twe Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
tx Propagate rename of IFF_OACTIVE and IFF_RUNNING to IFF_DRV_OACTIVE and 2005-08-09 10:20:02 +00:00
txp Fixed a diagnostic message. 2005-09-15 19:41:03 +00:00
uart - Change the code that determines whether to use a serial console and 2005-08-15 20:58:36 +00:00
ubsec
usb ehcivar.h: 2005-09-18 11:45:39 +00:00
utopia Struct ifatm isn't at the beginning of the softc anymore. Use the 2005-06-22 06:51:52 +00:00
vge Fix "struct ifnet" leaks when attach() fails in the middle. 2005-09-16 11:25:19 +00:00
vkbd Merge the dev_clone and dev_clone_cred event handlers into a single 2005-08-08 19:55:32 +00:00
vr Fix "struct ifnet" leaks when attach() fails in the middle, e.g. 2005-09-16 11:11:51 +00:00
vx Propagate rename of IFF_OACTIVE and IFF_RUNNING to IFF_DRV_OACTIVE and 2005-08-09 10:20:02 +00:00
watchdog
wds
wi Correct previous commit. 2005-08-29 20:06:02 +00:00
wl Fix FBSDid style nit. 2005-08-10 03:56:31 +00:00
xe MFp4: 2005-09-13 19:54:14 +00:00
zs