generic.h (e5451c8f8330e03ad3cfa16048b4daf961af434f) | generic.h (c7d03a00b56fc23c3a01a8353789ad257363e281) |
---|---|
1/* 2 * generic net pointers 3 */ 4 5#ifndef __NET_GENERIC_H__ 6#define __NET_GENERIC_H__ 7 8#include <linux/bug.h> --- 17 unchanged lines hidden (view full) --- 26 27struct net_generic { 28 unsigned int len; 29 struct rcu_head rcu; 30 31 void *ptr[0]; 32}; 33 | 1/* 2 * generic net pointers 3 */ 4 5#ifndef __NET_GENERIC_H__ 6#define __NET_GENERIC_H__ 7 8#include <linux/bug.h> --- 17 unchanged lines hidden (view full) --- 26 27struct net_generic { 28 unsigned int len; 29 struct rcu_head rcu; 30 31 void *ptr[0]; 32}; 33 |
34static inline void *net_generic(const struct net *net, int id) | 34static inline void *net_generic(const struct net *net, unsigned int id) |
35{ 36 struct net_generic *ng; 37 void *ptr; 38 39 rcu_read_lock(); 40 ng = rcu_dereference(net->gen); 41 ptr = ng->ptr[id - 1]; 42 rcu_read_unlock(); 43 44 return ptr; 45} 46#endif | 35{ 36 struct net_generic *ng; 37 void *ptr; 38 39 rcu_read_lock(); 40 ng = rcu_dereference(net->gen); 41 ptr = ng->ptr[id - 1]; 42 rcu_read_unlock(); 43 44 return ptr; 45} 46#endif |