From 3d57a2e58ea9b792b98611bd190a36694c267bf8 Mon Sep 17 00:00:00 2001 From: Brian Feldman Date: Fri, 1 Oct 2004 07:01:38 +0000 Subject: [PATCH] Conditionalize IFF_NEEDSGIANT, like everything else here, on IS_MPSAFE. The driver doesn't look any less safe without Giant than with, and works with IS_MPSAFE set to 1 here, so others should probably test it as such. --- sys/dev/dc/if_dc.c | 5 +++-- sys/pci/if_dc.c | 5 +++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/sys/dev/dc/if_dc.c b/sys/dev/dc/if_dc.c index 262e947314f..961c49dbaff 100644 --- a/sys/dev/dc/if_dc.c +++ b/sys/dev/dc/if_dc.c @@ -2191,8 +2191,9 @@ dc_attach(device_t dev) if_initname(ifp, device_get_name(dev), device_get_unit(dev)); /* XXX: bleah, MTU gets overwritten in ether_ifattach() */ ifp->if_mtu = ETHERMTU; - ifp->if_flags = IFF_BROADCAST | IFF_SIMPLEX | IFF_MULTICAST | - IFF_NEEDSGIANT; + ifp->if_flags = IFF_BROADCAST | IFF_SIMPLEX | IFF_MULTICAST; + if (!IS_MPSAFE) + ifp->if_flags |= IFF_NEEDSGIANT; ifp->if_ioctl = dc_ioctl; ifp->if_start = dc_start; ifp->if_watchdog = dc_watchdog; diff --git a/sys/pci/if_dc.c b/sys/pci/if_dc.c index 262e947314f..961c49dbaff 100644 --- a/sys/pci/if_dc.c +++ b/sys/pci/if_dc.c @@ -2191,8 +2191,9 @@ dc_attach(device_t dev) if_initname(ifp, device_get_name(dev), device_get_unit(dev)); /* XXX: bleah, MTU gets overwritten in ether_ifattach() */ ifp->if_mtu = ETHERMTU; - ifp->if_flags = IFF_BROADCAST | IFF_SIMPLEX | IFF_MULTICAST | - IFF_NEEDSGIANT; + ifp->if_flags = IFF_BROADCAST | IFF_SIMPLEX | IFF_MULTICAST; + if (!IS_MPSAFE) + ifp->if_flags |= IFF_NEEDSGIANT; ifp->if_ioctl = dc_ioctl; ifp->if_start = dc_start; ifp->if_watchdog = dc_watchdog;