OSDN Git Service

tools include UAPI: Sync linux/vhost.h with the kernel sources
authorArnaldo Carvalho de Melo <acme@redhat.com>
Fri, 14 Jul 2023 13:00:22 +0000 (10:00 -0300)
committerArnaldo Carvalho de Melo <acme@redhat.com>
Fri, 14 Jul 2023 13:16:03 +0000 (10:16 -0300)
commit7b8615935560e1db55c962efa17a5cbdab349107
tree2d09a1652f779cbfbb37d9b44fe01c7574a49a6c
parent0e022f5bf72f9d7b6f77466b41a87c2076aa8d03
tools include UAPI: Sync linux/vhost.h with the kernel sources

To get the changes in:

  228a27cf78afc63a ("vhost: Allow worker switching while work is queueing")
  c1ecd8e950079774 ("vhost: allow userspace to create workers")

To pick up these changes and support them:

  $ tools/perf/trace/beauty/vhost_virtio_ioctl.sh > before
  $ cp include/uapi/linux/vhost.h tools/include/uapi/linux/vhost.h
  $ tools/perf/trace/beauty/vhost_virtio_ioctl.sh > after
  $ diff -u before after
  --- before 2023-07-14 09:58:14.268249807 -0300
  +++ after 2023-07-14 09:58:23.041493892 -0300
  @@ -10,6 +10,7 @@
    [0x12] = "SET_VRING_BASE",
    [0x13] = "SET_VRING_ENDIAN",
    [0x14] = "GET_VRING_ENDIAN",
  + [0x15] = "ATTACH_VRING_WORKER",
    [0x20] = "SET_VRING_KICK",
    [0x21] = "SET_VRING_CALL",
    [0x22] = "SET_VRING_ERR",
  @@ -31,10 +32,12 @@
    [0x7C] = "VDPA_SET_GROUP_ASID",
    [0x7D] = "VDPA_SUSPEND",
    [0x7E] = "VDPA_RESUME",
  + [0x9] = "FREE_WORKER",
   };
   static const char *vhost_virtio_ioctl_read_cmds[] = {
    [0x00] = "GET_FEATURES",
    [0x12] = "GET_VRING_BASE",
  + [0x16] = "GET_VRING_WORKER",
    [0x26] = "GET_BACKEND_FEATURES",
    [0x70] = "VDPA_GET_DEVICE_ID",
    [0x71] = "VDPA_GET_STATUS",
  @@ -44,6 +47,7 @@
    [0x79] = "VDPA_GET_CONFIG_SIZE",
    [0x7A] = "VDPA_GET_AS_NUM",
    [0x7B] = "VDPA_GET_VRING_GROUP",
  + [0x8] = "NEW_WORKER",
    [0x80] = "VDPA_GET_VQS_COUNT",
    [0x81] = "VDPA_GET_GROUP_NUM",
   };
  $

For instance, see how those 'cmd' ioctl arguments get translated, now
ATTACH_VRING_WORKER, GET_VRING_WORKER and NEW_WORKER, will be as well:

  # perf trace -a -e ioctl --max-events=10
       0.000 ( 0.011 ms): pipewire/2261 ioctl(fd: 60, cmd: SNDRV_PCM_HWSYNC, arg: 0x1)                   = 0
      21.353 ( 0.014 ms): pipewire/2261 ioctl(fd: 60, cmd: SNDRV_PCM_HWSYNC, arg: 0x1)                   = 0
      25.766 ( 0.014 ms): gnome-shell/2196 ioctl(fd: 14, cmd: DRM_I915_IRQ_WAIT, arg: 0x7ffe4a22c740)    = 0
      25.845 ( 0.034 ms): gnome-shel:cs0/2212 ioctl(fd: 14, cmd: DRM_I915_IRQ_EMIT, arg: 0x7fd43915dc70) = 0
      25.916 ( 0.011 ms): gnome-shell/2196 ioctl(fd: 9, cmd: DRM_MODE_ADDFB2, arg: 0x7ffe4a22c8a0)       = 0
      25.941 ( 0.025 ms): gnome-shell/2196 ioctl(fd: 9, cmd: DRM_MODE_ATOMIC, arg: 0x7ffe4a22c840)       = 0
      32.915 ( 0.009 ms): gnome-shell/2196 ioctl(fd: 9, cmd: DRM_MODE_RMFB, arg: 0x7ffe4a22cf9c)         = 0
      42.522 ( 0.013 ms): gnome-shell/2196 ioctl(fd: 14, cmd: DRM_I915_IRQ_WAIT, arg: 0x7ffe4a22c740)    = 0
      42.579 ( 0.031 ms): gnome-shel:cs0/2212 ioctl(fd: 14, cmd: DRM_I915_IRQ_EMIT, arg: 0x7fd43915dc70) = 0
      42.644 ( 0.010 ms): gnome-shell/2196 ioctl(fd: 9, cmd: DRM_MODE_ADDFB2, arg: 0x7ffe4a22c8a0)       = 0
  #

Cc: Adrian Hunter <adrian.hunter@intel.com>
Cc: Ian Rogers <irogers@google.com>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Michael S. Tsirkin <mst@redhat.com>
Cc: Mike Christie <michael.christie@oracle.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Link: https://lore.kernel.org/lkml/ZLFJ%2FRsDGYiaH5nj@kernel.org/
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
tools/include/uapi/linux/vhost.h