Re: PATCH : ppp + big-endian = kernel crash

From: David S. Miller
Date: Sun May 29 2005 - 22:13:24 EST


From: Andrew Morton <akpm@xxxxxxxx>
Date: Sun, 29 May 2005 19:52:45 -0700

> > All these patches to PPP and friends are merely papering over the
> > larger problem.
>
> It's not a thing we want to do in the general case, sure. But it's
> reasonable to identify those bits of net code which the nommu people care
> about and look to see if there's some sane workaround to get them going.
>
> Otherwise, things like PPP will simply unavailable to some architectures...

Some time ago there was a proposal that would allow appropriate
handling of these sorts of things.

Accessors to packet headers would go through a macro, and this
along with some other defines would allow an architecture to
decide between two schemes:

1) Use normal loads and stores, let trap handler take care of
unaligned cases.
2) Use something akin to get_unaligned(), no trap handler stuff.

Sure, to make things faster we can do something like this PPP
patch, but it needs lots of work, first of all you need to
replace this:

for ( ... )
p[i-1] = p[i];

stuff with a proper memmove() call.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/