<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux-stable.git/tools/virtio, branch v6.3.12</title>
<subtitle>Linux kernel stable tree</subtitle>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/'/>
<entry>
<title>tools/virtio: Fix arm64 ringtest compilation error</title>
<updated>2023-06-28T09:14:23+00:00</updated>
<author>
<name>Rong Tao</name>
<email>rongtao@cestc.cn</email>
</author>
<published>2023-05-24T12:31:24+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=8ec977a9d3bb5e960646c8b689dbbcf027d4b040'/>
<id>8ec977a9d3bb5e960646c8b689dbbcf027d4b040</id>
<content type='text'>
[ Upstream commit 57380fd1249b20ef772549af2c58ef57b21faba7 ]

Add cpu_relax() for arm64 instead of directly assert(), and add assert.h
header file. Also, add smp_wmb and smp_mb for arm64.

Compilation error as follows, avoid __always_inline undefined.

    $ make
    cc -Wall -pthread -O2 -ggdb -flto -fwhole-program -c -o ring.o ring.c
    In file included from ring.c:10:
    main.h: In function ‘busy_wait’:
    main.h:99:21: warning: implicit declaration of function ‘assert’
    [-Wimplicit-function-declaration]
    99 | #define cpu_relax() assert(0)
        |                     ^~~~~~
    main.h:107:17: note: in expansion of macro ‘cpu_relax’
    107 |                 cpu_relax();
        |                 ^~~~~~~~~
    main.h:12:1: note: ‘assert’ is defined in header ‘&lt;assert.h&gt;’; did you
    forget to ‘#include &lt;assert.h&gt;’?
    11 | #include &lt;stdbool.h&gt;
    +++ |+#include &lt;assert.h&gt;
    12 |
    main.h: At top level:
    main.h:143:23: error: expected ‘;’ before ‘void’
    143 | static __always_inline
        |                       ^
        |                       ;
    144 | void __read_once_size(const volatile void *p, void *res, int
    size)
        | ~~~~
    main.h:158:23: error: expected ‘;’ before ‘void’
    158 | static __always_inline void __write_once_size(volatile void *p,
    void *res, int size)
        |                       ^~~~~
        |                       ;
    make: *** [&lt;builtin&gt;: ring.o] Error 1

Signed-off-by: Rong Tao &lt;rongtao@cestc.cn&gt;
Message-Id: &lt;tencent_F53E159DD7925174445D830DA19FACF44B07@qq.com&gt;
Signed-off-by: Michael S. Tsirkin &lt;mst@redhat.com&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
[ Upstream commit 57380fd1249b20ef772549af2c58ef57b21faba7 ]

Add cpu_relax() for arm64 instead of directly assert(), and add assert.h
header file. Also, add smp_wmb and smp_mb for arm64.

Compilation error as follows, avoid __always_inline undefined.

    $ make
    cc -Wall -pthread -O2 -ggdb -flto -fwhole-program -c -o ring.o ring.c
    In file included from ring.c:10:
    main.h: In function ‘busy_wait’:
    main.h:99:21: warning: implicit declaration of function ‘assert’
    [-Wimplicit-function-declaration]
    99 | #define cpu_relax() assert(0)
        |                     ^~~~~~
    main.h:107:17: note: in expansion of macro ‘cpu_relax’
    107 |                 cpu_relax();
        |                 ^~~~~~~~~
    main.h:12:1: note: ‘assert’ is defined in header ‘&lt;assert.h&gt;’; did you
    forget to ‘#include &lt;assert.h&gt;’?
    11 | #include &lt;stdbool.h&gt;
    +++ |+#include &lt;assert.h&gt;
    12 |
    main.h: At top level:
    main.h:143:23: error: expected ‘;’ before ‘void’
    143 | static __always_inline
        |                       ^
        |                       ;
    144 | void __read_once_size(const volatile void *p, void *res, int
    size)
        | ~~~~
    main.h:158:23: error: expected ‘;’ before ‘void’
    158 | static __always_inline void __write_once_size(volatile void *p,
    void *res, int size)
        |                       ^~~~~
        |                       ;
    make: *** [&lt;builtin&gt;: ring.o] Error 1

Signed-off-by: Rong Tao &lt;rongtao@cestc.cn&gt;
Message-Id: &lt;tencent_F53E159DD7925174445D830DA19FACF44B07@qq.com&gt;
Signed-off-by: Michael S. Tsirkin &lt;mst@redhat.com&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>tools/virtio: fix typo in README instructions</title>
<updated>2023-04-04T15:01:58+00:00</updated>
<author>
<name>Ross Zwisler</name>
<email>zwisler@chromium.org</email>
</author>
<published>2023-02-15T22:33:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=9513c55ce3e8f0f118c47423452c4a4bdaa80222'/>
<id>9513c55ce3e8f0f118c47423452c4a4bdaa80222</id>
<content type='text'>
We need to have a unique chardev for each data path, else the chardevs
will collide and qemu will die with this message:

  qemu-system-x86_64: -device
  virtserialport,bus=virtio-serial0.0,nr=2,chardev=charchannel0,
  id=channel1,name=trace-path-cpu0:
  Property 'virtserialport.chardev' can't take value 'charchannel0':
  Device 'charchannel0' is in use

Signed-off-by: Ross Zwisler &lt;zwisler@google.com&gt;
Message-Id: &lt;20230215223350.2658616-7-zwisler@google.com&gt;
Signed-off-by: Michael S. Tsirkin &lt;mst@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
We need to have a unique chardev for each data path, else the chardevs
will collide and qemu will die with this message:

  qemu-system-x86_64: -device
  virtserialport,bus=virtio-serial0.0,nr=2,chardev=charchannel0,
  id=channel1,name=trace-path-cpu0:
  Property 'virtserialport.chardev' can't take value 'charchannel0':
  Device 'charchannel0' is in use

Signed-off-by: Ross Zwisler &lt;zwisler@google.com&gt;
Message-Id: &lt;20230215223350.2658616-7-zwisler@google.com&gt;
Signed-off-by: Michael S. Tsirkin &lt;mst@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>tools/virtio: Ignore virtio-trace/trace-agent</title>
<updated>2023-03-13T06:29:12+00:00</updated>
<author>
<name>Rong Tao</name>
<email>rongtao@cestc.cn</email>
</author>
<published>2023-03-09T06:13:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=ae43c20da2a77c508715a9c77845b4e87e6a1e25'/>
<id>ae43c20da2a77c508715a9c77845b4e87e6a1e25</id>
<content type='text'>
since commit 108fc82596e3("tools: Add guest trace agent as a user tool")
introduce virtio-trace/trace-agent, it should be ignored in the git tree.

Signed-off-by: Rong Tao &lt;rongtao@cestc.cn&gt;
Message-Id: &lt;tencent_52B2BC2F47540A5FEB46E710BD0C8485B409@qq.com&gt;
Signed-off-by: Michael S. Tsirkin &lt;mst@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
since commit 108fc82596e3("tools: Add guest trace agent as a user tool")
introduce virtio-trace/trace-agent, it should be ignored in the git tree.

Signed-off-by: Rong Tao &lt;rongtao@cestc.cn&gt;
Message-Id: &lt;tencent_52B2BC2F47540A5FEB46E710BD0C8485B409@qq.com&gt;
Signed-off-by: Michael S. Tsirkin &lt;mst@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>tools/virtio: enable to build with retpoline</title>
<updated>2023-02-21T00:26:59+00:00</updated>
<author>
<name>Shunsuke Mie</name>
<email>mie@igel.co.jp</email>
</author>
<published>2023-02-02T10:45:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=0d0ed4006127714e318c9a9d7796f5c8532a21e7'/>
<id>0d0ed4006127714e318c9a9d7796f5c8532a21e7</id>
<content type='text'>
Add build options to bring it close to a linux kernel. It allows for
testing that is close to reality.

Signed-off-by: Shunsuke Mie &lt;mie@igel.co.jp&gt;
Message-Id: &lt;20230202104538.2041879-1-mie@igel.co.jp&gt;
Signed-off-by: Michael S. Tsirkin &lt;mst@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Add build options to bring it close to a linux kernel. It allows for
testing that is close to reality.

Signed-off-by: Shunsuke Mie &lt;mie@igel.co.jp&gt;
Message-Id: &lt;20230202104538.2041879-1-mie@igel.co.jp&gt;
Signed-off-by: Michael S. Tsirkin &lt;mst@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>tools/virtio: fix the vringh test for virtio ring changes</title>
<updated>2023-01-27T11:18:41+00:00</updated>
<author>
<name>Shunsuke Mie</name>
<email>mie@igel.co.jp</email>
</author>
<published>2023-01-10T03:43:10+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=3f7b75abf41cc4143aa295f62acbb060a012868d'/>
<id>3f7b75abf41cc4143aa295f62acbb060a012868d</id>
<content type='text'>
Fix the build caused by missing kmsan_handle_dma() and is_power_of_2() that
are used in drivers/virtio/virtio_ring.c.

Signed-off-by: Shunsuke Mie &lt;mie@igel.co.jp&gt;
Message-Id: &lt;20230110034310.779744-1-mie@igel.co.jp&gt;
Signed-off-by: Michael S. Tsirkin &lt;mst@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Fix the build caused by missing kmsan_handle_dma() and is_power_of_2() that
are used in drivers/virtio/virtio_ring.c.

Signed-off-by: Shunsuke Mie &lt;mie@igel.co.jp&gt;
Message-Id: &lt;20230110034310.779744-1-mie@igel.co.jp&gt;
Signed-off-by: Michael S. Tsirkin &lt;mst@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>tools/virtio: remove smp_read_barrier_depends()</title>
<updated>2022-12-28T10:28:11+00:00</updated>
<author>
<name>Davidlohr Bueso</name>
<email>dave@stgolabs.net</email>
</author>
<published>2022-11-28T03:43:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=81931012bd7dc52fadf2b720605fce8a7148d4a7'/>
<id>81931012bd7dc52fadf2b720605fce8a7148d4a7</id>
<content type='text'>
This gets rid of the last references to smp_read_barrier_depends()
 which for the kernel side was removed in v5.9. The serialization
required for Alpha is done inside READ_ONCE() instead of having
users deal with it. Simply use a full barrier, the architecture
does not have rmb in the first place.

Signed-off-by: Davidlohr Bueso &lt;dave@stgolabs.net&gt;
Message-Id: &lt;20221128034347.990-3-dave@stgolabs.net&gt;
Signed-off-by: Michael S. Tsirkin &lt;mst@redhat.com&gt;
Reviewed-by: Xuan Zhuo &lt;xuanzhuo@linux.alibaba.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This gets rid of the last references to smp_read_barrier_depends()
 which for the kernel side was removed in v5.9. The serialization
required for Alpha is done inside READ_ONCE() instead of having
users deal with it. Simply use a full barrier, the architecture
does not have rmb in the first place.

Signed-off-by: Davidlohr Bueso &lt;dave@stgolabs.net&gt;
Message-Id: &lt;20221128034347.990-3-dave@stgolabs.net&gt;
Signed-off-by: Michael S. Tsirkin &lt;mst@redhat.com&gt;
Reviewed-by: Xuan Zhuo &lt;xuanzhuo@linux.alibaba.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>tools/virtio: remove stray characters</title>
<updated>2022-12-28T10:28:11+00:00</updated>
<author>
<name>Davidlohr Bueso</name>
<email>dave@stgolabs.net</email>
</author>
<published>2022-11-28T03:43:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=8aeac42d60936046a00e67cdf7d27b061df2962f'/>
<id>8aeac42d60936046a00e67cdf7d27b061df2962f</id>
<content type='text'>
__read_once_size() is not a macro, remove those '/'s.

Signed-off-by: Davidlohr Bueso &lt;dave@stgolabs.net&gt;
Message-Id: &lt;20221128034347.990-2-dave@stgolabs.net&gt;
Signed-off-by: Michael S. Tsirkin &lt;mst@redhat.com&gt;
Reviewed-by: Xuan Zhuo &lt;xuanzhuo@linux.alibaba.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
__read_once_size() is not a macro, remove those '/'s.

Signed-off-by: Davidlohr Bueso &lt;dave@stgolabs.net&gt;
Message-Id: &lt;20221128034347.990-2-dave@stgolabs.net&gt;
Signed-off-by: Michael S. Tsirkin &lt;mst@redhat.com&gt;
Reviewed-by: Xuan Zhuo &lt;xuanzhuo@linux.alibaba.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>tools/virtio: Variable type completion</title>
<updated>2022-12-28T10:28:10+00:00</updated>
<author>
<name>wangjianli</name>
<email>wangjianli@cdjrlc.com</email>
</author>
<published>2022-11-13T07:07:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=a4722f64f924a9992efc08d141c21b2da02b70f3'/>
<id>a4722f64f924a9992efc08d141c21b2da02b70f3</id>
<content type='text'>
Replace "unsigned" with "unsigned int"

Signed-off-by: wangjianli &lt;wangjianli@cdjrlc.com&gt;
Message-Id: &lt;20221113070742.48271-1-wangjianli@cdjrlc.com&gt;
Signed-off-by: Michael S. Tsirkin &lt;mst@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Replace "unsigned" with "unsigned int"

Signed-off-by: wangjianli &lt;wangjianli@cdjrlc.com&gt;
Message-Id: &lt;20221113070742.48271-1-wangjianli@cdjrlc.com&gt;
Signed-off-by: Michael S. Tsirkin &lt;mst@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>tools: Delete the unneeded semicolon after curly braces</title>
<updated>2022-12-28T10:28:10+00:00</updated>
<author>
<name>Shaomin Deng</name>
<email>dengshaomin@cdjrlc.com</email>
</author>
<published>2022-11-05T15:51:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=75e4ab9735a5a70612dd06461ca372b897bf371c'/>
<id>75e4ab9735a5a70612dd06461ca372b897bf371c</id>
<content type='text'>
Unneeded semicolon after curly braces, so delete it.

Signed-off-by: Shaomin Deng &lt;dengshaomin@cdjrlc.com&gt;
Message-Id: &lt;20221105155151.12155-1-dengshaomin@cdjrlc.com&gt;
Signed-off-by: Michael S. Tsirkin &lt;mst@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Unneeded semicolon after curly braces, so delete it.

Signed-off-by: Shaomin Deng &lt;dengshaomin@cdjrlc.com&gt;
Message-Id: &lt;20221105155151.12155-1-dengshaomin@cdjrlc.com&gt;
Signed-off-by: Michael S. Tsirkin &lt;mst@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>tools/virtio: initialize spinlocks in vring_test.c</title>
<updated>2022-12-28T10:09:47+00:00</updated>
<author>
<name>Ricardo Cañuelo</name>
<email>ricardo.canuelo@collabora.com</email>
</author>
<published>2022-10-12T06:29:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=c262f75cb6bb5a63828e72ce3b8fe808e5029479'/>
<id>c262f75cb6bb5a63828e72ce3b8fe808e5029479</id>
<content type='text'>
The virtio_device vqs_list spinlocks must be initialized before use to
prevent functions that manipulate the device virtualqueues, such as
vring_new_virtqueue(), from blocking indefinitely.

Signed-off-by: Ricardo Cañuelo &lt;ricardo.canuelo@collabora.com&gt;
Message-Id: &lt;20221012062949.1526176-1-ricardo.canuelo@collabora.com&gt;
Signed-off-by: Michael S. Tsirkin &lt;mst@redhat.com&gt;
Reviewed-by: Xuan Zhuo &lt;xuanzhuo@linux.alibaba.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The virtio_device vqs_list spinlocks must be initialized before use to
prevent functions that manipulate the device virtualqueues, such as
vring_new_virtqueue(), from blocking indefinitely.

Signed-off-by: Ricardo Cañuelo &lt;ricardo.canuelo@collabora.com&gt;
Message-Id: &lt;20221012062949.1526176-1-ricardo.canuelo@collabora.com&gt;
Signed-off-by: Michael S. Tsirkin &lt;mst@redhat.com&gt;
Reviewed-by: Xuan Zhuo &lt;xuanzhuo@linux.alibaba.com&gt;
</pre>
</div>
</content>
</entry>
</feed>
