Merge branch 'master' into netmp
authorAggelos Economopoulos <aoiko@cc.ece.ntua.gr>
Tue, 5 May 2009 09:46:17 +0000 (12:46 +0300)
committerAggelos Economopoulos <aoiko@cc.ece.ntua.gr>
Tue, 5 May 2009 09:46:17 +0000 (12:46 +0300)
17 files changed:
1  2 
sys/bus/usb/usb_ethersubr.c
sys/kern/kern_poll.c
sys/net/bridge/if_bridge.c
sys/net/if.c
sys/net/if_ethersubr.c
sys/net/ppp/if_ppp.c
sys/net/vlan/if_vlan.c
sys/net/vlan/if_vlan_ether.c
sys/netbt/hci.h
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
sys/netinet/if_ether.c
sys/netinet/in.c
sys/netinet/tcp_usrreq.c
sys/netinet6/in6_proto.c
sys/netinet6/ip6_mroute.c
sys/netproto/natm/natm.c
sys/sys/protosw.h

Simple merge
Simple merge
@@@ -721,9 -722,9 +721,9 @@@ bridge_delete_dispatch(anynetmsg_t msg
        while ((bif = LIST_FIRST(&sc->sc_spanlist)) != NULL)
                bridge_delete_span(sc, bif);
  
-       lwkt_serialize_exit(bifp->if_serializer);
+       ifnet_deserialize_all(bifp);
  
 -      lwkt_replymsg(lmsg, 0);
 +      lwkt_replymsg(&msg->lmsg, 0);
  }
  
  /*
@@@ -3667,11 -3671,11 +3667,11 @@@ bridge_control_dispatch(anynetmsg_t msg
        struct ifnet *bifp = bc_msg->bc_sc->sc_ifp;
        int error;
  
-       lwkt_serialize_enter(bifp->if_serializer);
+       ifnet_serialize_all(bifp);
        error = bc_msg->bc_func(bc_msg->bc_sc, bc_msg->bc_arg);
-       lwkt_serialize_exit(bifp->if_serializer);
+       ifnet_deserialize_all(bifp);
  
 -      lwkt_replymsg(&nmsg->nm_lmsg, error);
 +      lwkt_replymsg(&bc_msg->bc_nmsg.nm_lmsg, error);
  }
  
  static int
diff --cc sys/net/if.c
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
diff --cc sys/netbt/hci.h
Simple merge
@@@ -607,15 -607,27 +607,27 @@@ arpintr(anynetmsg_t msg
   * We no longer reply to requests for ETHERTYPE_TRAIL protocol either,
   * but formerly didn't normally send requests.
   */
- static int log_arp_wrong_iface = 1;
+ static int    log_arp_wrong_iface = 1;
+ static int    log_arp_movements = 1;
+ static int    log_arp_permanent_modify = 1;
  SYSCTL_INT(_net_link_ether_inet, OID_AUTO, log_arp_wrong_iface, CTLFLAG_RW,
           &log_arp_wrong_iface, 0,
-          "log arp packets arriving on the wrong interface");
+          "Log arp packets arriving on the wrong interface");
+ SYSCTL_INT(_net_link_ether_inet, OID_AUTO, log_arp_movements, CTLFLAG_RW,
+          &log_arp_movements, 0,
+          "Log arp replies from MACs different than the one in the cache");
+ SYSCTL_INT(_net_link_ether_inet, OID_AUTO, log_arp_permanent_modify, CTLFLAG_RW,
+          &log_arp_permanent_modify, 0,
+          "Log arp replies from MACs different than the one "
+          "in the permanent arp entry");
  
  static void
 -arp_hold_output(struct netmsg *nmsg)
 +arp_hold_output(anynetmsg_t msg)
  {
 -      struct mbuf *m = ((struct netmsg_packet *)nmsg)->nm_packet;
 +      struct mbuf *m = ((struct netmsg_isr_packet *)msg)->nm_packet;
        struct rtentry *rt;
        struct ifnet *ifp;
  
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
@@@ -181,11 -171,10 +181,11 @@@ struct protosw 
  #define PRU_SEND_EOF          23      /* send and close */
  #define       PRU_PRED                24
  #define PRU_CTLOUTPUT         25      /* get/set opts */
 -#define PRU_NREQ              26
 +#define PRU_OP                        26      /* arbitrary operation */
 +#define PRU_NREQ              27
  
  #ifdef PRUREQUESTS
- char *prurequests[] = {
+ const char *prurequests[] = {
        "ATTACH",       "DETACH",       "BIND",         "LISTEN",
        "CONNECT",      "ACCEPT",       "DISCONNECT",   "SHUTDOWN",
        "RCVD",         "SEND",         "ABORT",        "CONTROL",