>Work-around: -device pci-assign,host=00:19.1 OK, this new way can work when create guest with static assignment. But how to hot add a pci device to guest? the old hot add command "pci_add pci_addr=auto host host=00:19.0" has the same parse error. BTW: if we use add "-net none" in qemu command, guest can not be created and nothing error printed. Do you have plan to fix this parse issue? Thanks, Xudong -----Original Message----- From: Markus Armbruster [mailto:armbru@xxxxxxxxxx] Sent: 2010年6月24日 14:08 To: Hao, Xudong Cc: qemu-devel@xxxxxxxxxx; aliguori@xxxxxxxxxx; kvm@xxxxxxxxxxxxxxx Subject: Re: qemu fail to parse command line with "-pcidevice 00:19.0" Note to qemu-devel: this issue is qemu-kvm only. "Hao, Xudong" <xudong.hao@xxxxxxxxx> writes: > When assign one PCI device, qemu fail to parse the command line: > qemu-system_x86 -smp 2 -m 1024 -hda /path/to/img -pcidevice host=00:19.0 > Error: > qemu-system-x86_64: Parameter 'id' expects an identifier > Identifiers consist of letters, digits, '-', '.', '_', starting with a letter. > pcidevice argument parse error; please check the help text for usage > Could not add assigned device host=00:19.0 > > https://bugs.launchpad.net/qemu/+bug/597932 > > This issue caused by qemu-kvm commit b560a9ab9be06afcbb78b3791ab836dad208a239. The bug is in add_assigned_device(): r = get_param_value(id, sizeof(id), "id", arg); if (!r) r = get_param_value(id, sizeof(id), "name", arg); if (!r) r = get_param_value(id, sizeof(id), "host", arg); We end up with invalid ID "00:19.0". Is there a technical reason why we must have an ID? I doubt it. Work-around: -device pci-assign,host=00:19.1 See the last section of docs/qdev-device-use.txt for details. ?韬{.n?????%??檩??w?{.n??ぞo??n?■???h?璀?{?夸z罐?+€?zf"?????i?????_璁?:+v??撸?