diff options
author | Arnaldo Carvalho de Melo <acme@redhat.com> | 2018-09-11 12:12:40 -0400 |
---|---|---|
committer | Arnaldo Carvalho de Melo <acme@redhat.com> | 2018-09-11 12:12:40 -0400 |
commit | 7f28785c41f4d5635e69c183b3de8ea19093ccef (patch) | |
tree | 23522d0cadaa5036d9dde8f32aa848f70435b9c0 | |
parent | 0210c156d7fd330bce1c2c842bee9d27f1c5dfeb (diff) |
tools headers uapi: Update tools's copy of linux/vhost.h
To get the changes in:
c48300c92ad9 ("vhost: fix VHOST_GET_BACKEND_FEATURES ioctl request definition")
This makes 'perf trace' and other tools in the future using its
beautifiers in a libbeauty.so library be able to translate these new
ioctl to strings:
$ tools/perf/trace/beauty/vhost_virtio_ioctl.sh > /tmp/after
$ diff -u /tmp/before /tmp/after
--- /tmp/before 2018-09-11 13:10:57.923038244 -0300
+++ /tmp/after 2018-09-11 13:11:20.329012685 -0300
@@ -15,6 +15,7 @@
[0x22] = "SET_VRING_ERR",
[0x23] = "SET_VRING_BUSYLOOP_TIMEOUT",
[0x24] = "GET_VRING_BUSYLOOP_TIMEOUT",
+ [0x25] = "SET_BACKEND_FEATURES",
[0x30] = "NET_SET_BACKEND",
[0x40] = "SCSI_SET_ENDPOINT",
[0x41] = "SCSI_CLEAR_ENDPOINT",
@@ -27,4 +28,5 @@
static const char *vhost_virtio_ioctl_read_cmds[] = {
[0x00] = "GET_FEATURES",
[0x12] = "GET_VRING_BASE",
+ [0x26] = "GET_BACKEND_FEATURES",
};
$
We'll also use this to be able to express syscall filters using symbolic
these symbolic names, something like:
# perf trace --all-cpus -e ioctl(cmd=*GET_FEATURES)
This silences the following warning during perf's build:
Warning: Kernel ABI header at 'tools/include/uapi/linux/vhost.h' differs from latest version at 'include/uapi/linux/vhost.h'
diff -u tools/include/uapi/linux/vhost.h include/uapi/linux/vhost.h
Cc: Adrian Hunter <adrian.hunter@intel.com>
Cc: David Ahern <dsahern@gmail.com>
Cc: David S. Miller <davem@davemloft.net>
Cc: Gleb Fotengauer-Malinovskiy <glebfm@altlinux.org>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Wang Nan <wangnan0@huawei.com>
Link: https://lkml.kernel.org/n/tip-35x71oei2hdui9u0tarpimbq@git.kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
-rw-r--r-- | tools/include/uapi/linux/vhost.h | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/tools/include/uapi/linux/vhost.h b/tools/include/uapi/linux/vhost.h index c51f8e5cc608..84c3de89696a 100644 --- a/tools/include/uapi/linux/vhost.h +++ b/tools/include/uapi/linux/vhost.h | |||
@@ -65,6 +65,7 @@ struct vhost_iotlb_msg { | |||
65 | }; | 65 | }; |
66 | 66 | ||
67 | #define VHOST_IOTLB_MSG 0x1 | 67 | #define VHOST_IOTLB_MSG 0x1 |
68 | #define VHOST_IOTLB_MSG_V2 0x2 | ||
68 | 69 | ||
69 | struct vhost_msg { | 70 | struct vhost_msg { |
70 | int type; | 71 | int type; |
@@ -74,6 +75,15 @@ struct vhost_msg { | |||
74 | }; | 75 | }; |
75 | }; | 76 | }; |
76 | 77 | ||
78 | struct vhost_msg_v2 { | ||
79 | __u32 type; | ||
80 | __u32 reserved; | ||
81 | union { | ||
82 | struct vhost_iotlb_msg iotlb; | ||
83 | __u8 padding[64]; | ||
84 | }; | ||
85 | }; | ||
86 | |||
77 | struct vhost_memory_region { | 87 | struct vhost_memory_region { |
78 | __u64 guest_phys_addr; | 88 | __u64 guest_phys_addr; |
79 | __u64 memory_size; /* bytes */ | 89 | __u64 memory_size; /* bytes */ |
@@ -160,6 +170,14 @@ struct vhost_memory { | |||
160 | #define VHOST_GET_VRING_BUSYLOOP_TIMEOUT _IOW(VHOST_VIRTIO, 0x24, \ | 170 | #define VHOST_GET_VRING_BUSYLOOP_TIMEOUT _IOW(VHOST_VIRTIO, 0x24, \ |
161 | struct vhost_vring_state) | 171 | struct vhost_vring_state) |
162 | 172 | ||
173 | /* Set or get vhost backend capability */ | ||
174 | |||
175 | /* Use message type V2 */ | ||
176 | #define VHOST_BACKEND_F_IOTLB_MSG_V2 0x1 | ||
177 | |||
178 | #define VHOST_SET_BACKEND_FEATURES _IOW(VHOST_VIRTIO, 0x25, __u64) | ||
179 | #define VHOST_GET_BACKEND_FEATURES _IOR(VHOST_VIRTIO, 0x26, __u64) | ||
180 | |||
163 | /* VHOST_NET specific defines */ | 181 | /* VHOST_NET specific defines */ |
164 | 182 | ||
165 | /* Attach virtio net ring to a raw socket, or tap device. | 183 | /* Attach virtio net ring to a raw socket, or tap device. |