svn commit: r236053 - stable/9/sys/dev/tsec
Andrew Thompson
thompsa at FreeBSD.org
Sat May 26 07:44:01 UTC 2012
Author: thompsa
Date: Sat May 26 07:44:00 2012
New Revision: 236053
URL: http://svn.freebsd.org/changeset/base/236053
Log:
MFC r235144
The DEVICE_POLLING dereference of sc->tsec_ifp needs to be checked for null
first or this will panic. Condense three blocks that check sc->tsec_ifp into
one while I am here.
Modified:
stable/9/sys/dev/tsec/if_tsec.c
Directory Properties:
stable/9/sys/ (props changed)
stable/9/sys/amd64/include/xen/ (props changed)
stable/9/sys/boot/ (props changed)
stable/9/sys/boot/i386/efi/ (props changed)
stable/9/sys/boot/ia64/efi/ (props changed)
stable/9/sys/boot/ia64/ski/ (props changed)
stable/9/sys/boot/powerpc/boot1.chrp/ (props changed)
stable/9/sys/boot/powerpc/ofw/ (props changed)
stable/9/sys/cddl/contrib/opensolaris/ (props changed)
stable/9/sys/conf/ (props changed)
stable/9/sys/contrib/dev/acpica/ (props changed)
stable/9/sys/contrib/octeon-sdk/ (props changed)
stable/9/sys/contrib/pf/ (props changed)
stable/9/sys/contrib/x86emu/ (props changed)
stable/9/sys/dev/ (props changed)
stable/9/sys/dev/e1000/ (props changed)
stable/9/sys/dev/ixgbe/ (props changed)
stable/9/sys/fs/ (props changed)
stable/9/sys/fs/ntfs/ (props changed)
stable/9/sys/modules/ (props changed)
Modified: stable/9/sys/dev/tsec/if_tsec.c
==============================================================================
--- stable/9/sys/dev/tsec/if_tsec.c Sat May 26 07:43:17 2012 (r236052)
+++ stable/9/sys/dev/tsec/if_tsec.c Sat May 26 07:44:00 2012 (r236053)
@@ -290,17 +290,17 @@ int
tsec_detach(struct tsec_softc *sc)
{
+ if (sc->tsec_ifp != NULL) {
#ifdef DEVICE_POLLING
- if (sc->tsec_ifp->if_capenable & IFCAP_POLLING)
- ether_poll_deregister(sc->tsec_ifp);
+ if (sc->tsec_ifp->if_capenable & IFCAP_POLLING)
+ ether_poll_deregister(sc->tsec_ifp);
#endif
- /* Stop TSEC controller and free TX queue */
- if (sc->sc_rres && sc->tsec_ifp)
- tsec_shutdown(sc->dev);
+ /* Stop TSEC controller and free TX queue */
+ if (sc->sc_rres)
+ tsec_shutdown(sc->dev);
- /* Detach network interface */
- if (sc->tsec_ifp) {
+ /* Detach network interface */
ether_ifdetach(sc->tsec_ifp);
if_free(sc->tsec_ifp);
sc->tsec_ifp = NULL;
More information about the svn-src-stable-9
mailing list