diff options
author | Alexander Duyck <alexander.h.duyck@intel.com> | 2014-09-11 00:05:42 +0200 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2014-09-12 23:51:25 +0200 |
commit | bf7fa551e0ce507b82935055f4b4aa229be73eeb (patch) | |
tree | 88068940307b6369cc1f6a2b346f6a070949f4bd /lib/iomap_copy.c | |
parent | skb: Add documentation for skb_clone_sk (diff) | |
download | linux-bf7fa551e0ce507b82935055f4b4aa229be73eeb.tar.xz linux-bf7fa551e0ce507b82935055f4b4aa229be73eeb.zip |
mac80211: Resolve sk_refcnt/sk_wmem_alloc issue in wifi ack path
There is a possible issue with the use, or lack thereof of sk_refcnt and
sk_wmem_alloc in the wifi ack status functionality.
Specifically if a socket were to request acknowledgements, and the socket
were to have sk_refcnt drop to 0 resulting in it waiting on sk_wmem_alloc
to reach 0 it would be possible to have sock_queue_err_skb orphan the last
buffer, resulting in __sk_free being called on the socket. After this the
buffer is enqueued on sk_error_queue, however the queue has already been
flushed resulting in at least a memory leak, if not a data corruption.
Signed-off-by: Alexander Duyck <alexander.h.duyck@intel.com>
Acked-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'lib/iomap_copy.c')
0 files changed, 0 insertions, 0 deletions