Package: dpkg Version: 1.20.12 Severity: wishlist Dear Maintainer,
on many of my systems using nvme drives or even sata ssds, the FS_IOC_FIEMAP scan that dpkg does is not only superfluous, but with a large number of packages installed, absolutely dominates the installation time (based on profiling) - essentially, dpkg does nothing else during the preparing/unpacxking/selecting steps. and while being a very useful optimisation for spinning rust drives, when installing many small packages, the scan is apparently done for every package unpack, when, again, on modern systems, everything is in the cache aftzer the first pass. could you consider making this scan optional (i.e. off-switchable via an option)? this way, users can disable it in dpkg.cfg on those systems where it matters, while still retaining it by default (I do not think trying to autodetect ssds is a good idea here, and a switch should be trivial to implement). thanks a lot for your consideration! PS: it might also be a good idea to reconsider the whole scan - fiemap often creates just as many seeks as a stat or an open, especially on more complicated filesystems. In fact, sorting by inode numbers (which are essentially free info) is often a good approximation for locality on many filesystems and might be a good replacement strategy. -- Package-specific info: System tainted due to merged-usr-via-aliased-dirs. -- System Information: Debian Release: 11.7 APT prefers stable-updates APT policy: (990, 'stable-updates'), (990, 'stable-security'), (990, 'stable'), (500, 'unstable-debug'), (500, 'testing-debug'), (500, 'stable-debug'), (500, 'unstable'), (500, 'testing'), (1, 'experimental-debug'), (1, 'experimental') Architecture: amd64 (x86_64) Foreign Architectures: i386, x32 Kernel: Linux 6.1.27-schmorp (SMP w/24 CPU threads; PREEMPT) Kernel taint flags: TAINT_PROPRIETARY_MODULE, TAINT_USER, TAINT_OOT_MODULE, TAINT_UNSIGNED_MODULE Locale: LANG=en_IE.UTF-8, LC_CTYPE=en_IE.UTF-8 (charmap=UTF-8), LANGUAGE not set Shell: /bin/sh linked to /usr/bin/dash Init: systemd (via /run/systemd/system) LSM: AppArmor: enabled Versions of packages dpkg depends on: ii libbz2-1.0 1.0.8-4 ii libc6 2.31-13+deb11u6 ii liblzma5 5.2.5-2.1~deb11u1 ii libselinux1 3.1-3 ii tar 1.34+dfsg-1 ii zlib1g 1:1.2.11.dfsg-2+deb11u2 dpkg recommends no packages. Versions of packages dpkg suggests: ii apt 2.2.4 pn debsig-verify <none> -- Configuration Files: /etc/dpkg/dpkg.cfg changed [not included] -- no debconf information