VServer 1.9.2 (patch-2.6.8.1-vs1.9.2.diff)
[linux-2.6.git] / include / linux / netdevice.h
index a55f97a..5edb93f 100644 (file)
@@ -362,10 +362,12 @@ struct net_device
 
        struct Qdisc            *qdisc;
        struct Qdisc            *qdisc_sleeping;
-       struct Qdisc            *qdisc_list;
        struct Qdisc            *qdisc_ingress;
+       struct list_head        qdisc_list;
        unsigned long           tx_queue_len;   /* Max frames per queue allowed */
 
+       /* ingress path synchronizer */
+       spinlock_t              ingress_lock;
        /* hard_start_xmit synchronizer */
        spinlock_t              xmit_lock;
        /* cpu id of processor entered to hard_start_xmit or -1,
@@ -405,6 +407,7 @@ struct net_device
 #define NETIF_F_HW_VLAN_FILTER 512     /* Receive filtering on VLAN */
 #define NETIF_F_VLAN_CHALLENGED        1024    /* Device cannot handle VLAN packets */
 #define NETIF_F_TSO            2048    /* Can offload TCP/IP segmentation */
+#define NETIF_F_LLTX           4096    /* LockLess TX */
 
        /* Called after device is detached from network. */
        void                    (*uninit)(struct net_device *dev);
@@ -469,12 +472,6 @@ struct net_device
        /* bridge stuff */
        struct net_bridge_port  *br_port;
 
-#ifdef CONFIG_NET_FASTROUTE
-#define NETDEV_FASTROUTE_HMASK 0xF
-       /* Semi-private data. Keep it at the end of device struct. */
-       rwlock_t                fastpath_lock;
-       struct dst_entry        *fastpath[NETDEV_FASTROUTE_HMASK+1];
-#endif
 #ifdef CONFIG_NET_DIVERT
        /* this will get initialized at each interface type init routine */
        struct divert_blk       *divert;
@@ -562,7 +559,7 @@ typedef int gifconf_func_t(struct net_device * dev, char __user * bufptr, int le
 extern int             register_gifconf(unsigned int family, gifconf_func_t * gifconf);
 static inline int unregister_gifconf(unsigned int family)
 {
-       return register_gifconf(family, 0);
+       return register_gifconf(family, NULL);
 }
 
 /*
@@ -944,11 +941,6 @@ extern unsigned long       netdev_fc_xoff;
 extern atomic_t netdev_dropping;
 extern int             netdev_set_master(struct net_device *dev, struct net_device *master);
 extern int skb_checksum_help(struct sk_buff **pskb, int inward);
-#ifdef CONFIG_NET_FASTROUTE
-extern int             netdev_fastroute;
-extern int             netdev_fastroute_obstacles;
-extern void            dev_clear_fastroute(struct net_device *dev);
-#endif
 
 #ifdef CONFIG_SYSCTL
 extern char *net_sysctl_strdup(const char *s);