Displaying 20 results from an estimated 20 matches for "cpu_to_tun16".
2016 Jun 08
7
[PATCH 0/6] virtio_net: use common code for virtio_net_hdr and skb GSO conversion
Hi,
This patches introduce virtio_net_hdr_{from,to}_skb functions for
conversion of GSO information between skb and virtio_net_hdr.
Mike Rapoport (6):
virtio_net: add _UAPI prefix to virtio_net header guards
virtio_net: introduce virtio_net_hdr_{from,to}_skb
macvtap: use common code for virtio_net_hdr and skb GSO conversion
tuntap: use common code for virtio_net_hdr and skb GSO
2016 Jun 08
7
[PATCH 0/6] virtio_net: use common code for virtio_net_hdr and skb GSO conversion
Hi,
This patches introduce virtio_net_hdr_{from,to}_skb functions for
conversion of GSO information between skb and virtio_net_hdr.
Mike Rapoport (6):
virtio_net: add _UAPI prefix to virtio_net header guards
virtio_net: introduce virtio_net_hdr_{from,to}_skb
macvtap: use common code for virtio_net_hdr and skb GSO conversion
tuntap: use common code for virtio_net_hdr and skb GSO
2015 Apr 23
0
[PATCH v5 2/8] tun: add tun_is_little_endian() helper
...tun_struct *tun)
+{
+ return tun->flags & TUN_VNET_LE;
+}
+
static inline u16 tun16_to_cpu(struct tun_struct *tun, __virtio16 val)
{
- return __virtio16_to_cpu(tun->flags & TUN_VNET_LE, val);
+ return __virtio16_to_cpu(tun_is_little_endian(tun), val);
}
static inline __virtio16 cpu_to_tun16(struct tun_struct *tun, u16 val)
{
- return __cpu_to_virtio16(tun->flags & TUN_VNET_LE, val);
+ return __cpu_to_virtio16(tun_is_little_endian(tun), val);
}
static inline u32 tun_hashfn(u32 rxhash)
2015 Apr 24
0
[PATCH v6 2/8] tun: add tun_is_little_endian() helper
...tun_struct *tun)
+{
+ return tun->flags & TUN_VNET_LE;
+}
+
static inline u16 tun16_to_cpu(struct tun_struct *tun, __virtio16 val)
{
- return __virtio16_to_cpu(tun->flags & TUN_VNET_LE, val);
+ return __virtio16_to_cpu(tun_is_little_endian(tun), val);
}
static inline __virtio16 cpu_to_tun16(struct tun_struct *tun, u16 val)
{
- return __cpu_to_virtio16(tun->flags & TUN_VNET_LE, val);
+ return __cpu_to_virtio16(tun_is_little_endian(tun), val);
}
static inline u32 tun_hashfn(u32 rxhash)
2015 Jun 01
1
[PATCH v6 2/8] tun: add tun_is_little_endian() helper
...amp; TUN_VNET_LE;
> +}
> +
> static inline u16 tun16_to_cpu(struct tun_struct *tun, __virtio16 val)
> {
> - return __virtio16_to_cpu(tun->flags & TUN_VNET_LE, val);
> + return __virtio16_to_cpu(tun_is_little_endian(tun), val);
> }
>
> static inline __virtio16 cpu_to_tun16(struct tun_struct *tun, u16 val)
> {
> - return __cpu_to_virtio16(tun->flags & TUN_VNET_LE, val);
> + return __cpu_to_virtio16(tun_is_little_endian(tun), val);
> }
>
> static inline u32 tun_hashfn(u32 rxhash)
>
> _______________________________________________
&...
2015 Jun 01
1
[PATCH v6 2/8] tun: add tun_is_little_endian() helper
...amp; TUN_VNET_LE;
> +}
> +
> static inline u16 tun16_to_cpu(struct tun_struct *tun, __virtio16 val)
> {
> - return __virtio16_to_cpu(tun->flags & TUN_VNET_LE, val);
> + return __virtio16_to_cpu(tun_is_little_endian(tun), val);
> }
>
> static inline __virtio16 cpu_to_tun16(struct tun_struct *tun, u16 val)
> {
> - return __cpu_to_virtio16(tun->flags & TUN_VNET_LE, val);
> + return __cpu_to_virtio16(tun_is_little_endian(tun), val);
> }
>
> static inline u32 tun_hashfn(u32 rxhash)
>
> _______________________________________________
&...
2015 Feb 22
0
[PATCH 0/3] vhost_net: support for cross endian guests
...) instead of the hint
> whether byteswap is needed or not (patch 1)
> - rebased on top of the virtio-1 accessors (patch 2)
>
> Patch 3 is a separate fix: I think it is also valid for virtio-1.
I don't think so. See e.g. this code in tun:
gso.csum_offset = cpu_to_tun16(tun, skb->csum_offset);
looks like it has the correct endian-ness for virtio-1.
> Please comment.
>
> ---
>
> Greg Kurz (3):
> vhost: add VHOST_VRING_F_LEGACY_BIG_ENDIAN flag
> vhost: add support for legacy virtio
> vhost_net: fix virtio_net header...
2015 Feb 22
0
[PATCH 0/3] vhost_net: support for cross endian guests
...) instead of the hint
> whether byteswap is needed or not (patch 1)
> - rebased on top of the virtio-1 accessors (patch 2)
>
> Patch 3 is a separate fix: I think it is also valid for virtio-1.
I don't think so. See e.g. this code in tun:
gso.csum_offset = cpu_to_tun16(tun, skb->csum_offset);
looks like it has the correct endian-ness for virtio-1.
> Please comment.
>
> ---
>
> Greg Kurz (3):
> vhost: add VHOST_VRING_F_LEGACY_BIG_ENDIAN flag
> vhost: add support for legacy virtio
> vhost_net: fix virtio_net header...
2015 Feb 20
8
[PATCH 0/3] vhost_net: support for cross endian guests
Hi,
This patchset allows vhost_net to be used with legacy virtio
when guest and host have a different endianness. It is based
on previous work by C?dric Le Goater:
https://www.mail-archive.com/kvm-ppc at vger.kernel.org/msg09848.html
As suggested by MST:
- the API now asks for a specific format (big endian) instead of the hint
whether byteswap is needed or not (patch 1)
- rebased on top of
2015 Feb 20
8
[PATCH 0/3] vhost_net: support for cross endian guests
Hi,
This patchset allows vhost_net to be used with legacy virtio
when guest and host have a different endianness. It is based
on previous work by C?dric Le Goater:
https://www.mail-archive.com/kvm-ppc at vger.kernel.org/msg09848.html
As suggested by MST:
- the API now asks for a specific format (big endian) instead of the hint
whether byteswap is needed or not (patch 1)
- rebased on top of
2015 Apr 24
27
[PATCH v6 0/8] vhost: support for cross endian guests
Only cosmetic and documentation changes since v5.
---
Greg Kurz (8):
virtio: introduce virtio_is_little_endian() helper
tun: add tun_is_little_endian() helper
macvtap: introduce macvtap_is_little_endian() helper
vringh: introduce vringh_is_little_endian() helper
vhost: introduce vhost_is_little_endian() helper
virtio: add explicit big-endian support to memory
2015 Apr 24
27
[PATCH v6 0/8] vhost: support for cross endian guests
Only cosmetic and documentation changes since v5.
---
Greg Kurz (8):
virtio: introduce virtio_is_little_endian() helper
tun: add tun_is_little_endian() helper
macvtap: introduce macvtap_is_little_endian() helper
vringh: introduce vringh_is_little_endian() helper
vhost: introduce vhost_is_little_endian() helper
virtio: add explicit big-endian support to memory
2015 Apr 23
16
[PATCH v5 0/8] vhost: support for cross endian guests
Hi,
This patchset allows vhost to be used with legacy virtio when guest and host
have a different endianness. It is compatible with modern virtio and can be
fully compiled out through kernel config.
FWIW, I could flawlessly kexec/reboot guests from ppc64 to ppc64le and back.
I could also migrate from a ppc64 to a ppc64le host and back. No regressions
on x86 as expected. My experimental QEMU tree
2015 Apr 23
16
[PATCH v5 0/8] vhost: support for cross endian guests
Hi,
This patchset allows vhost to be used with legacy virtio when guest and host
have a different endianness. It is compatible with modern virtio and can be
fully compiled out through kernel config.
FWIW, I could flawlessly kexec/reboot guests from ppc64 to ppc64le and back.
I could also migrate from a ppc64 to a ppc64le host and back. No regressions
on x86 as expected. My experimental QEMU tree
2015 Apr 02
9
[PATCH v2 0/7] vhost: support for cross endian guests
Hi,
This patchset allows vhost to be used with legacy virtio when guest and host
have a different endianness. It is a complete rework of my initial post.
Patches 1 to 5 are preliminary work: we move the endianness check out of all
memory accessors to separate functions.
Patch 6 changes the semantics of the accessors so that they have explicit big
endian support.
Patch 7 brings the cross-endian
2015 Apr 02
9
[PATCH v2 0/7] vhost: support for cross endian guests
Hi,
This patchset allows vhost to be used with legacy virtio when guest and host
have a different endianness. It is a complete rework of my initial post.
Patches 1 to 5 are preliminary work: we move the endianness check out of all
memory accessors to separate functions.
Patch 6 changes the semantics of the accessors so that they have explicit big
endian support.
Patch 7 brings the cross-endian
2015 Apr 07
13
[PATCH v3 0/7] vhost: support for cross endian guests
Hi,
This patchset allows vhost to be used with legacy virtio when guest and host
have a different endianness.
Patches 1-6 remain the same as the previous post. Patch 7 was heavily changed
according to MST's comments.
---
Greg Kurz (7):
virtio: introduce virtio_is_little_endian() helper
tun: add tun_is_little_endian() helper
macvtap: introduce macvtap_is_little_endian()
2015 Apr 07
13
[PATCH v3 0/7] vhost: support for cross endian guests
Hi,
This patchset allows vhost to be used with legacy virtio when guest and host
have a different endianness.
Patches 1-6 remain the same as the previous post. Patch 7 was heavily changed
according to MST's comments.
---
Greg Kurz (7):
virtio: introduce virtio_is_little_endian() helper
tun: add tun_is_little_endian() helper
macvtap: introduce macvtap_is_little_endian()
2015 Apr 10
16
[PATCH v4 0/8] vhost: support for cross endian guests
Hi,
This patchset allows vhost to be used with legacy virtio when guest and host
have a different endianness.
Patch 7 got rewritten according to Cornelia's and Michael's comments. I have
also introduced patch 8 that brings BE vnet headers support to tun/macvtap.
This series is enough to have vhost_net working flawlessly. I could
succesfully reboot guests from ppc64 to ppc64le and
2015 Apr 10
16
[PATCH v4 0/8] vhost: support for cross endian guests
Hi,
This patchset allows vhost to be used with legacy virtio when guest and host
have a different endianness.
Patch 7 got rewritten according to Cornelia's and Michael's comments. I have
also introduced patch 8 that brings BE vnet headers support to tun/macvtap.
This series is enough to have vhost_net working flawlessly. I could
succesfully reboot guests from ppc64 to ppc64le and