diff options
author | Houcheng Lin <[email protected]> | 2014-10-23 10:36:08 +0200 |
---|---|---|
committer | Pablo Neira Ayuso <[email protected]> | 2014-10-24 14:34:11 +0200 |
commit | b51d3fa364885a2c1e1668f88776c67c95291820 (patch) | |
tree | efd04d22d960f11ee69c9d57807850e48c4515af /lib/dynamic_debug.c | |
parent | c1e7dc91eed0ed1a51c9b814d648db18bf8fc6e9 (diff) |
netfilter: nf_log: release skbuff on nlmsg put failure
The kernel should reserve enough room in the skb so that the DONE
message can always be appended. However, in case of e.g. new attribute
erronously not being size-accounted for, __nfulnl_send() will still
try to put next nlmsg into this full skbuf, causing the skb to be stuck
forever and blocking delivery of further messages.
Fix issue by releasing skb immediately after nlmsg_put error and
WARN() so we can track down the cause of such size mismatch.
[ [email protected]: add tailroom/len info to WARN ]
Signed-off-by: Houcheng Lin <[email protected]>
Signed-off-by: Florian Westphal <[email protected]>
Signed-off-by: Pablo Neira Ayuso <[email protected]>
Diffstat (limited to 'lib/dynamic_debug.c')
0 files changed, 0 insertions, 0 deletions