Re: [PATCH v6 6/8] virtio: add explicit big-endian support to memory accessors

From: Cornelia Huck
Date: Mon Apr 27 2015 - 05:14:34 EST


On Fri, 24 Apr 2015 14:26:24 +0200
Greg Kurz <gkurz@xxxxxxxxxxxxxxxxxx> wrote:

> The current memory accessors logic is:
> - little endian if little_endian
> - native endian (i.e. no byteswap) if !little_endian
>
> If we want to fully support cross-endian vhost, we also need to be
> able to convert to big endian.
>
> Instead of changing the little_endian argument to some 3-value enum, this
> patch changes the logic to:
> - little endian if little_endian
> - big endian if !little_endian
>
> The native endian case is handled by all users with a trivial helper. This
> patch doesn't change any functionality, nor it does add overhead.
>
> Signed-off-by: Greg Kurz <gkurz@xxxxxxxxxxxxxxxxxx>
> ---
>
> Changes since v5:
> - changed endian checking helpers as suggested by Thomas (use || and line
> breaker)
>
> drivers/net/macvtap.c | 3 ++-
> drivers/net/tun.c | 3 ++-
> drivers/vhost/vhost.h | 3 ++-
> include/linux/virtio_byteorder.h | 24 ++++++++++++++----------
> include/linux/virtio_config.h | 3 ++-
> include/linux/vringh.h | 3 ++-
> 6 files changed, 24 insertions(+), 15 deletions(-)
>

Reviewed-by: Cornelia Huck <cornelia.huck@xxxxxxxxxx>

--
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/