mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-28 10:41:38 -04:00
net: pass net_device argument to the eth_get_headlen
Update all users of eth_get_headlen to pass network device, fetch network namespace from it and pass it down to the flow dissector. This commit is a noop until administrator inserts BPF flow dissector program. Cc: Maxim Krasnyansky <[email protected]> Cc: Saeed Mahameed <[email protected]> Cc: Jeff Kirsher <[email protected]> Cc: [email protected] Cc: Yisen Zhuang <[email protected]> Cc: Salil Mehta <[email protected]> Cc: Michael Chan <[email protected]> Cc: Igor Russkikh <[email protected]> Signed-off-by: Stanislav Fomichev <[email protected]> Signed-off-by: Daniel Borkmann <[email protected]>
This commit is contained in:
parent
9b52e3f267
commit
c43f1255b8
16 changed files with 22 additions and 17 deletions
|
|
@ -119,13 +119,14 @@ EXPORT_SYMBOL(eth_header);
|
|||
|
||||
/**
|
||||
* eth_get_headlen - determine the length of header for an ethernet frame
|
||||
* @dev: pointer to network device
|
||||
* @data: pointer to start of frame
|
||||
* @len: total length of frame
|
||||
*
|
||||
* Make a best effort attempt to pull the length for all of the headers for
|
||||
* a given frame in a linear buffer.
|
||||
*/
|
||||
u32 eth_get_headlen(void *data, unsigned int len)
|
||||
u32 eth_get_headlen(const struct net_device *dev, void *data, unsigned int len)
|
||||
{
|
||||
const unsigned int flags = FLOW_DISSECTOR_F_PARSE_1ST_FRAG;
|
||||
const struct ethhdr *eth = (const struct ethhdr *)data;
|
||||
|
|
@ -136,7 +137,7 @@ u32 eth_get_headlen(void *data, unsigned int len)
|
|||
return len;
|
||||
|
||||
/* parse any remaining L2/L3 headers, check for L4 */
|
||||
if (!skb_flow_dissect_flow_keys_basic(NULL, NULL, &keys, data,
|
||||
if (!skb_flow_dissect_flow_keys_basic(dev_net(dev), NULL, &keys, data,
|
||||
eth->h_proto, sizeof(*eth),
|
||||
len, flags))
|
||||
return max_t(u32, keys.control.thoff, sizeof(*eth));
|
||||
|
|
|
|||
Loading…
Reference in a new issue