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

Re: [libvirt] [PATCH] virsh: Use old API if remote libvirtd does not support new



On 09/14/2011 11:42 AM, Eric Blake wrote:
I've confirmed that we have a regression :(. Talking to an 0.8.8 server
gives VIR_ERR_NO_SUPPORT when issuing the "unknown procedure: 243"
message; it is only 0.9.3 and newer where we switched to the new rpc
handling where we get VIR_ERR_RPC instead. I'm looking into how best to
repair this regression, so that clients need not check for VIR_ERR_RPC
everywhere.

More info from gdb. In both cases, I tested virsh client from latest libvirt.git, and had a breakpoint at virNetClientProgramDispatchError.

With 0.8.8 server, err looks like:

(gdb) p err
$5 = {code = 39, domain = 13, message = 0x657cb0, level = 2, dom = 0x0,
  str1 = 0x657de0, str2 = 0x0, str3 = 0x0, int1 = 0, int2 = 0, net = 0x0}

but with 0.9.4, it looks like:

(gdb) p err
$2 = {code = 39, domain = 7, message = 0x657d50, level = 2, dom = 0x0,
  str1 = 0x657e70, str2 = 0x657f90, str3 = 0x0, int1 = -1, int2 = -1,
  net = 0x0}

That difference in domain (VIR_FROM_REMOTE vs. VIR_FROM_RPC) is sufficient to bypass our rewriting rules later in the function which convert VIR_ERR_RPC back to VIR_ERR_NO_SUPPORT.

--
Eric Blake   eblake redhat com    +1-801-349-2682
Libvirt virtualization library http://libvirt.org


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