Patchwork virtio: don't expose u16 in userspace api

login
register
mail settings
Submitter stephen hemminger
Date May 4, 2013, 12:49 a.m.
Message ID <20130503174941.043d10b7@nehalam.linuxnetplumber.net>
Download mbox | patch
Permalink /patch/241418/
State Accepted
Delegated to: David Miller
Headers show

Comments

stephen hemminger - May 4, 2013, 12:49 a.m.
Programs using virtio headers outside of kernel will no longer
build because u16 type does not exist in userspace. All user ABI
must use __u16 typedef instead.

Bug introduce by:
  commit 986a4f4d452dec004697f667439d27c3fda9c928
  Author: Jason Wang <jasowang@redhat.com>
  Date:   Fri Dec 7 07:04:56 2012 +0000

    virtio_net: multiqueue support

Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>

---
Patch against -net but should go to stable for 3.9.1

--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
David Miller - May 5, 2013, 8:58 p.m.
From: Stephen Hemminger <stephen@networkplumber.org>
Date: Fri, 3 May 2013 17:49:41 -0700

> Programs using virtio headers outside of kernel will no longer
> build because u16 type does not exist in userspace. All user ABI
> must use __u16 typedef instead.
> 
> Bug introduce by:
>   commit 986a4f4d452dec004697f667439d27c3fda9c928
>   Author: Jason Wang <jasowang@redhat.com>
>   Date:   Fri Dec 7 07:04:56 2012 +0000
> 
>     virtio_net: multiqueue support
> 
> Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>

Applied and queued up for -stable.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Patch

--- a/include/uapi/linux/virtio_net.h	2013-05-02 14:30:53.362557982 -0700
+++ b/include/uapi/linux/virtio_net.h	2013-05-03 17:44:06.028365521 -0700
@@ -191,7 +191,7 @@  struct virtio_net_ctrl_mac {
  * specified.
  */
 struct virtio_net_ctrl_mq {
-	u16 virtqueue_pairs;
+	__u16 virtqueue_pairs;
 };
 
 #define VIRTIO_NET_CTRL_MQ   4