Re: [PATCH 3/3] csky: Support kernel non-aligned access

From: Christoph Hellwig
Date: Tue Aug 20 2019 - 22:17:44 EST


On Tue, Aug 20, 2019 at 08:34:29PM +0800, guoren@xxxxxxxxxx wrote:
> From: Guo Ren <ren_guo@xxxxxxxxx>
>
> We prohibit non-aligned access in kernel mode, but some special NIC
> driver needs to support kernel-state unaligned access. For example,
> when the bus does not support unaligned access, IP header parsing
> will cause non-aligned access and driver does not recopy the skb
> buffer to dma for performance reasons.
>
> Added kernel_enable & user_enable to control unaligned access and
> added kernel_count & user_count for statistical unaligned access.

If the NIC drivers requires this it is buggy. Kernel code must
use the get_unaligned* / put_unaligned* helpers for that.