On 08/11/17 00:18, Seeteena Thoufeek wrote: > The function spapr_phb_vfio_get_loc_code uses wrong path for > fetching loc-code from host DT > > this is the call that needs to be fixed: > /* Construct and read from host device tree the loc-code */ > path = g_strdup_printf("/proc/device-tree%s/ibm,loc-code", buf);
I do not see why would extra '/' hurt but where does it really fail? My machines have leading '/' in devspec, do not yours? aik@garrison2:~$ cat /sys/bus/pci/devices/0009:03:00.0/devspec && echo -e '\n' /pciex@3fffe40500000/pci@0/pci@0/pci@1/usb-xhci@0 > > Signed-off-by: Seeteena Thoufeek <s1see...@linux.vnet.ibm.com> > --- > hw/ppc/spapr_pci.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/hw/ppc/spapr_pci.c b/hw/ppc/spapr_pci.c > index 5a3122a..ae86322 100644 > --- a/hw/ppc/spapr_pci.c > +++ b/hw/ppc/spapr_pci.c > @@ -762,7 +762,7 @@ static char *spapr_phb_vfio_get_loc_code(sPAPRPHBState > *sphb, PCIDevice *pdev) > g_free(path); > > /* Construct and read from host device tree the loc-code */ > - path = g_strdup_printf("/proc/device-tree%s/ibm,loc-code", buf); > + path = g_strdup_printf("/proc/device-tree/%s/ibm,loc-code", buf); > g_free(buf); > if (!g_file_get_contents(path, &buf, NULL, NULL)) { > goto err_out; > -- Alexey