Ah, to be clear, I think that providing a means to convert something mach into 
something selectable as a fd would be of great use as I'm using the same pipe 
trick you used in libpcap as I can't think of any other way of doing this with 
the tools we currently have.



I really dislike the small timeout just to add a cancellation point as it means 
there is a lot of context switching going on just because of this.


Roy








From: Roy Marples <[email protected]>
To: ""Joan Lledó""<[email protected]>
Cc: "bug-hurd"<[email protected]>, "martin-ericracine"<[email protected]>
Date: Sun, 07 Jun 2026 18:55:40 +0100
Subject: Re:Guidance to implement io_select on network devices



Hi Joan



It's fine, I have ported what I need into bpf-hurd.c for dhcpcd.



As I can't get lwip working yet I have concentrated on getting it to work with 
pfinet.

This has been achieved with starting pfinet with the 0.0.0.0 address so dhcpcd 
has something to work with.

I have created a 10-pfinet hook script to configure pfinet using fsysopts.



My Gentoo hurd VM now starts and gets a working ssh connection automatically.

Happy days.



So where are we now?

I'm waiting for a Gentoo bug to be solved in glibc to remove the AF_LINK and 
SIOCAIFADDR defines to reduce the changes I need to make in dhcpcd.

I need to work out why IN_PKTINFO is not present in the CMSG for DHCP messages 
(unsure if pfinet bug or something I've done wrong, pfinet does have code for 
it).

I need to add a mechanism for handling gethostname(2) in dhcpcd's privilege 
separation code.

I need to work out why BPF for handling ARP is failing.

I would like not to have to do a header dance to get ethernet defines as glibc 
is just different on Hurd, but I can live with that.



I'm hopeful I can wrap this up next week so others can look at it.

Then we can look at working with lwip as well.



Roy








From: Joan Lledó < mailto:[email protected] >
To: "bug-hurd"< mailto:[email protected] >
Cc: "Roy Marples"< mailto:[email protected] >, "martin-ericracine"< 
mailto:[email protected] >
Date: Sun, 07 Jun 2026 17:51:21 +0100
Subject: Guidance to implement io_select on network devices



Hi, 
 
The dhcpcd port is stuck waiting for the libpcap patch to be accepted 
 
https://github.com/the-tcpdump-group/libpcap/pull/1565  
 
It's been a month since I sent my last changes to the PR and there's no 
answer so far. I wonder how should we proceed, should we wait more time? 
 
The alternative that should be accepted upstream implies implementing 
`io_select` on network devices in gnumach. I'm not working on anything 
else right now, so I might try, but, how difficult would be?, is it 
doable? If so, I'd need some basic guidance on how to start doing this.

Reply via email to