Simply return EOPNOTSUPP like in raw_userreq() rather than defining an
empty function.  This will help reducing reducing recursive splsotnet()
in pr_usrreq() functions.

ok?

Index: netmpls/mpls_raw.c
===================================================================
RCS file: /cvs/src/sys/netmpls/mpls_raw.c,v
retrieving revision 1.13
diff -u -p -r1.13 mpls_raw.c
--- netmpls/mpls_raw.c  24 Nov 2015 13:37:16 -0000      1.13
+++ netmpls/mpls_raw.c  15 Nov 2016 13:21:59 -0000
@@ -60,19 +60,6 @@ int mpls_mapttl_ip6 = 0;
 
 int *mplsctl_vars[MPLSCTL_MAXID] = MPLSCTL_VARS;
 
-int    mpls_control(struct socket *, u_long, caddr_t, struct ifnet *);
-
-/*
- * Generic MPLS control operations (ioctl's).
- * Ifp is 0 if not an interface-specific ioctl.
- */
-/* ARGSUSED */
-int
-mpls_control(struct socket *so, u_long cmd, caddr_t data, struct ifnet *ifp)
-{
-       return (EOPNOTSUPP);
-}
-
 int
 mpls_raw_usrreq(struct socket *so, int req, struct mbuf *m, struct mbuf *nam,
     struct mbuf *control, struct proc *p)
@@ -84,8 +71,7 @@ mpls_raw_usrreq(struct socket *so, int r
 #endif /* MPLS_DEBUG */
 
        if (req == PRU_CONTROL)
-               return (mpls_control(so, (u_long)m, (caddr_t)nam,
-                   (struct ifnet *)control));
+               return (EOPNOTSUPP);
 
        switch (req) {
        case PRU_ATTACH:

Reply via email to