| .. | .. |
|---|
| 1 | | -/* |
|---|
| 2 | | - * Copyright (c) 2002-2007 Volkswagen Group Electronic Research |
|---|
| 1 | +/* SPDX-License-Identifier: (GPL-2.0 OR BSD-3-Clause) */ |
|---|
| 2 | +/* Copyright (c) 2002-2007 Volkswagen Group Electronic Research |
|---|
| 3 | 3 | * All rights reserved. |
|---|
| 4 | 4 | * |
|---|
| 5 | 5 | * Redistribution and use in source and binary forms, with or without |
|---|
| .. | .. |
|---|
| 53 | 53 | canid_t can_id; |
|---|
| 54 | 54 | canid_t mask; |
|---|
| 55 | 55 | unsigned long matches; |
|---|
| 56 | | - void (*func)(struct sk_buff *, void *); |
|---|
| 56 | + void (*func)(struct sk_buff *skb, void *data); |
|---|
| 57 | 57 | void *data; |
|---|
| 58 | 58 | char *ident; |
|---|
| 59 | 59 | struct sock *sk; |
|---|
| 60 | 60 | struct rcu_head rcu; |
|---|
| 61 | 61 | }; |
|---|
| 62 | 62 | |
|---|
| 63 | | -#define CAN_SFF_RCV_ARRAY_SZ (1 << CAN_SFF_ID_BITS) |
|---|
| 64 | | -#define CAN_EFF_RCV_HASH_BITS 10 |
|---|
| 65 | | -#define CAN_EFF_RCV_ARRAY_SZ (1 << CAN_EFF_RCV_HASH_BITS) |
|---|
| 66 | | - |
|---|
| 67 | | -enum { RX_ERR, RX_ALL, RX_FIL, RX_INV, RX_MAX }; |
|---|
| 68 | | - |
|---|
| 69 | | -/* per device receive filters linked at dev->ml_priv */ |
|---|
| 70 | | -struct can_dev_rcv_lists { |
|---|
| 71 | | - struct hlist_head rx[RX_MAX]; |
|---|
| 72 | | - struct hlist_head rx_sff[CAN_SFF_RCV_ARRAY_SZ]; |
|---|
| 73 | | - struct hlist_head rx_eff[CAN_EFF_RCV_ARRAY_SZ]; |
|---|
| 74 | | - int remove_on_zero_entries; |
|---|
| 75 | | - int entries; |
|---|
| 76 | | -}; |
|---|
| 77 | | - |
|---|
| 78 | 63 | /* statistic structures */ |
|---|
| 79 | 64 | |
|---|
| 80 | 65 | /* can be reset e.g. by can_init_stats() */ |
|---|
| 81 | | -struct s_stats { |
|---|
| 66 | +struct can_pkg_stats { |
|---|
| 82 | 67 | unsigned long jiffies_init; |
|---|
| 83 | 68 | |
|---|
| 84 | 69 | unsigned long rx_frames; |
|---|
| .. | .. |
|---|
| 103 | 88 | }; |
|---|
| 104 | 89 | |
|---|
| 105 | 90 | /* persistent statistics */ |
|---|
| 106 | | -struct s_pstats { |
|---|
| 91 | +struct can_rcv_lists_stats { |
|---|
| 107 | 92 | unsigned long stats_reset; |
|---|
| 108 | 93 | unsigned long user_reset; |
|---|
| 109 | 94 | unsigned long rcv_entries; |
|---|