Re: [PATCH] Add support for multiple serial ports into the Xen driver

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Eric, thanks for reply but I'm having some issues now...

I've pulled libvirt sources from upstream and I'm unable to compile it since it keeps saying following:

  CCLD   libvirt_parthelper
./.libs/libvirt_util.a(libvirt_util_la-util.o): In function `virFileOperationNoFork': /home/mig/Work/virt-related/libvirt/src/util/util.c:1363: undefined reference to `rpl_open' ./.libs/libvirt_util.a(libvirt_util_la-util.o): In function `virFileReadAll': /home/mig/Work/virt-related/libvirt/src/util/util.c:1159: undefined reference to `rpl_open' ./.libs/libvirt_util.a(libvirt_util_la-util.o): In function `virFileWriteStr': /home/mig/Work/virt-related/libvirt/src/util/util.c:1184: undefined reference to `rpl_open' /home/mig/Work/virt-related/libvirt/src/util/util.c:1186: undefined reference to `rpl_open' ./.libs/libvirt_util.a(libvirt_util_la-util.o): In function `virFileOperation': /home/mig/Work/virt-related/libvirt/src/util/util.c:1519: undefined reference to `rpl_open' ./.libs/libvirt_util.a(libvirt_util_la-util.o):/home/mig/Work/virt-related/libvirt/src/util/util.c:1795: more undefined references to `rpl_open' follow
collect2: ld returned 1 exit status

Unfortunately I was unable to find definition of 'rpl_open' function using git grep so I don't really know what to do there. Some bug or do I miss something?
+++ b/src/xen/xend_internal.c
@@ -1218,6 +1218,9 @@ xenDaemonParseSxprChar(const char *value,

       if (value[0] == '/') {
           def->source.type = VIR_DOMAIN_CHR_TYPE_DEV;
+        def->data.file.path = strdup(value);
+        if (!def->data.file.path)
+            goto error;
This should be goto no_memory.


To my knowledge this is not the only one issue there since this has been changed from def->data.file.path to def->source.data.file.path to compile successfully but that's fine. It seems like codebase changed so it took some time to rewrite the code for the current upstream codebase.
@@ -5958,10 +6011,22 @@ xenDaemonFormatSxpr(virConnectPtr conn,
                   virBufferAddLit(&buf, "(parallel none)");
               }
               if (def->serials) {
-                virBufferAddLit(&buf, "(serial ");
-                if (xenDaemonFormatSxprChr(def->serials[0],&buf)<   0)
-                    goto error;
-                virBufferAddLit(&buf, ")");
+                if (def->nserials>   1) {
+                    virBufferAddLit(&buf, "(serial (");
+                    for (i = 0; i<   def->nserials; i++) {
+                        if
(xenDaemonFormatSxprChr(def->serials[i],&buf)<   0)
+                            goto error;
+                        if (i<   def->nserials - 1)
+                            virBufferAddLit(&buf, " ");
+                    }
+                    virBufferAddLit(&buf, "))");
+                }
You skipped "none" as a placeholder when parsing; but I'm not sure if
this generates "none" on output to match.

Basically I don't know what you mean by this. Also, when I was defining XMLs I saw that the console node copies the first serial node however how to define it if first serial node is just none?

I mean the XML is like:

<serial type='dev'>
<source path='/dev/ttyS0'/>
<target port='0'/>
</serial>
<serial type='dev'>
<source path='/dev/ttyS1'/>
<target port='1'/>
</serial>
<console type='dev'>
<source path='/dev/ttyS0'/>
<target port='0'/>
</console>

But what should the XML part be for case of first serial device to be none ?

Michal

--
Michal Novotny<minovotn@xxxxxxxxxx>, RHCE
Virtualization Team (xen userspace), Red Hat

--
libvir-list mailing list
libvir-list@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/libvir-list


[Index of Archives]     [Virt Tools]     [Libvirt Users]     [Lib OS Info]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [KDE Users]     [Fedora Tools]