On Thu, Jan 18, 2018 at 09:26:09PM +0800, Yuanhan Liu wrote: > Hi Oliver, > > On Thu, Jan 18, 2018 at 10:07:32AM +0100, Olivier Matz wrote: > > Rationalize the function virtio_dev_free_mbufs(): > > > > - skip NULL vqs instead of crashing: this is required for the > > next commit > > - use the same kind of loop than in virtio_free_queues() > > - also flush mbufs from the control queue (this is useless yet) > > Could we just do "nr_vq = virtio_get_nr_vq(hw) - 1" with a comment that > CQ is excluded, for skipping the CQ?
Is "nr_vq = virtio_get_nr_vq(hw) - 1" always valid? Shouldn't we do this check? if (vtpci_with_feature(hw, VIRTIO_NET_F_CTRL_VQ)) Instead, I suggest this: queue_type = virtio_get_queue_type(hw, i); if (queue_type == VTNET_RQ) type = "rxq"; else if (queue_type == VTNET_TQ) type = "txq"; else - type = "cq"; + continue; > > - factorize common code between rxq, txq, cq > > > > Cc: sta...@dpdk.org > > Could you split the patch two 2: > > - one for fixing the crash (skip the NULL vqs). We only need this one > for stable release. > - another one for the refactoring Yes, do you want them all in the same patchset? Thank you for the comments Olivier