Message ID | 1369736734-15449-1-git-send-email-akong@redhat.com |
---|---|
State | New |
Headers | show |
Il 28/05/2013 12:25, Amos Kong ha scritto: > Currently we add typename to fw_dev_path if virtio-bus > doesn't have get_fw_dev_path implementation, the fw_dev_path > passed to seabios is not expected, the typename is redundant. > It causes that bootindex parameter of scsi device doesn't work. > > This patch changes the qdev_get_fw_dev_path_helper() to add > nothing if device doesn't have get_fw_dev_path implementation. This is not enough, because it would change behavior for other buses that do not have get_fw_dev_path. You also need to add a default implementation of the callback. > Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> You don't need my Signed-off-by. On the other hand, you should Cc qemu-stable@nongnu.org. Paolo > Signed-off-by: Amos Kong <akong@redhat.com> > --- > hw/core/qdev.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/hw/core/qdev.c b/hw/core/qdev.c > index 6985ad8..150255d 100644 > --- a/hw/core/qdev.c > +++ b/hw/core/qdev.c > @@ -515,7 +515,7 @@ static int qdev_get_fw_dev_path_helper(DeviceState *dev, char *p, int size) > l += snprintf(p + l, size - l, "%s", d); > g_free(d); > } else { > - l += snprintf(p + l, size - l, "%s", object_get_typename(OBJECT(dev))); > + return l; > } > } > l += snprintf(p + l , size - l, "/"); >
diff --git a/hw/core/qdev.c b/hw/core/qdev.c index 6985ad8..150255d 100644 --- a/hw/core/qdev.c +++ b/hw/core/qdev.c @@ -515,7 +515,7 @@ static int qdev_get_fw_dev_path_helper(DeviceState *dev, char *p, int size) l += snprintf(p + l, size - l, "%s", d); g_free(d); } else { - l += snprintf(p + l, size - l, "%s", object_get_typename(OBJECT(dev))); + return l; } } l += snprintf(p + l , size - l, "/");