--- zzzz-none-000/linux-2.6.28.10/include/net/sock.h 2009-05-02 18:54:43.000000000 +0000 +++ puma5-6360-529/linux-2.6.28.10/include/net/sock.h 2011-12-09 10:45:47.000000000 +0000 @@ -271,7 +271,7 @@ int sk_write_pending; void *sk_security; __u32 sk_mark; - /* XXX 4 bytes hole on 64 bit */ + unsigned long sk_tc_index; void (*sk_state_change)(struct sock *sk); void (*sk_data_ready)(struct sock *sk, int bytes); void (*sk_write_space)(struct sock *sk); @@ -1132,6 +1132,9 @@ sock_hold(sk); skb->sk = sk; skb->destructor = sock_wfree; +#ifdef CONFIG_NET_SCHED + skb->tc_index = sk->sk_tc_index; +#endif atomic_add(skb->truesize, &sk->sk_wmem_alloc); } @@ -1290,7 +1293,7 @@ __skb_queue_tail(&sk->sk_async_wait_queue, skb); } #else -static inline void sk_eat_skb(struct sock *sk, struct sk_buff *skb, int copied_early) +static inline void sk_eat_skb(struct sock *sk, struct sk_buff *skb, int copied_early __attribute__ ((unused))) { __skb_unlink(skb, &sk->sk_receive_queue); __kfree_skb(skb); @@ -1298,7 +1301,7 @@ #endif static inline -struct net *sock_net(const struct sock *sk) +struct net *sock_net(const struct sock *sk __attribute__ ((unused))) { #ifdef CONFIG_NET_NS return sk->sk_net; @@ -1308,7 +1311,7 @@ } static inline -void sock_net_set(struct sock *sk, struct net *net) +void sock_net_set(struct sock *sk __attribute__ ((unused)), struct net *net __attribute__ ((unused))) { #ifdef CONFIG_NET_NS sk->sk_net = net;