Debian Patches

Status for hurd/1:0.9.git20251029-7

Patch Description Author Forwarded Bugs Origin Last update
diskfs_no_inherit_dir_group.patch Follow POSIX rules for gid of new nodes. no
init_try_runsystem.gnu.patch Also try runsystem.sysv, in case /etc/alternatives/runsystem is hosed. no
rc.patch More debianish rc scripts no
startup-usr-support.patch Debian GNU/Hurd has a real /usr no
uptime_w_path_fix.patch Debian has a real /usr and uses w-hurd file name no
stat_round.patch This is not a proper fix, discussed on
http://lists.gnu.org/archive/html/bug-hurd/2009-02/msg00002.html
but not finished, last mail on
http://lists.gnu.org/archive/html/bug-hurd/2009-04/msg00006.html

We should support i_ctime_extra/i_mtime_extra/i_atime_extra anyway.
no
external.patch Include DDE in the build

===================================================================
no
console_ignore_bdf_err.patch reduce-font overestimates the number of characters in the font. This should be
fixed there, not here.


diff --git a/console-client/bdf.c b/console-client/bdf.c
index 30501f4..ee8aa30 100644
no
libexec.patch =================================================================== no
mount.patch * utils/mount.c (do_mount): Ignore `loop' and `exec' options. no
MAKEDEV-apm.patch Workaround invocations from installation of power-management packages.

===================================================================
no
term-for-tcl.patch See discussion in http://bugs.debian.org/755295
and bug report on comp.lang.tcl on July 1st 2015
(“'expect' losing data due to tcl buffering”)
no
crash-logging.patch xxx crash logging works no
libports-iterate-refcount.patch http://lists.gnu.org/archive/html/bug-hurd/2016-03/msg00034.html

diff --git a/libports/bucket-iterate.c b/libports/bucket-iterate.c
index b021b99..76dc3f7 100644
no
io-write-crash.patch Yes, the pointer provided by the caller, coming from the RPC buffer, may not
actually be safe to dereference. Try this with /run/shm as tmpfs with the crash
server configured to dump cores:

#include <fcntl.h>
#include <sys/mman.h>
#include <unistd.h>
#include <stdio.h>
#include <string.h>

#define name "/run/shm/test.txt"
int main(void) {
int fd = open(name, O_RDWR|O_CREAT, 0777);
if (ftruncate(fd, 4096))
perror("fruncate");
char *c = mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_SHARED, fd, 0);
if (c == MAP_FAILED)
perror("mmap");
if (close(fd))
perror("close");
if (unlink(name))
perror("unlink");
memset(c, 0, 4096);
if (munmap(c, 4096))
perror("munmap");

return 0;
}

It will make *ext2fs* crash, because

- removing a file from tmpfs make its memory object go away, thus making *c
unwritable (it's not the bug at stake, the program here is meant to crash)
- the crash server uses vm_read to read the process memory to write the
core. GNU Mach achieves it by playing with virtual memory.
- the crash server uses vm_write to write this to the FS. GNU Mach passes the
RPC data out of line by playing with virtual memory.
- ext2fs eventually tries to copy from the RPC data, assumed to be safe, to the
memory object, here backed by the pager. But the data is actually not safe.


That probably needs to be fixed at the mig layer, to make sure incoming
out-of-line data is accessible before handing it to the routine?

===================================================================
no
getty-noclear Ignore --noclear passed by sysvinit since version 2.95-5

diff --git a/daemons/getty.c b/daemons/getty.c
index 40ad4d73..cfa5b71d 100644
no
fix-rootless-build.patch fix rootless buildInstead of setting the owner and setuid bit during `make install` which
requires (fake) root, only set it in debian/rules via chown u+s
Fabian Grünbichler <debian@fabian.gruenbichler.email> no
rumpdisk-no-hd =================================================================== no
machdev_trivfs_server For the existing netdde translator...

===================================================================
no
runsystem-race no
ext2fs-crash no
devdir =================================================================== no
hurddir =================================================================== no
local-64b-align Avoid 64b typing error on RPC with 64b members in structures, while we migrate
to the fixed 64b structure alignment.

To be removed after people have migrated both gnumach libc+hurd rebuilt against
fixed mig.

===================================================================
no
git-ucd0 commit 6d172c6b070a5f4958bddf32dfc97b86cbbee656

MAKEDEV: Fix supporting ucd0

diff --git a/sutils/MAKEDEV.sh b/sutils/MAKEDEV.sh
index c0ec3bf3..8ec524d0 100644
Samuel Thibault <samuel.thibault@ens-lyon.org> no 2025-11-01
rpctrace-time commit 567045a70196fba7b88fb924ab79d4d323282668

rpctrace: add -t option for timestamps

diff --git a/utils/rpctrace.c b/utils/rpctrace.c
index 7fc685cc..d9f4f07d 100644
Samuel Thibault <samuel.thibault@ens-lyon.org> no 2025-11-08
exists =================================================================== no
git-in_pktinfo commit b36f4ea2d7b52594b4a5a19439f45de8f213539d

Fix build against glibc 2.43

diff --git a/pfinet/glue-include/linux/in.h b/pfinet/glue-include/linux/in.h
index cb1804c60..594304ee2 100644
Samuel Thibault <samuel.thibault@ens-lyon.org> no 2026-02-15
git-in_pktinfo2 commit d3daa6faf08ab4141e5562cd6a69f636b869a67b

Fix build against glibc 2.42

diff --git a/pfinet/glue-include/linux/in.h b/pfinet/glue-include/linux/in.h
index 594304ee2..43ae630f2 100644
Samuel Thibault <samuel.thibault@ens-lyon.org> no 2026-02-15
git-linux-glibc-2.43 commit c91f65274dd81512b9cfc21fe7424ecb4bc19ffd

Fix build against glibc 2.43

diff --git a/libdde-linux26/contrib/include/linux/string.h b/libdde-linux26/contrib/include/linux/string.h
index d18fc198a..e5c4682a7 100644
Samuel Thibault <samuel.thibault@ens-lyon.org> no 2026-02-15
git-crash-hang commit c809367cb503830346bfb1d1fd927c09d3f3cb16

crash: Fix hang on x86_64 core generation

The produced core file still make gdb crash, but at least crash doen't
hang.

diff --git a/exec/elfcore.c b/exec/elfcore.c
index 8c85b13b4..a2360965a 100644
Samuel Thibault <samuel.thibault@ens-lyon.org> no 2026-02-16
git-rump-nostart commit 8879adc24751ad2caf596c2845af872a38b011d9

MAKEDEV: avoid triggering start of rumpdisk/rumpusbdisk

We can set up the symlink with st, which will respect the translator
keep behavior.

This is particularly important when constructing a chroot, for which we
really don't want to start another rumpdisk/rumpusbdisk.

diff --git a/sutils/MAKEDEV.sh b/sutils/MAKEDEV.sh
index 75ba1546a..b9514f8ae 100644
Samuel Thibault <samuel.thibault@ens-lyon.org> no 2026-02-16
git-sync commit 1fc695f490f4f5a174610a42b0ab299eb9bd58e7

ext2fs: Fix syncing disk node

The disk_cache_block_deref macro clears its parameter, and thus
sync_global_ptr was passing a negative offset to pager_sync_some.

diff --git a/ext2fs/ext2fs.h b/ext2fs/ext2fs.h
index 46d41e08e..8054f16f2 100644
Samuel Thibault <samuel.thibault@ens-lyon.org> no 2026-03-07
git-sync-translator commit 87a4ec3db6097bb3c28e252c24922e38d907fd09

ext2fs: Make sure to flush translator entry before releasing it

If the entry was still pending a write, we want to drop that before
releasing the block and possibly re-using it for a file pager.

diff --git a/ext2fs/ext2fs.h b/ext2fs/ext2fs.h
index 8054f16f2..350cb14a6 100644
Samuel Thibault <samuel.thibault@ens-lyon.org> no 2026-03-07

All known versions for source package 'hurd'

Links