Loading net/ipv4/route.c +17 −8 Original line number Diff line number Diff line Loading @@ -235,16 +235,25 @@ struct rt_hash_bucket { static spinlock_t *rt_hash_locks; # define rt_hash_lock_addr(slot) &rt_hash_locks[(slot) & (RT_HASH_LOCK_SZ - 1)] # define rt_hash_lock_init() { \ int i; \ rt_hash_locks = kmalloc(sizeof(spinlock_t) * RT_HASH_LOCK_SZ, GFP_KERNEL); \ if (!rt_hash_locks) panic("IP: failed to allocate rt_hash_locks\n"); \ for (i = 0; i < RT_HASH_LOCK_SZ; i++) \ spin_lock_init(&rt_hash_locks[i]); \ static __init void rt_hash_lock_init(void) { int i; rt_hash_locks = kmalloc(sizeof(spinlock_t) * RT_HASH_LOCK_SZ, GFP_KERNEL); if (!rt_hash_locks) panic("IP: failed to allocate rt_hash_locks\n"); for (i = 0; i < RT_HASH_LOCK_SZ; i++) spin_lock_init(&rt_hash_locks[i]); } #else # define rt_hash_lock_addr(slot) NULL # define rt_hash_lock_init() static inline void rt_hash_lock_init(void) { } #endif static struct rt_hash_bucket *rt_hash_table; Loading Loading
net/ipv4/route.c +17 −8 Original line number Diff line number Diff line Loading @@ -235,16 +235,25 @@ struct rt_hash_bucket { static spinlock_t *rt_hash_locks; # define rt_hash_lock_addr(slot) &rt_hash_locks[(slot) & (RT_HASH_LOCK_SZ - 1)] # define rt_hash_lock_init() { \ int i; \ rt_hash_locks = kmalloc(sizeof(spinlock_t) * RT_HASH_LOCK_SZ, GFP_KERNEL); \ if (!rt_hash_locks) panic("IP: failed to allocate rt_hash_locks\n"); \ for (i = 0; i < RT_HASH_LOCK_SZ; i++) \ spin_lock_init(&rt_hash_locks[i]); \ static __init void rt_hash_lock_init(void) { int i; rt_hash_locks = kmalloc(sizeof(spinlock_t) * RT_HASH_LOCK_SZ, GFP_KERNEL); if (!rt_hash_locks) panic("IP: failed to allocate rt_hash_locks\n"); for (i = 0; i < RT_HASH_LOCK_SZ; i++) spin_lock_init(&rt_hash_locks[i]); } #else # define rt_hash_lock_addr(slot) NULL # define rt_hash_lock_init() static inline void rt_hash_lock_init(void) { } #endif static struct rt_hash_bucket *rt_hash_table; Loading