summary refs log tree commit diff
path: root/net/can
diff options
context:
space:
mode:
authorRostislav Lisovy <lisovy@gmail.com>2014-01-24 13:17:37 +0100
committerMarc Kleine-Budde <mkl@pengutronix.de>2014-01-29 20:23:23 +0100
commitbb5ecb0c63ac88b6f39029f75c47f4be4e352e8d (patch)
tree678f8515bac117e504021b03219d72b20cf975d2 /net/can
parent0e4b949e6620689b1d3142e20bca2c9d1f918fda (diff)
downloadlinux-bb5ecb0c63ac88b6f39029f75c47f4be4e352e8d.tar.gz
can: Propagate SO_PRIORITY of raw sockets to skbs
This allows controlling certain queueing disciplines by setting the
socket's SO_PRIORITY option.

For example, with the default pfifo_fast queueing discipline, which
provides three priorities, socket priority TC_PRIO_CONTROL means
higher than default and TC_PRIO_BULK means lower than default.

Signed-off-by: Rostislav Lisovy <lisovy@gmail.com>
Signed-off-by: Michal Sojka <sojkam1@fel.cvut.cz>
Acked-by: Oliver Hartkopp <socketcan@hartkopp.net>
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
Diffstat (limited to 'net/can')
-rw-r--r--net/can/raw.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/net/can/raw.c b/net/can/raw.c
index 07d72d852324..8be757cca2ec 100644
--- a/net/can/raw.c
+++ b/net/can/raw.c
@@ -715,6 +715,7 @@ static int raw_sendmsg(struct kiocb *iocb, struct socket *sock,
 
 	skb->dev = dev;
 	skb->sk  = sk;
+	skb->priority = sk->sk_priority;
 
 	err = can_send(skb, ro->loopback);