Your message dated Mon, 29 Jun 2026 14:30:51 +0200
with message-id <[email protected]>
and subject line Re: Bug#1136497: dracut uses pidof but does not depend on 
procps
has caused the Debian Bug report #1136497,
regarding dracut uses pidof but does not depend on procps
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact [email protected]
immediately.)


-- 
1136497: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1136497
Debian Bug Tracking System
Contact [email protected] with problems
--- Begin Message ---
Source: dracut
Version: 111-2
Usertags: pidof-without-procps

Dear maintainer(s) of dracut,

it appears that dracut uses `pidof` in its testsuite, or that
at least one of its binary packages uses `pidof` at runtime.
Historically, `pidof` was provided by the Essential package
`sysvinit-tools`, making an explicit dependency unnecessary. However
`pidof` will soon be moved to `procps` and will no longer be part of
the Essential set.

Please add an explicit dependency on `procps`:

* via the `Depends:` field of all binary packages of dracut
  that use `pidof` at runtime;
* via the `Build-Depends:` field of dracut, if `pidof` is
  used in tests run at build-time;
* via the `Depends:` field of `debian/control/tests`, if `pidof` is
  used in autopkgtests.

To prevent any disruption for users of dracut, please add
this dependency now, before `pidof` is moved from `sysvinit-utils` to
`procps`. Alternatively, you could remove all uses of `pidof`.

It is believed that dracut uses `pidof` due to the following
code snippets:

```
path: dracut_110-4/test/TEST-72-NBD/server-init.sh
dnsmasq
echo "Serving NBD disks"
while pidof nbd-server && pidof dnsmasq; do
    echo > /dev/watchdog
    sleep 1


path: dracut_110-4/modules.d/74nfs/nfs-start-rpc.sh
# filesystem without talking to it. NFSv4 does locks internally,
# rpc.lockd isn't needed
command -v rpc.statd > /dev/null && [ -z "$(pidof rpc.statd)" ] && rpc.statd
command -v rpc.idmapd > /dev/null && [ -z "$(pidof rpc.idmapd)" ] && rpc.idmapd


path: dracut_110-4/modules.d/74nfs/nfs-start-rpc.sh
# Start rpcbind
# FIXME occasionally saw 'rpcbind: fork failed: No such device' -- why?
command -v portmap > /dev/null && [ -z "$(pidof portmap)" ] && portmap
if command -v rpcbind > /dev/null && [ -z "$(pidof rpcbind)" ]; then
    mkdir -p /run/rpcbind


path: dracut_110-4/test/TEST-70-ISCSI/server-init.sh
# Wait forever for the VM to die
echo "Serving iSCSI"
while pidof tgtd > /dev/null; do
    : > /dev/watchdog
    sleep 1


path: dracut_110-4/test/TEST-71-ISCSI-MULTI/test.sh
        -a "$USE_NETWORK iscsi" \
        -d "iscsi_tcp crc32c ipv6 af_packet" \
        -I "ip grep sleep setsid chmod modprobe pidof tgtd tgtadm" \
        --install-optional "/etc/netconfig dnsmasq /etc/group 
/etc/nsswitch.conf /etc/rpc /etc/protocols /etc/services /usr/etc/nsswitch.conf 
/usr/etc/rpc /usr/etc/protocols /usr/etc/services" \
        -i "./dnsmasq.conf" "/etc/dnsmasq.conf" \


path: dracut_110-4/modules.d/45net-lib/net-lib.sh
    local IFACES="" iface_id="" rv=1
    [ -e "/tmp/net.ifaces" ] && read -r IFACES < /tmp/net.ifaces
    if { pidof udevd || pidof systemd-udevd; } > /dev/null; then
        for iface_id in $IFACES; do
            printf "%s\n" "$(iface_name "$iface_id")"


path: dracut_110-4/test/TEST-70-ISCSI/test.sh
        -a "$USE_NETWORK" \
        -d "iscsi_tcp crc32c ipv6" \
        -I "modprobe chmod ip setsid pidof tgtd tgtadm /etc/passwd" \
        --install-optional "/etc/netconfig dnsmasq /etc/group 
/etc/nsswitch.conf /etc/rpc /etc/protocols /etc/services /usr/etc/nsswitch.conf 
/usr/etc/rpc /usr/etc/protocols /usr/etc/services" \
        -i "./dnsmasq.conf" "/etc/dnsmasq.conf" \


path: dracut_110-4/test/TEST-72-NBD/test.sh
        --add-confdir test-root \
        -a "$USE_NETWORK" \
        -I "ip grep sleep nbd-server chmod modprobe pidof" \
        --install-optional "/etc/netconfig dnsmasq /etc/group 
/etc/nsswitch.conf /etc/rpc /etc/protocols /etc/services /usr/etc/nsswitch.conf 
/usr/etc/rpc /usr/etc/protocols /usr/etc/services" \
        -i /tmp/config /etc/nbd-server/config \


path: dracut_110-4/modules.d/80base/dracut-lib.sh
}
# pidof version for root
if ! command -v pidof > /dev/null; then
    pidof() {


path: dracut_110-4/modules.d/80base/dracut-lib.sh
# pidof version for root
if ! command -v pidof > /dev/null; then
    pidof() {
        debug_off


path: dracut_110-4/modules.d/80base/dracut-lib.sh
# pidof version for root
if ! command -v pidof > /dev/null; then
    pidof() {
        debug_off
        local _cmd


path: dracut_110-4/test/TEST-60-NFS/server-init.sh
rpc.mountd
: > /dev/watchdog
command -v rpc.idmapd > /dev/null && [ -z "$(pidof rpc.idmapd)" ] && rpc.idmapd
: > /dev/watchdog
exportfs -r


path: dracut_110-4/modules.d/74nfs/nfsroot-cleanup.sh
[ -z "$rpcpipefspath" ] && rpcpipefspath=var/lib/nfs/rpc_pipefs
pid=$(pidof rpc.statd)
[ -n "$pid" ] && kill "$pid"


path: dracut_110-4/modules.d/74nfs/nfsroot-cleanup.sh
[ -n "$pid" ] && kill "$pid"
pid=$(pidof rpc.idmapd)
[ -n "$pid" ] && kill "$pid"


path: dracut_110-4/modules.d/74nfs/nfsroot-cleanup.sh
[ -n "$pid" ] && kill "$pid"
pid=$(pidof rpcbind)
[ -n "$pid" ] && kill "$pid"


path: dracut_110-4/test/TEST-71-ISCSI-MULTI/server-init.sh
# Wait forever for the VM to die
echo "Serving iSCSI"
while pidof tgtd > /dev/null; do
    : > /dev/watchdog
    sleep 1


path: 
dracut_110-4/debian/patches/test-switch-from-isc-dhcp-server-to-dnsmasq.patch
         --add-drivers "nfsd sunrpc lockd" \
-        -I "exportfs pidof rpc.nfsd rpc.mountd dhcpd" \
+        -I "exportfs pidof rpc.nfsd rpc.mountd dnsmasq tcpdump" \
         --install-optional "/etc/netconfig /etc/nsswitch.conf /etc/rpc 
/etc/protocols /etc/services /usr/etc/nsswitch.conf /usr/etc/rpc 
/usr/etc/protocols /usr/etc/services rpc.idmapd /etc/idmapd.conf" \
-        -i "./dhcpd.conf" "/etc/dhcpd.conf" \


path: 
dracut_110-4/debian/patches/test-switch-from-isc-dhcp-server-to-dnsmasq.patch
         --add-confdir test-root \
         -a "$USE_NETWORK" \
         -I "ip grep sleep nbd-server chmod modprobe pidof" \
-        --install-optional "/etc/netconfig dhcpd /etc/group /etc/nsswitch.conf 
/etc/rpc /etc/protocols /etc/services /usr/etc/nsswitch.conf /usr/etc/rpc 
/usr/etc/protocols /usr/etc/services" \
+        --install-optional "/etc/netconfig dnsmasq /etc/group 
/etc/nsswitch.conf /etc/rpc /etc/protocols /etc/services /usr/etc/nsswitch.conf 
/usr/etc/rpc /usr/etc/protocols /usr/etc/services" \


path: 
dracut_110-4/debian/patches/test-switch-from-isc-dhcp-server-to-dnsmasq.patch
+dnsmasq
 echo "Serving NBD disks"
-while pidof nbd-server && pidof dhcpd; do
+while pidof nbd-server && pidof dnsmasq; do
     echo > /dev/watchdog


path: 
dracut_110-4/debian/patches/test-switch-from-isc-dhcp-server-to-dnsmasq.patch
 echo "Serving NBD disks"
-while pidof nbd-server && pidof dhcpd; do
+while pidof nbd-server && pidof dnsmasq; do
     echo > /dev/watchdog
     sleep 1


path: dracut_110-4/modules.d/70multipath/multipathd-stop.sh
    fi
    if pidof multipathd > /dev/null 2>&1; then
        pkill -9 multipathd > /dev/null 2>&1
    fi


path: dracut_110-4/modules.d/70multipath/multipathd-stop.sh
    pkill multipathd > /dev/null 2>&1
    if pidof multipathd > /dev/null 2>&1; then
        sleep 0.2
    fi


path: dracut_110-4/modules.d/70multipath/multipathd-stop.sh
#!/bin/sh
command -v pidof > /dev/null || . /lib/dracut-lib.sh
if [ -e /etc/multipath.conf ]; then


path: dracut_110-4/test/TEST-60-NFS/test.sh
        -a "bash $USE_NETWORK nfs" \
        --add-drivers "nfsd sunrpc lockd" \
        -I "exportfs pidof rpc.nfsd rpc.mountd dnsmasq tcpdump" \
        --install-optional "/etc/netconfig /etc/nsswitch.conf /etc/rpc 
/etc/protocols /etc/services /usr/etc/nsswitch.conf /usr/etc/rpc 
/usr/etc/protocols /usr/etc/services rpc.idmapd /etc/idmapd.conf" \
        -f "$TESTDIR"/initramfs.root
```

Feel free to close this issue if this is a false positive (for example
if this code is in an unreachable code path).

Regards,

-- 
Gioele Barabucci

--- End Message ---
--- Begin Message ---
Version: 106-6

On Thu, 2026-05-14 at 01:27 +0200, Gioele Barabucci wrote:
> Source: dracut
> Version: 111-2
> Usertags: pidof-without-procps
> 
> Dear maintainer(s) of dracut,
> 
> it appears that dracut uses `pidof` in its testsuite, or that
> at least one of its binary packages uses `pidof` at runtime.
> Historically, `pidof` was provided by the Essential package
> `sysvinit-tools`, making an explicit dependency unnecessary. However
> `pidof` will soon be moved to `procps` and will no longer be part of
> the Essential set.

I checked the dracut source code and only the uptstream tests 60 to 72
call pidof. These autopkgtests already depend on procps for the kill
command. Therefore no changes are needed.

-- 
Benjamin Drung
Debian & Ubuntu Developer

--- End Message ---

Reply via email to