spapr-vlan: flush queue whenever can_receive can go from false to true
When the guests adds buffers to receive queue, the network device
should flush its queue of pending packets. This is done with
qemu_flush_queued_packets.
This adds a call to qemu_flush_queued_packets() which wakes up the main
loop and let QEMU update the network device status which now is "can
receive". The patch basically does the same thing as e8b4c68
does.
Suggested-by: Max Filippov <jcmvbkbc@gmail.com>
Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru>
Signed-off-by: Alexander Graf <agraf@suse.de>
This commit is contained in:
parent
ac174549b7
commit
0a61f3b478
|
@ -405,6 +405,8 @@ static target_ulong h_add_logical_lan_buffer(PowerPCCPU *cpu,
|
||||||
|
|
||||||
dev->rx_bufs++;
|
dev->rx_bufs++;
|
||||||
|
|
||||||
|
qemu_flush_queued_packets(qemu_get_queue(dev->nic));
|
||||||
|
|
||||||
DPRINTF("h_add_logical_lan_buffer(): Added buf ptr=%d rx_bufs=%d"
|
DPRINTF("h_add_logical_lan_buffer(): Added buf ptr=%d rx_bufs=%d"
|
||||||
" bd=0x%016llx\n", dev->add_buf_ptr, dev->rx_bufs,
|
" bd=0x%016llx\n", dev->add_buf_ptr, dev->rx_bufs,
|
||||||
(unsigned long long)buf);
|
(unsigned long long)buf);
|
||||||
|
|
Loading…
Reference in a new issue