Oliver Hartkopp
156c2bb9f8
can: add private data space for CAN sk_buffs
...
The struct can_skb_priv is used to transport additional information along
with the stored struct can(fd)_frame that can not be contained in existing
struct sk_buff elements.
can_skb_priv is located in the skb headroom, which does not touch the existing
CAN sk_buff usage with skb->data and skb->len, so that even out-of-tree
CAN drivers can be used without changes.
Btw. out-of-tree CAN drivers without can_skb_priv in the sk_buff headroom
would not support features based on can_skb_priv.
The can_skb_priv->ifindex contains the first interface where the CAN frame
appeared on the local host. Unfortunately skb->skb_iif can not be used as this
value is overwritten in every netif_receive_skb() call.
Signed-off-by: Oliver Hartkopp <socketcan@hartkopp.net >
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de >
2013-01-26 16:59:01 +01:00
..
2013-01-15 15:05:59 -05:00
2013-01-26 16:59:01 +01:00
2012-12-20 14:00:13 -08:00
2012-12-14 14:54:26 -08:00
2013-01-02 17:36:10 -08:00
2012-12-18 16:51:10 -08:00
2012-12-18 12:46:37 -08:00
2012-12-14 14:42:53 -08:00
2012-12-16 18:55:20 -08:00
2012-12-19 11:47:22 -08:00
2012-12-20 10:07:25 -08:00
2012-12-13 19:26:04 -08:00
2013-01-02 17:36:10 -08:00
2012-12-14 14:27:45 -08:00
2012-12-20 14:04:11 -08:00
2013-01-02 17:36:10 -08:00
2012-12-14 10:03:23 -08:00
2012-12-14 13:06:41 +10:30
2013-01-03 15:57:16 -08:00
2012-12-14 09:34:01 -05:00
2012-12-02 00:05:12 +00:00
2013-01-11 14:54:56 -08:00
2012-12-17 11:29:09 -08:00
2012-12-17 17:15:16 -08:00
2012-12-20 20:00:43 -08:00
2012-12-19 07:18:35 -08:00
2012-11-26 17:41:24 -08:00
2013-01-11 14:54:56 -08:00
2012-12-20 18:05:28 -08:00
2012-12-19 07:55:08 -08:00
2012-12-19 07:55:08 -08:00
2013-01-11 14:54:54 -08:00
2013-01-09 08:26:53 -08:00
2012-12-20 13:57:36 -05:00
2012-03-28 15:58:21 -07:00
2012-12-21 20:23:41 +00:00
2012-12-14 09:59:59 -08:00
2012-12-20 12:05:06 +05:30
2012-12-15 15:20:41 -08:00
2012-10-13 10:46:48 +01:00
2013-01-21 14:07:44 -05:00
2012-12-20 14:04:11 -08:00
2012-12-20 18:49:14 -05:00
2012-12-20 22:34:00 +00:00
2012-12-20 22:04:07 +00:00
2012-12-17 17:15:12 -08:00
2012-12-18 15:02:12 -08:00
2012-12-16 15:18:08 -08:00
2012-12-18 15:02:15 -08:00
2012-12-16 15:18:08 -08:00
2012-12-14 13:05:26 +10:30
2013-01-13 21:04:37 -05:00
2013-01-10 10:57:01 -08:00
2013-01-11 14:54:54 -08:00
2013-01-04 16:11:45 -08:00
2013-01-13 20:17:14 -05:00
2012-12-13 14:20:19 -08:00
2012-12-25 13:29:52 -05:00
2012-12-20 17:40:20 -08:00
2012-12-16 15:40:50 -08:00
2012-12-13 15:31:08 -08:00
2013-01-11 14:54:55 -08:00
2012-12-17 13:39:11 -08:00
2012-12-18 15:02:15 -08:00
2013-01-02 17:32:13 -08:00
2012-12-16 15:18:08 -08:00
2012-12-18 10:56:07 -08:00
2013-01-11 14:54:56 -08:00
2013-01-04 16:11:46 -08:00
2012-12-14 13:06:40 +10:30
2013-01-21 13:55:14 -05:00
2013-01-21 13:55:14 -05:00
2013-01-04 16:11:45 -08:00
2008-02-13 16:21:18 -08:00
2012-12-25 18:45:06 -05:00
2012-02-24 01:42:07 -08:00
2013-01-15 15:05:59 -05:00
2013-01-08 17:56:09 -08:00
2012-12-15 15:21:52 -05:00
2012-12-19 16:15:17 +00:00
2012-12-18 09:58:09 -08:00
2012-12-26 14:57:34 -08:00
2012-12-26 10:43:06 -07:00
2012-12-13 12:14:47 -08:00
2012-12-17 17:15:18 -08:00
2013-01-14 15:11:50 -05:00
2012-12-25 16:10:05 -08:00
2012-12-25 16:10:05 -08:00
2012-12-17 20:58:12 -08:00
2013-01-03 15:57:14 -08:00
2012-12-20 18:05:28 -08:00
2013-01-23 13:44:00 -05:00
2013-01-11 14:54:56 -08:00
2012-12-18 15:02:12 -08:00
2013-01-11 14:54:55 -08:00
2012-12-20 18:05:28 -08:00
2013-01-14 18:16:59 -05:00
2012-12-19 18:07:41 -05:00
2013-01-08 17:51:54 -08:00
2012-12-18 15:02:13 -08:00
2012-12-18 15:02:14 -08:00
2012-12-18 15:02:14 -08:00
2008-05-26 16:15:32 +02:00
2011-06-14 22:48:51 -04:00
2012-12-13 12:00:02 -08:00
2008-10-03 11:46:14 -05:00
2012-12-17 17:15:17 -08:00
2012-12-20 18:05:28 -08:00
2012-09-13 16:47:34 +02:00
2012-12-18 15:02:13 -08:00
2012-12-18 15:20:43 +10:30
2012-12-16 15:18:08 -08:00
2012-12-19 22:24:55 +01:00