virtio-blk: Do not split buffer

bio->bio_data from ZFS is allocated either from alloc_page or malloc
which are both physically contiguous buffer. So no need to break a
contiguous buffers that > 4k into several physical page mapping even if
the virtual space is contiguous.

This reduces the virtio buffer element usage a lot with large buffers.

Test:

On my setup using ramdisk as backend.

$ scripts/run.py -e "/tests/misc-bdev-write.so vblk1 200000000"

Before:
Wrote 13644.500 MB in 10.00 s = 1364.157 Mb/s

After:
Wrote 30219.750 MB in 10.00 s = 3021.261 Mb/s

Reviewed-by: Glauber Costa <glommer@cloudius-systems.com>
Signed-off-by: Asias He <asias@cloudius-systems.com>
Signed-off-by: Pekka Enberg <penberg@cloudius-systems.com>