On Mon, Jan 19, 2015 at 12:27:11PM +0100, Paolo Bonzini wrote: > On 02/01/2015 17:20, Paolo Bonzini wrote: > >> > > >> > The assert can be dropped completely since the code already has an > >> > equivalent assert: > >> > > >> > queues = qemu_find_net_clients_except(nc->name, ncs, > >> > NET_CLIENT_OPTIONS_KIND_NIC, > >> > MAX_QUEUE_NUM); > >> > assert(queues != 0); <-- fail if type == NET_CLIENT_OPTIONS_KIND_NIC > > I left it on purpose for documentation, but I'll send v2 next week that > > removes it. > > Actually it's not the same. If you have "-netdev user,id=e1000 -device > e1000,netdev=e1000" you will be able to call qemu_del_net_client on the > NIC, and it will _not_ fail if the assertion is removed.
I don't follow. If you call qemu_del_net_client(e1000_nic) then qemu_find_net_clients_except(nc->name, ncs, NET_CLIENT_OPTIONS_KIND_NIC, MAX_QUEUE_NUM) returns 0. This causes the assert(queues != 0) to fail. Can you explain the scenario? Stefan
pgpP4HGAqR2jE.pgp
Description: PGP signature