1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154
|
* remove qemu-system-x86 initscript (kvm module loading)
past jessie or even for jessie. Modern kernels (3.4+)
loads these modules automatically.
* fix other binaries (s390-zipl, ppc_rom)
* figure out what to do with kvm initscripts and udev rules.
Currently we ship kvm udev rules in qemu-system-common, even
if kvm modules makes no sence on many arches and even if
corresponding qemu-system-$arch might not be installed.
We load kvm module (on x86 only) in qemu-system-x86, but
we don't fix permissions of /dev/kvm at install time (see
qemu-system-common.postinst). It all is.. wrong.
Maybe we should provide all - the kvm udev rules, kvm module
loading script, and postinst snippet to change perms - in
all relevant arch-specific packages only when arch is native?
But how to do that properly?
* permissions/ownership for /dev/vhost_net???
* startup script for qemu-guest-agent: check dependencies & runlevels.
* remove /usr/bin/qemu alternative removing for jessie+1
* maybe provide activation for udev & systemd:
SUBSYSTEM=="virtio-ports", ATTR{name}=="org.qemu.guest_agent.0", \
TAG+="systemd" ENV{SYSTEMD_WANTS}="qemu-guest-agent.service"
and dev-virtio/ports-org.qemu.guest_agent.0.device activation
for systemd.
* decide what to do with qemu-bridge-helper (#691138)
* -dbg package(s): these are very large, there are either
many of them (esp. if we split qemu-system or maybe qemu-user
to per-target pkgs) or they're unflexible, adds significant
data to Packages files (which are fetched by everyone), and
gains little (for the lifetime of qemu-kvm-dbg it was useful
only once). I think we will not provide them.
Below are some old observations about this.
Current linux-user binaries are built in a way that results in inclusion
of .gnu_debuglink section in the binaries. These sections comes from
Scrt1.o, crt1.o and crt0.o files. This makes dh_strip --dbg-package,
which calls
objcopy --add-gnu-debuglink $dbgfile $binary
to fail with a "very understandable" error message:
objcopy:cannot create debug link section ...: Invalid operation
(file a bugreport against binutils to make this message more explicit)
A workaround is to strip .gnu_debuglink section using the same objcopy
first, or add a line
/DISCARD/ : { *(.gnu_debuglink) }
to all the *.ld scripts which are used to produce linux-user binaries,
just like it is done in roms/qemu-palcode/palcode.ld .
We can have just one qemu-dbg package (with versioned Breaks maybe, or
without dependencies at all), or we can have qemu-system-dbg, qemu-user-dbg,
qemu-user-static-dbg. Current (as of 1.3) size of all debug symbols on i386:
total 416M
2.4M qemu-alpha
3.7M qemu-arm
3.9M qemu-armeb
2.3M qemu-cris
3.8M qemu-i386
2.5M qemu-m68k
3.9M qemu-mips
3.8M qemu-mipsel
2.2M qemu-or32
5.5M qemu-ppc
8.4M qemu-ppc64
8.4M qemu-ppc64abi32
2.9M qemu-s390x
2.3M qemu-sh4
2.5M qemu-sh4eb
2.5M qemu-sparc
3.2M qemu-sparc32plus
3.4M qemu-sparc64
2.1M qemu-unicore32
4.5M qemu-x86_64
2.7M qemu-alpha-static
4.0M qemu-arm-static
4.2M qemu-armeb-static
2.6M qemu-cris-static
4.0M qemu-i386-static
2.8M qemu-m68k-static
2.4M qemu-microblaze
2.2M qemu-microblazeel
2.7M qemu-microblaze-static
2.5M qemu-microblazeel-static
4.2M qemu-mips-static
4.1M qemu-mipsel-static
2.5M qemu-or32-static
5.9M qemu-ppc-static
8.7M qemu-ppc64-static
8.6M qemu-ppc64abi32-static
3.1M qemu-s390x-static
2.6M qemu-sh4-static
2.8M qemu-sh4eb-static
2.7M qemu-sparc-static
3.5M qemu-sparc32plus-static
3.6M qemu-sparc64-static
2.4M qemu-unicore32-static
4.7M qemu-x86_64-static
9.7M qemu-system-alpha
14M qemu-system-arm
6.8M qemu-system-cris
13M qemu-system-i386
6.7M qemu-system-lm32
8.8M qemu-system-m68k
6.7M qemu-system-microblaze
6.7M qemu-system-microblazeel
12M qemu-system-mips
14M qemu-system-mips64
14M qemu-system-mips64el
12M qemu-system-mipsel
6.6M qemu-system-or32
14M qemu-system-ppc
17M qemu-system-ppc64
14M qemu-system-ppcemb
7.6M qemu-system-s390x
9.0M qemu-system-sh4
9.0M qemu-system-sh4eb
7.3M qemu-system-sparc
11M qemu-system-sparc64
6.5M qemu-system-unicore32
14M qemu-system-x86_64
6.7M qemu-system-xtensa
6.7M qemu-system-xtensaeb
1.8M qemu-img
1.8M qemu-io
1.8M qemu-nbd
69K virtfs-proxy-helper
Total size of the qemu-dbg (all the above) .deb is ~150Mb when compressed
using default gzip, or 90Mb with
dh_builddeb -- -Zxz
Note that in both cases -dbg is much larger than sum of all other binary
packages.
|