|
@@ -1905,7 +1905,8 @@ static ssize_t virtio_net_receive_rcu(NetClientState *nc, const uint8_t *buf,
|
|
if (!no_rss && n->rss_data.enabled && n->rss_data.enabled_software_rss) {
|
|
if (!no_rss && n->rss_data.enabled && n->rss_data.enabled_software_rss) {
|
|
int index = virtio_net_process_rss(nc, buf, size, &extra_hdr);
|
|
int index = virtio_net_process_rss(nc, buf, size, &extra_hdr);
|
|
if (index >= 0) {
|
|
if (index >= 0) {
|
|
- NetClientState *nc2 = qemu_get_subqueue(n->nic, index);
|
|
|
|
|
|
+ NetClientState *nc2 =
|
|
|
|
+ qemu_get_subqueue(n->nic, index % n->curr_queue_pairs);
|
|
return virtio_net_receive_rcu(nc2, buf, size, true);
|
|
return virtio_net_receive_rcu(nc2, buf, size, true);
|
|
}
|
|
}
|
|
}
|
|
}
|