Author: glebius
Date: Mon Apr 18 14:05:26 2011
New Revision: 220781
URL: http://svn.freebsd.org/changeset/base/220781

Log:
  Further cleanup of node creation path from M_NOWAIT usage.

Modified:
  head/sys/netgraph/ng_sppp.c

Modified: head/sys/netgraph/ng_sppp.c
==============================================================================
--- head/sys/netgraph/ng_sppp.c Mon Apr 18 14:03:37 2011        (r220780)
+++ head/sys/netgraph/ng_sppp.c Mon Apr 18 14:05:26 2011        (r220781)
@@ -108,7 +108,7 @@ static unsigned char        ng_units_in_use = 0
  * Find the first free unit number for a new interface.
  * Increase the size of the unit bitmap as necessary.
  */
-static __inline int
+static __inline void
 ng_sppp_get_unit (int *unit)
 {
        int index, bit;
@@ -122,9 +122,7 @@ ng_sppp_get_unit (int *unit)
                
                newlen = (2 * ng_sppp_units_len) + sizeof (*ng_sppp_units);
                newarray = malloc (newlen * sizeof (*ng_sppp_units),
-                   M_NETGRAPH_SPPP, M_NOWAIT);
-               if (newarray == NULL)
-                       return (ENOMEM);
+                   M_NETGRAPH_SPPP, M_WAITOK);
                bcopy (ng_sppp_units, newarray,
                    ng_sppp_units_len * sizeof (*ng_sppp_units));
                bzero (newarray + ng_sppp_units_len,
@@ -142,7 +140,6 @@ ng_sppp_get_unit (int *unit)
        ng_sppp_units[index] |= (1 << bit);
        *unit = (index * NBBY) + bit;
        ng_units_in_use++;
-       return (0);
 }
 
 /*
@@ -262,12 +259,7 @@ ng_sppp_constructor (node_p node)
        priv->ifp = ifp;
 
        /* Get an interface unit number */
-       if ((error = ng_sppp_get_unit(&priv->unit)) != 0) {
-               free (pp, M_NETGRAPH_SPPP);
-               free (priv, M_NETGRAPH_SPPP);
-               return (error);
-       }
-
+       ng_sppp_get_unit(&priv->unit);
 
        /* Link together node and private info */
        NG_NODE_SET_PRIVATE (node, priv);
_______________________________________________
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to