aboutsummaryrefslogtreecommitdiff
path: root/drivers/platform/surface/aggregator/ssh_parser.c
diff options
context:
space:
mode:
authorEric Dumazet <[email protected]>2023-08-31 21:38:12 +0000
committerDavid S. Miller <[email protected]>2023-09-04 06:52:27 +0100
commit817c7cd2043a83a3d8147f40eea1505ac7300b62 (patch)
treedc02280113ef93b8ffc0fd69efdf27addf68bbf7 /drivers/platform/surface/aggregator/ssh_parser.c
parent915d975b2ffa58a14bfcf16fafe00c41315949ff (diff)
gve: fix frag_list chaining
gve_rx_append_frags() is able to build skbs chained with frag_list, like GRO engine. Problem is that shinfo->frag_list should only be used for the head of the chain. All other links should use skb->next pointer. Otherwise, built skbs are not valid and can cause crashes. Equivalent code in GRO (skb_gro_receive()) is: if (NAPI_GRO_CB(p)->last == p) skb_shinfo(p)->frag_list = skb; else NAPI_GRO_CB(p)->last->next = skb; NAPI_GRO_CB(p)->last = skb; Fixes: 9b8dd5e5ea48 ("gve: DQO: Add RX path") Signed-off-by: Eric Dumazet <[email protected]> Cc: Bailey Forrest <[email protected]> Cc: Willem de Bruijn <[email protected]> Cc: Catherine Sullivan <[email protected]> Reviewed-by: David Ahern <[email protected]> Signed-off-by: David S. Miller <[email protected]>
Diffstat (limited to 'drivers/platform/surface/aggregator/ssh_parser.c')
0 files changed, 0 insertions, 0 deletions