[parent not found: <1567213.2GCzMlGyKY@lisa>]
* Re: increase buffer size
[not found] <1567213.2GCzMlGyKY@lisa>
@ 2012-01-24 12:01 ` Oliver Hartkopp
2012-01-24 15:42 ` [Socketcan-users] " Steffen Rose
0 siblings, 1 reply; 4+ messages in thread
From: Oliver Hartkopp @ 2012-01-24 12:01 UTC (permalink / raw)
To: Steffen Rose
Cc: socketcan-users-0fE9KPoRgkgATYTw5x5z8w,
linux-can-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Hi Steffen,
On 24.01.2012 12:18, Steffen Rose wrote:
> I want to increase the transmit quere of a can device.
You can do this with ifconfig or the 'ip' tool from the iproute2 package.
Examples:
ifconfig can0 txqueuelen 1000
or
ip link set can0 txqueuelen 1000
>
> As I understand, the virtual devices don't have a quere. Is it right?
>
Generally yes. A vcan is a software device like the 'lo' interface for IP.
Both (vcan & lo) transfer the packets directly back to the rx queue instantly.
But you can create vcans having a tx-queue len:
Here i created a virtual CAN interface 'xxx' with a txqueuelen of 10:
root# ip link add xxx type vcan
root# ip link set xxx txqueuelen 10
root# ip link set xxx up
root# ip link show xxx
10: xxx: <NOARP,UP,LOWER_UP> mtu 16 qdisc pfifo_fast state UNKNOWN qlen 10
link/can
root#
But this has no effect as long as you do not add some kind of queueing
discipline that throttles the bandwidth on the specific interface.
> As I understand, for physical devices the transmit quere is located within the
> sockets, not in the can device driver. Is it right?
The tx buffers of the sockets are not really used e.g. for CAN_RAW sockets.
The tx queue len of the CAN network interface are relevant for you.
>
> Do you have an small code snippet for the changing of the quere size?
Better use the tools stated above.
But you can (as root) modify these values e.g. with netlink sockets.
Regards,
Oliver
ps.
please do not use this mailing list any longer but send your questions
to the new "linux-can" mailing list address "linux-can-u79uwXL29TY76Z2rM5mHXA@public.gmane.org".
For subscription or mailing list archives please have a look to:
http://vger.kernel.org/vger-lists.html#linux-can
Mail archives of the new linux-can mailing list can be found at:
http://dir.gmane.org/gmane.linux.can
http://marc.info/?l=linux-can&r=1&w=2
^ permalink raw reply [flat|nested] 4+ messages in thread* Re: [Socketcan-users] increase buffer size
2012-01-24 12:01 ` Oliver Hartkopp
@ 2012-01-24 15:42 ` Steffen Rose
2012-01-24 16:17 ` Oliver Hartkopp
0 siblings, 1 reply; 4+ messages in thread
From: Steffen Rose @ 2012-01-24 15:42 UTC (permalink / raw)
To: linux-can
Hello Oliver
Am Dienstag, 24. Januar 2012, 13:01:45 schrieb Oliver Hartkopp:
> ifconfig can0 txqueuelen 1000
> ip link set can0 txqueuelen 1000
You wrote, that this command do not change the socket quere, this command
change the quere within the can adaptation. I hope, I understand this
correctly.
Is there a dependency to a specific SocketCAN version? Especially I'm
interested on embedded linux devices. Is the quere part of the common
socketcan code or is it depend of the implementation?
--
Mit freundlichen Grüßen / Regards
Steffen Rose
www.emtas.de
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [Socketcan-users] increase buffer size
2012-01-24 15:42 ` [Socketcan-users] " Steffen Rose
@ 2012-01-24 16:17 ` Oliver Hartkopp
0 siblings, 0 replies; 4+ messages in thread
From: Oliver Hartkopp @ 2012-01-24 16:17 UTC (permalink / raw)
To: Steffen Rose; +Cc: linux-can
On 24.01.2012 16:42, Steffen Rose wrote:
> Hello Oliver
>
> Am Dienstag, 24. Januar 2012, 13:01:45 schrieb Oliver Hartkopp:
>> ifconfig can0 txqueuelen 1000
>> ip link set can0 txqueuelen 1000
>
> You wrote, that this command do not change the socket quere, this command
> change the quere within the can adaptation. I hope, I understand this
> correctly.
You have an amount of rx/tx buffersizes inside each socket.
You may refer to the '-r' option of the candump tool which can modify the
socket rx buffer size.
But there is currently no quota for the socket tx buffer size, as the CAN
frames are put directly into the CAN netdevice queue (which can by modified
with the commands 'ip' and 'ifconfig').
> Is there a dependency to a specific SocketCAN version? Especially I'm
> interested on embedded linux devices.
No. SocketCAN is the official CAN networking stack of Linux.
I also run it on a MPC5200 based embedded device.
> Is the quere part of the common
> socketcan code or is it depend of the implementation?
The queue implementation is part of Linux' general network stack on which
SocketCAN bases.
Regards,
Oliver
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2012-01-24 17:55 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <16594621.klnj3Hkir3@lisa>
[not found] ` <2F0BDF8C-F6D0-4CCD-A08D-3D969B98BB02@t-online.de>
2012-01-24 16:50 ` [Socketcan-users] increase buffer size Steffen Rose
2012-01-24 17:55 ` Oliver Hartkopp
[not found] <1567213.2GCzMlGyKY@lisa>
2012-01-24 12:01 ` Oliver Hartkopp
2012-01-24 15:42 ` [Socketcan-users] " Steffen Rose
2012-01-24 16:17 ` Oliver Hartkopp
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).