virtio-ring: factor out desc_extra allocation