[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

bloat in libdebian-installer



As I have perhaps said before, I'm concerned at the amount of bloat in
libdebian-installer. This is one specific example.

joey@dragon:~/src/debian-installer>grep di_system_devfs_map_from -r . 
./doc/libdi-changes.txt:di_mapdevfs -> di_system_devfs_map_from
./libdebian-installer/src/system/devfs.c:ssize_t di_system_devfs_map_from (const char *path, char *buf, size_t n)
./libdebian-installer/src/system/devfs.c:ssize_t di_mapdevfs (const char *path, char *buf, size_t n) __attribute__ ((alias("di_system_devfs_map_from")));
./libdebian-installer/include/debian-installer/system/devfs.h:ssize_t di_system_devfs_map_from (const char *path, char *ret, size_t len);
./tools/yaboot-installer/choose-yaboot-disk.c:  di_system_devfs_map_from(boot_devfs, boot, PATH_MAX);
./tools/yaboot-installer/choose-yaboot-disk.c:  di_system_devfs_map_from(root_devfs, root, PATH_MAX);
./utils/mapdevfs.c:    if ((di_system_devfs_map_from(argv[1], buf, len))) {

Here we have a function that is used in one powerpc specific module, and
in one utility program that is not installed as part of any d-i boot
image. And yet this function is included on all our boot media, which
is always almost full.

Since nothing links to this function at all except for the utility
program that uses it, there is no reason to have it in a library in the
first place. It can be moved to the mapdevfs utility, which can then be
depended upon by udebs that need it. yaboot-installer would need to be
fixed to call mapdevfs, like all the other boot loader installers do. In
d-i, a binary is a much better way to export this functionality than a
function.

libdebian-installer has doubled in the newest release. I'm worried that
if this bloat continues, we will eventually end up ripping the whole
thing out and starting over.

-- 
see shy jo

Attachment: signature.asc
Description: Digital signature


Reply to: