From: Thomas Petazzoni via buildroot <buildroot@buildroot.org>
To: Bernd Kuhls <bernd@kuhls.net>
Cc: Eric Le Bihan <eric.le.bihan.dev@free.fr>,
Sen Hastings <sen@phobosdpl.com>,
"Yann E . MORIN" <yann.morin.1998@free.fr>,
Julien Corjon <corjon.j@ecagroup.com>,
buildroot@buildroot.org,
Giulio Benetti <giulio.benetti@benettiengineering.com>,
Fabrice Fontaine <fontaine.fabrice@gmail.com>,
Norbert Lange <nolange79@gmail.com>
Subject: Re: [Buildroot] [PATCH/next v9 00/12] Introduce libudev (branch yem/libudev-6)
Date: Tue, 22 Aug 2023 22:59:49 +0200 [thread overview]
Message-ID: <20230822225949.2b326664@windsurf> (raw)
In-Reply-To: <20230806140241.4155773-1-bernd@kuhls.net>
Hello,
On Sun, 6 Aug 2023 16:02:29 +0200
Bernd Kuhls <bernd@kuhls.net> wrote:
> Bernd Kuhls (4):
> package/kodi: only needs libudev, not udev daemon
> package/libv4l: optionally use libudev
> package/libcec: optionally use libudev
> package/usbutils: only needs libudev, not udev daemon
>
> Yann E. MORIN (8):
> package/eudev: add option to enable the udev daemon
> package/eudev: allow building only the library
> package/libudev: new virtual package
> package/eudev: provides libudev
> package/systemd: provides libudev
> package/libudev: make it selectable
> package/qt5base: optionally use libudev
> package/libinput: only needs libudev, not udev daemon
Thanks Bernd for working on this. I didn't look carefully at the
patches in this iteration, but I remember looking at previous
iterations, and it was good.
I just wanted to question the relevance of this, so I did a quick
experiment. I applied just patches 1 and 2 of this patch series, which
allow to build eudev with and without the daemon. Then I built two
defconfigs:
BR2_arm=y
BR2_cortex_a9=y
BR2_ARM_ENABLE_VFP=y
BR2_TOOLCHAIN_EXTERNAL=y
BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y
BR2_INIT_NONE=y
BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_EUDEV=y
BR2_SYSTEM_BIN_SH_NONE=y
# BR2_PACKAGE_BUSYBOX is not set
# BR2_PACKAGE_EUDEV_ENABLE_HWDB is not set
# BR2_TARGET_ROOTFS_TAR is not set
which enables the full eudev (daemon included)
And:
BR2_arm=y
BR2_cortex_a9=y
BR2_ARM_ENABLE_VFP=y
BR2_TOOLCHAIN_EXTERNAL=y
BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y
BR2_INIT_NONE=y
BR2_SYSTEM_BIN_SH_NONE=y
# BR2_PACKAGE_BUSYBOX is not set
BR2_PACKAGE_EUDEV=y
# BR2_PACKAGE_EUDEV_ENABLE_HWDB is not set
# BR2_TARGET_ROOTFS_TAR is not set
which enables only libudev.
The first defconfig generates an output/target/ of 7.4 MB, the second
defconfig generates an output/target/ of 5.4 MB.
In the first defconfig, the eudev package takes 1.69 MB, and the
util-linux-libs package takes 330 KB.
In the second defconfig, the eudev package takes 133 KB, and
util-linux-libs is not needed.
So in this "extreme" example, it saves 2 MB. I say "extreme" because a
realistic rootfs will have something that uses libudev and is going to
be bigger. util-linux-libs is used by a *lot* of system-level packages,
so it's relatively likely that it's going to be pulled in by some other
packages in most typical configurations. The size of eudev could be
reduced locally via post-build script.
I want to see if we really want to add this additional complexity of a
virtual package "just" to save 2 MB. I don't have a very strong opinion
on this so I could be convinced either way, but I find the extra
complexity quite high compared to the usefulness for most typical
use-cases.
Arnout, Peter, could you give your opinion here so that we can take a
decision, and either merge this patch series or reject it?
Thanks!
Thomas
--
Thomas Petazzoni, co-owner and CEO, Bootlin
Embedded Linux and Kernel engineering and training
https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
next prev parent reply other threads:[~2023-08-22 21:00 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-08-06 14:02 [Buildroot] [PATCH/next v9 00/12] Introduce libudev (branch yem/libudev-6) Bernd Kuhls
2023-08-06 14:02 ` [Buildroot] [PATCH/next v9 01/12] package/eudev: add option to enable the udev daemon Bernd Kuhls
2023-08-06 14:02 ` [Buildroot] [PATCH/next v9 02/12] package/eudev: allow building only the library Bernd Kuhls
2023-08-06 14:02 ` [Buildroot] [PATCH/next v9 03/12] package/libudev: new virtual package Bernd Kuhls
2023-08-06 14:02 ` [Buildroot] [PATCH/next v9 04/12] package/eudev: provides libudev Bernd Kuhls
2023-08-06 14:02 ` [Buildroot] [PATCH/next v9 05/12] package/systemd: " Bernd Kuhls
2023-08-06 14:02 ` [Buildroot] [PATCH/next v9 06/12] package/libudev: make it selectable Bernd Kuhls
2023-08-06 14:02 ` [Buildroot] [PATCH/next v9 07/12] package/qt5base: optionally use libudev Bernd Kuhls
2023-08-06 14:02 ` [Buildroot] [PATCH/next v9 08/12] package/libinput: only needs libudev, not udev daemon Bernd Kuhls
2023-08-06 14:02 ` [Buildroot] [PATCH/next v9 09/12] package/kodi: " Bernd Kuhls
2023-08-06 14:02 ` [Buildroot] [PATCH/next v9 10/12] package/libv4l: optionally use libudev Bernd Kuhls
2023-08-06 14:02 ` [Buildroot] [PATCH/next v9 11/12] package/libcec: " Bernd Kuhls
2023-08-06 14:02 ` [Buildroot] [PATCH/next v9 12/12] package/usbutils: only needs libudev, not udev daemon Bernd Kuhls
2023-08-22 20:59 ` Thomas Petazzoni via buildroot [this message]
[not found] ` <20230822225949.2b326664__48539.150941518$1692738023$gmane$org@windsurf>
2023-08-25 16:24 ` [Buildroot] [PATCH/next v9 00/12] Introduce libudev (branch yem/libudev-6) Bernd Kuhls
2023-08-25 17:05 ` Thomas Petazzoni via buildroot
2023-08-25 17:22 ` Bernd Kuhls
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20230822225949.2b326664@windsurf \
--to=buildroot@buildroot.org \
--cc=bernd@kuhls.net \
--cc=corjon.j@ecagroup.com \
--cc=eric.le.bihan.dev@free.fr \
--cc=fontaine.fabrice@gmail.com \
--cc=giulio.benetti@benettiengineering.com \
--cc=nolange79@gmail.com \
--cc=sen@phobosdpl.com \
--cc=thomas.petazzoni@bootlin.com \
--cc=yann.morin.1998@free.fr \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox