Almost everyone mentions -blockdev as a replacement for -drive.
But I have to remind several issues with it: 1. While documentation has improved a lot, -blockdev is still mostly unknown to the masses. 2. -blockdev is just too verbose, one have to specify a lot of parameters just to do a simple thing which is solved with an extra parameter with -drive. Including various backing stores/chains for qcow2 files - this is terrible for using things manually from command line 3. -blockdev does not work with -snapshot 4. Something else I forgot while typing all the above :) In my view, -blockdev is not a substitute for -drive, not at all, and it is very user-unfriendly. This is why -drive seems to be a good trade-off between things like -hda (which is just too simplistic) and -blockdev which which is way too verbose and lacks some automatic sugar like -snapshot. /mjt