* re: net: Add GRO support for UDP encapsulating protocols
@ 2014-01-23 16:10 Dan Carpenter
0 siblings, 0 replies; only message in thread
From: Dan Carpenter @ 2014-01-23 16:10 UTC (permalink / raw)
To: kernel-janitors
Hello Or Gerlitz,
The patch b582ef0990d4: "net: Add GRO support for UDP encapsulating
protocols" from Jan 20, 2014, leads to the following static checker
warning:
net/ipv4/udp_offload.c:104 udp_add_offload()
error: scheduling with locks held: 'spin_lock:sock_lock'"
net/ipv4/udp_offload.c
101 int udp_add_offload(struct udp_offload *uo)
102 {
103 struct udp_offload_priv **head = &udp_offload_base;
104 struct udp_offload_priv *new_offload = kzalloc(sizeof(*new_offload), GFP_KERNEL);
^^^^^^^^^^
Should be GFP_ATOMIC?
105
106 if (!new_offload)
107 return -ENOMEM;
108
109 new_offload->offload = uo;
110
111 spin_lock(&udp_offload_lock);
112 rcu_assign_pointer(new_offload->next, rcu_dereference(*head));
113 rcu_assign_pointer(*head, rcu_dereference(new_offload));
114 spin_unlock(&udp_offload_lock);
115
116 return 0;
117 }
The call tree looks like:
vxlan_socket_create() <-- holds the spinlock
-> vxlan_notify_add_rx_port()
-> udp_add_offload() <-- shedules
regards,
dan carpenter
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2014-01-23 16:10 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-01-23 16:10 net: Add GRO support for UDP encapsulating protocols Dan Carpenter
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox