qemu/block
Fam Zheng 27685a8dd0 dmg: Move libbz2 code to dmg-bz2.so
dmg.o was moved to block-obj-m in 5505e8b76 to become a separate module,
so that its reference to libbz2, since 6b383c08c, doesn't add an extra
library to the main executable.

Until recently, commit 06e60f70a (blockdev: Add dynamic module loading
for block drivers) moved it back to block-obj-y to simplify the design
of dynamic loading of block modules. But we don't want to lose the
feature of less library dependency on the main executable.

The solution here is to move only the bz2 related code to a separate
DSO file, and load it when dmg_open is called.

dmg_probe doesn't depend on bz2 support to work, and is the only code in
this file which can run before dmg_open.

While we are at it, fix the unhelpful cast of last argument passed to
dmg_uncompress_bz2.

Signed-off-by: Fam Zheng <famz@redhat.com>
Message-id: 1473043845-13197-4-git-send-email-famz@redhat.com
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Signed-off-by: Max Reitz <mreitz@redhat.com>
2016-10-07 14:14:06 +02:00
..
accounting.c
archipelago.c block: use aio_bh_schedule_oneshot 2016-10-07 13:34:07 +02:00
backup.c Backup: export interfaces for extra serialization 2016-09-13 11:00:56 +01:00
blkdebug.c block: use aio_bh_schedule_oneshot 2016-10-07 13:34:07 +02:00
blkreplay.c replay: allow replay stopping and restarting 2016-09-27 11:57:30 +02:00
blkverify.c block: use aio_bh_schedule_oneshot 2016-10-07 13:34:07 +02:00
block-backend.c block: Add qdev ID to DEVICE_TRAY_MOVED 2016-10-07 13:34:22 +02:00
bochs.c
cloop.c
commit.c commit: Add 'base' to the reopen queue before 'overlay_bs' 2016-09-23 13:36:10 +02:00
crypto.c crypto: make PBKDF iterations configurable for LUKS format 2016-09-19 16:30:45 +01:00
curl.c block: use aio_bh_schedule_oneshot 2016-10-07 13:34:07 +02:00
dirty-bitmap.c
dmg-bz2.c dmg: Move libbz2 code to dmg-bz2.so 2016-10-07 14:14:06 +02:00
dmg.c dmg: Move libbz2 code to dmg-bz2.so 2016-10-07 14:14:06 +02:00
dmg.h dmg: Move libbz2 code to dmg-bz2.so 2016-10-07 14:14:06 +02:00
gluster.c block: use aio_bh_schedule_oneshot 2016-10-07 13:34:07 +02:00
io.c block: use aio_bh_schedule_oneshot 2016-10-07 13:34:07 +02:00
iscsi.c block: use aio_bh_schedule_oneshot 2016-10-07 13:34:07 +02:00
linux-aio.c linux-aio: fix re-entrant completion processing 2016-09-28 17:11:23 +01:00
Makefile.objs dmg: Move libbz2 code to dmg-bz2.so 2016-10-07 14:14:06 +02:00
mirror.c mirror: auto complete active commit 2016-09-13 11:00:56 +01:00
nbd-client.c
nbd-client.h
nbd.c block/nbd: Store runtime option values 2016-08-15 15:52:29 +02:00
nfs.c block: use aio_bh_schedule_oneshot 2016-10-07 13:34:07 +02:00
null.c block: use aio_bh_schedule_oneshot 2016-10-07 13:34:07 +02:00
parallels.c
qapi.c
qcow2-cache.c
qcow2-cluster.c qcow2: fix encryption during cow of sectors 2016-09-23 13:36:09 +02:00
qcow2-refcount.c
qcow2-snapshot.c
qcow2.c qcow2: avoid memcpy(dst, NULL, len) 2016-09-13 11:00:55 +01:00
qcow2.h Remove unused function declarations 2016-09-15 15:32:22 +03:00
qcow.c qcow: cleanup qcow_co_pwritev_compressed to avoid the recursion 2016-09-05 19:06:48 +02:00
qed-check.c
qed-cluster.c
qed-gencb.c
qed-l2-cache.c
qed-table.c
qed.c block: use aio_bh_schedule_oneshot 2016-10-07 13:34:07 +02:00
qed.h block: use aio_bh_schedule_oneshot 2016-10-07 13:34:07 +02:00
quorum.c
raw_bsd.c
raw-posix.c block/qapi: Move 'aio' option to file driver 2016-09-29 14:13:39 +02:00
raw-win32.c block/qapi: Move 'aio' option to file driver 2016-09-29 14:13:39 +02:00
rbd.c block: use aio_bh_schedule_oneshot 2016-10-07 13:34:07 +02:00
replication.c replication: Implement new driver for block replication 2016-09-13 11:00:56 +01:00
sheepdog.c sheepdog: remove useless casts 2016-09-15 15:32:22 +03:00
snapshot.c
ssh.c
stream.c
throttle-groups.c
trace-events
vdi.c vdi: Use QEMU UUID API 2016-09-23 11:42:52 +08:00
vhdx-endian.c vhdx: Use QEMU UUID API 2016-09-23 11:42:52 +08:00
vhdx-log.c
vhdx.c vhdx: Use QEMU UUID API 2016-09-23 11:42:52 +08:00
vhdx.h
vmdk.c vmdk: add vmdk_co_pwritev_compressed 2016-09-05 19:06:48 +02:00
vpc.c vpc: Use QEMU UUID API 2016-09-23 11:42:52 +08:00
vvfat.c block: Add "read-only" to the options QDict 2016-09-23 13:36:10 +02:00
win32-aio.c
write-threshold.c block: use bdrv_add_before_write_notifier 2016-10-07 13:34:07 +02:00