netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Re: [LARTC] Problem setting shift value in tcindex filter on big endian machine
       [not found] <460FA944.40902@gmx.de>
@ 2007-04-02 12:13 ` Patrick McHardy
  0 siblings, 0 replies; only message in thread
From: Patrick McHardy @ 2007-04-02 12:13 UTC (permalink / raw)
  To: Ole Reinartz; +Cc: lartc, Linux Netdev List

Please send bugreports to netdev@vger.kernel.org.

Ole Reinartz wrote:
> I'm trying to get some DiffServ QoS shaping to work on an XScale
> machine, running big endian. I'm setting it up with tc. Using the
> tcindex filter I found that regardless what shift value I enter, only
> '0' is returned when I list the filters afterwards. The very same rules
> work fine on my (little endian) PC.
> Looking at the code (iproute2-2.6.18-061002) I found that tc (in
> tc/f_tcindex.c, line 72 and after) sends the shift value to the kernel
> as an int. The kernel, however, expects it as a 'u16'
> (net/sched/cls_tcindex.c, around line 250 depending on the exact kernel
> version). I checked 2.6 kernel versions back until 2.6.11.


It appears this was broken during some ->change operation fixes
in 2.6.11.

> So... do we have a type mismatch here? As 'shift' is the last parameter
> in the buffer, this works still very well on a little endian machine,
> however on a big endian machine allways 0 is received in the kernel. To
> check that I changed the type of the shift value to unsigned short in
> tc, and that fixed it for me.
> Someone interested in a patch?


Yes, but its the kernel that needs to be fixed to expect a u32.


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2007-04-02 12:13 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <460FA944.40902@gmx.de>
2007-04-02 12:13 ` [LARTC] Problem setting shift value in tcindex filter on big endian machine Patrick McHardy

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).