<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40"><head><meta http-equiv=Content-Type content="text/html; charset=utf-8"><meta name=Generator content="Microsoft Word 15 (filtered medium)"><style><!--
/* Font Definitions */
@font-face
{font-family:SimSun;
panose-1:2 1 6 0 3 1 1 1 1 1;}
@font-face
{font-family:Dotum;
panose-1:2 11 6 0 0 1 1 1 1 1;}
@font-face
{font-family:"Cambria Math";
panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
{font-family:DengXian;
panose-1:2 1 6 0 3 1 1 1 1 1;}
@font-face
{font-family:DengXian;
panose-1:2 1 6 0 3 1 1 1 1 1;}
@font-face
{font-family:SimSun;
panose-1:2 1 6 0 3 1 1 1 1 1;}
@font-face
{font-family:"\@Dotum";
panose-1:2 11 6 0 0 1 1 1 1 1;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin:0cm;
text-align:justify;
text-justify:inter-ideograph;
font-size:10.5pt;
font-family:DengXian;}
a:link, span.MsoHyperlink
{mso-style-priority:99;
color:blue;
text-decoration:underline;}
.MsoChpDefault
{mso-style-type:export-only;
font-family:DengXian;}
/* Page Definitions */
@page WordSection1
{size:612.0pt 792.0pt;
margin:72.0pt 90.0pt 72.0pt 90.0pt;}
div.WordSection1
{page:WordSection1;}
--></style></head><body lang=ZH-CN link=blue vlink="#954F72" style='word-wrap:break-word'><div class=WordSection1><p class=MsoNormal><b><span lang=EN-US style='font-family:"Dotum",sans-serif;color:#333333;background:#F9F9F9'>I also realized</span></b><b><span lang=EN-US style='font-family:"Dotum",sans-serif'> this is already fixed</span></b><b><span lang=EN-US>.</span></b><b><span lang=EN-US style='font-family:"Dotum",sans-serif'><o:p></o:p></span></b></p><p class=MsoNormal><b><span lang=EN-US style='font-family:"Dotum",sans-serif'><o:p> </o:p></span></b></p><p class=MsoNormal><b><span lang=EN-US style='font-family:"Dotum",sans-serif'><o:p> </o:p></span></b></p><p class=MsoNormal><b><span lang=EN-US style='font-family:"Dotum",sans-serif'><o:p> </o:p></span></b></p><p class=MsoNormal><b><span lang=EN-US style='font-family:"Dotum",sans-serif'><o:p> </o:p></span></b></p><p class=MsoNormal><b><span lang=EN-US style='font-family:"Dotum",sans-serif'><o:p> </o:p></span></b></p><p class=MsoNormal><b><span lang=EN-US style='font-family:"Dotum",sans-serif'><o:p> </o:p></span></b></p><p class=MsoNormal><b><span lang=EN-US style='font-family:"Dotum",sans-serif'>Thank you<o:p></o:p></span></b></p><p class=MsoNormal><b><span lang=EN-US style='font-family:"Dotum",sans-serif'><o:p> </o:p></span></b></p><p class=MsoNormal><b><span lang=EN-US style='font-family:"Dotum",sans-serif'><o:p> </o:p></span></b></p><p class=MsoNormal><span lang=EN-US><o:p> </o:p></span></p><p class=MsoNormal>发送自<span lang=EN-US> Windows 10 </span>版<span lang=EN-US><a href="https://go.microsoft.com/fwlink/?LinkId=550986"><span lang=EN-US><span lang=EN-US>邮件</span></span></a></span>应用</p><p class=MsoNormal><span lang=EN-US style='font-size:12.0pt;font-family:SimSun'><o:p> </o:p></span></p><div style='mso-element:para-border-div;border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0cm 0cm 0cm'><p class=MsoNormal style='border:none;padding:0cm'><b>发件人<span lang=EN-US>: </span></b><span lang=EN-US><a href="mailto:pkrempa@redhat.com">Peter Krempa</a><br></span><b>发送时间<span lang=EN-US>: </span></b><span lang=EN-US>2021</span>年<span lang=EN-US>1</span>月<span lang=EN-US>4</span>日<span lang=EN-US> 21:15<br></span><b>收件人<span lang=EN-US>: </span></b><span lang=EN-US><a href="mailto:274268859@qq.com">liyalei</a><br></span><b>抄送<span lang=EN-US>: </span></b><span lang=EN-US><a href="mailto:libvir-list@redhat.com">libvir-list@redhat.com</a>; <a href="mailto:liyl43@chinatelecom.cn">liyalei</a><br></span><b>主题<span lang=EN-US>: </span></b><span lang=EN-US>Re: [PATCH] Fix wrong use of path variable</span></p></div><p class=MsoNormal><span lang=EN-US style='font-size:12.0pt;font-family:SimSun'><o:p> </o:p></span></p><p class=MsoNormal><span lang=EN-US>On Wed, Dec 30, 2020 at 18:39:35 +0800, liyalei wrote:</span></p><p class=MsoNormal><span lang=EN-US>> From: liyalei <liyl43@chinatelecom.cn></span></p><p class=MsoNormal><span lang=EN-US><o:p> </o:p></span></p><p class=MsoNormal><span lang=EN-US>Please provide some more description in the commit message, such as</span></p><p class=MsoNormal><span lang=EN-US>describe the bug that this patch is fixing.</span></p><p class=MsoNormal><span lang=EN-US><o:p> </o:p></span></p><p class=MsoNormal><span lang=EN-US>Additionally the libvirt project requires [1] you to certify that you</span></p><p class=MsoNormal><span lang=EN-US>are in compliance of the 'Developer certificate of origin' [2] by</span></p><p class=MsoNormal><span lang=EN-US>providing the appropriate tag in the commit message (read the docs to</span></p><p class=MsoNormal><span lang=EN-US>figure out which).</span></p><p class=MsoNormal><span lang=EN-US><o:p> </o:p></span></p><p class=MsoNormal><span lang=EN-US>[1]: https://libvirt.org/hacking.html#developer-certificate-of-origin</span></p><p class=MsoNormal><span lang=EN-US>[2]: https://developercertificate.org/</span></p><p class=MsoNormal><span lang=EN-US><o:p> </o:p></span></p><p class=MsoNormal><span lang=EN-US>> </span></p><p class=MsoNormal><span lang=EN-US>> ---</span></p><p class=MsoNormal><span lang=EN-US>> src/util/virnetdevopenvswitch.c | 2 +-</span></p><p class=MsoNormal><span lang=EN-US>> 1 file changed, 1 insertion(+), 1 deletion(-)</span></p><p class=MsoNormal><span lang=EN-US>> </span></p><p class=MsoNormal><span lang=EN-US>> diff --git a/src/util/virnetdevopenvswitch.c b/src/util/virnetdevopenvswitch.c</span></p><p class=MsoNormal><span lang=EN-US>> index d380b0cf22..7eabaa763d 100644</span></p><p class=MsoNormal><span lang=EN-US>> --- a/src/util/virnetdevopenvswitch.c</span></p><p class=MsoNormal><span lang=EN-US>> +++ b/src/util/virnetdevopenvswitch.c</span></p><p class=MsoNormal><span lang=EN-US>> @@ -494,7 +494,7 @@ virNetDevOpenvswitchGetVhostuserIfname(const char *path,</span></p><p class=MsoNormal><span lang=EN-US>> if (server) {</span></p><p class=MsoNormal><span lang=EN-US>> virCommandAddArgList(cmd, "--no-headings", "--columns=name", "find",</span></p><p class=MsoNormal><span lang=EN-US>> "Interface", NULL);</span></p><p class=MsoNormal><span lang=EN-US>> - virCommandAddArgPair(cmd, "options:vhost-server-path", "path");</span></p><p class=MsoNormal><span lang=EN-US>> + virCommandAddArgPair(cmd, "options:vhost-server-path", path);</span></p><p class=MsoNormal><span lang=EN-US><o:p> </o:p></span></p><p class=MsoNormal><span lang=EN-US>Looks like this is already fixed:</span></p><p class=MsoNormal><span lang=EN-US><o:p> </o:p></span></p><p class=MsoNormal><span lang=EN-US>commit 0dd029b7f2e7d9619ca6a22f43857aafb449c3a7</span></p><p class=MsoNormal><span lang=EN-US>Author: Michal PrÃvoznÃk <mprivozn@redhat.com></span></p><p class=MsoNormal><span lang=EN-US>Date: Wed Dec 16 18:52:48 2020 +0100</span></p><p class=MsoNormal><span lang=EN-US><o:p> </o:p></span></p><p class=MsoNormal><span lang=EN-US> virNetDevOpenvswitchGetVhostuserIfname: Actually use @path to lookup interface</span></p><p class=MsoNormal><span lang=EN-US><o:p> </o:p></span></p><p class=MsoNormal><span lang=EN-US> In v6.10.0-rc1~221 I wanted to make virNetDevOpenvswitchGetVhostuserIfname()</span></p><p class=MsoNormal><span lang=EN-US> lookup interface name even for vhostuser interfaces with mode='server'. For</span></p><p class=MsoNormal><span lang=EN-US> these, we are given a socket path which is then created by QEMU and to which</span></p><p class=MsoNormal><span lang=EN-US> OpenVSwitch connects to and creates an interface. Because of this, we don't</span></p><p class=MsoNormal><span lang=EN-US> know the name of the interface upfront (when starting QEMU) and have to use</span></p><p class=MsoNormal><span lang=EN-US> the path to query OpenVSwitch later (using ovs-vsctl). What I intended to use</span></p><p class=MsoNormal><span lang=EN-US> was:</span></p><p class=MsoNormal><span lang=EN-US><o:p> </o:p></span></p><p class=MsoNormal><span lang=EN-US> ovs-vsctl --no-headings --columns=name find Interface options:vhost-server-path=$path</span></p><p class=MsoNormal><span lang=EN-US><o:p> </o:p></span></p><p class=MsoNormal><span lang=EN-US> But what my code does is:</span></p><p class=MsoNormal><span lang=EN-US><o:p> </o:p></span></p><p class=MsoNormal><span lang=EN-US> ovs-vsctl --no-headings --columns=name find Interface options:vhost-server-path=path</span></p><p class=MsoNormal><span lang=EN-US><o:p> </o:p></span></p><p class=MsoNormal><span lang=EN-US> and it's all because the argument to the function is named "path"</span></p><p class=MsoNormal><span lang=EN-US> which I then enclosed in double quotes while it should have been</span></p><p class=MsoNormal><span lang=EN-US> used as a variable.</span></p><p class=MsoNormal><span lang=EN-US><o:p> </o:p></span></p><p class=MsoNormal><span lang=EN-US> Fixes: e4c29e2904197472919d050c67acfd59f0144bbc</span></p><p class=MsoNormal><span lang=EN-US> Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1767013</span></p><p class=MsoNormal><span lang=EN-US> Signed-off-by: Michal Privoznik <mprivozn@redhat.com></span></p><p class=MsoNormal><span lang=EN-US> Reviewed-by: Laine Stump <laine@redhat.com></span></p><p class=MsoNormal><span lang=EN-US><o:p> </o:p></span></p><p class=MsoNormal><span lang=EN-US>diff --git a/src/util/virnetdevopenvswitch.c b/src/util/virnetdevopenvswitch.c</span></p><p class=MsoNormal><span lang=EN-US>index d380b0cf22..7eabaa763d 100644</span></p><p class=MsoNormal><span lang=EN-US>--- a/src/util/virnetdevopenvswitch.c</span></p><p class=MsoNormal><span lang=EN-US>+++ b/src/util/virnetdevopenvswitch.c</span></p><p class=MsoNormal><span lang=EN-US>@@ -494,7 +494,7 @@ virNetDevOpenvswitchGetVhostuserIfname(const char *path,</span></p><p class=MsoNormal><span lang=EN-US> if (server) {</span></p><p class=MsoNormal><span lang=EN-US> virCommandAddArgList(cmd, "--no-headings", "--columns=name", "find",</span></p><p class=MsoNormal><span lang=EN-US> "Interface", NULL);</span></p><p class=MsoNormal><span lang=EN-US>- virCommandAddArgPair(cmd, "options:vhost-server-path", "path");</span></p><p class=MsoNormal><span lang=EN-US>+ virCommandAddArgPair(cmd, "options:vhost-server-path", path);</span></p><p class=MsoNormal><span lang=EN-US> } else {</span></p><p class=MsoNormal><span lang=EN-US> const char *tmpIfname = NULL;</span></p><p class=MsoNormal><span lang=EN-US><o:p> </o:p></span></p><p class=MsoNormal><span lang=EN-US><o:p> </o:p></span></p><p class=MsoNormal><span lang=EN-US>> } else {</span></p><p class=MsoNormal><span lang=EN-US>> const char *tmpIfname = NULL;</span></p><p class=MsoNormal><span lang=EN-US>> </span></p><p class=MsoNormal><span lang=EN-US>> -- </span></p><p class=MsoNormal><span lang=EN-US>> 2.27.0</span></p><p class=MsoNormal><span lang=EN-US>> </span></p><p class=MsoNormal><span lang=EN-US><o:p> </o:p></span></p><p class=MsoNormal><span lang=EN-US><o:p> </o:p></span></p></div></body></html>