Hurd Traffic #103 For 13 Aug 2001

By Paul Emsley

Mach 4 ( | Hurd Servers ( | Debian Hurd Home ( | Debian Hurd FAQ ( | debian-hurd List Archives ( | bug-hurd List Archives ( | help-hurd List Archive ( | Hurd Reference Manual ( | Hurd Installation Guide ( | Cross-Compiling GNUMach ( | Hurd Hardware Compatibility Guide (

Table Of Contents


1. Openssh Is Official
2 Aug 2001 - 5 Aug 2001 (11 posts) Archive Link: "patches for openssh"
Topics: Apt
People: Robert Bihlmeyer

Robert Bihlmeyer let us know that openssh is now in the official Debian source, so that it is apt-getable.


2. How Is The Debian GNU/Hurd Project Perceived?
4 Aug 2001 - 5 Aug 2001 (8 posts) Archive Link: "public opinion about Debian GNU (Hurd)"
People: Robert MillanRobert BihlmeyerPaul Emsley

Robert Millan started an amusing thread about how the outside world sees us. See, he said, "IMHO, the name "linux.debian.ports.hurd" explains that most people outside the Debian GNU(Hurd) community are missinformed about what the Hurd is. "

Robert Bihlmeyer said "I don't think it the case at all that most people outside the Debian GNU/Hurd community are misinformed about what the Hurd is. People who are aware of the difference between Linux and Redhat usually know where to place the Hurd -- if they have heard of it at all, of course. That's my experience at least. YMMV. "

(ed. [Paul Emsley]

Fair enough, Robert, but I recently saw a Hurd-related article ( at NewsForge ( and it was listed in the "GNU/Linux" section... heh, I guess they got the "GNU" bit right at least :-). [I have no axe to grind here, I just thought is was funny].


Grzegorz Hankiewicz then pointed to some text at, which adds to the confusion: "The Hurd is not the most advanced operating system known to the planet", it says, which although nit-pickingly true, may lead one to think that the Hurd is an operating system (not a kernel).


3. New Libc Coming, Vim Issues
5 Aug 2001 - 9 Aug 2001 (8 posts) Archive Link: "libc release soon"
People: Roland McGrathMarcus BrinkmannNeil Walfied

Roland McGrath announced that "if you are the type who builds glibc on the Hurd themselves, please get glibc out of CVS and try it now. We are nearing the 2.2.4 release and testing always helps. "

Neil Walfied said that he had tried the cvs version of the 7th August and had seen no noticeable differences.

In a different sub-thread (but still with the same subject, strangely) conversation focused on vim. The issue is that vim requires libgpm to compile and the Hurd does not have it. So that it can be build for now, Marcus Brinkman suggested "Build-Depends: libpgm [!hurd-i386]" .


4. Xgalaga And Sound
5 Aug 2001 - 6 Aug 2001 (6 posts) Archive Link: "Xgalaga"
People: Dios Del TiempoMarcus Brinkmann

Dios Del Tiempo said that he had ported xgalaga: "Xgalaga works fine but without sound; if somebody wants to play some time in Hurd, the package is in: "

With regard to sound from the Hurd, Marcus Brinkmann replied:

[You cannot yet have sound] natively, but nas (and esd) have sound servers, which means that -- similar to an X server -- clients, possibly from other machines, can connect and play sound on the server machine. Therefore you can for example run the nas server on a nearby linux machine, and route sound via nas's client part to that machine.

This is currently working for esd, but nas's client part shouldn't be to difficult to port, either.

If you port freeamp & libfreeamp-esound, you can listen to mp3s through this setup.


5. Boot-floppies
6 Aug 2001 - 7 Aug 2001 (8 posts) Archive Link: "Sources of dbootstrap?"
People: Michele Dalla Silvestra

Michele Dalla Silvestra wanted the source code for dbootstrap. Phil Charles replied that dbootstrap was the same as the GNU/Linux version and is part of the potato boot-floppies. Phil said that he would like people to work on the boot floppies and that they can be found at


6. 40% And (Possibly) Rising!
7 Aug 2001 - 8 Aug 2001 (11 posts) Archive Link: "40% mark crossed"
People: Marcus BrinkmannPhilip CharlesIan DugganPhil BarrittColin Watson

Marcus Brinkmann announced:

Today we crossed the 40% mark in the "up-to-date packages" statistic for the first time.

The graph is available at

The graph only takes up-to-date packages into account. The 108 out-of-date packages are not included. binary-all and other-arch packages are likewise not included.

For us it is relevant that a high number of linux specific packages are included, so the real percentage as relevant for the Hurd should be a few percents higher than indicated. Fixing this will take some time, though. No need for an excuse here, we are doing well.

  1. We may drop below the 40% in the next two or three days. This depends on how much time I can devote to building packages.
  2. It is increasingly harder to make progress. I started by compiling small source packages and going up in size. Currently, I am at the 1MB-2MB packages. The next step will be to fulfill more build dependencies and go through all attempted builds again. I expect that we will continue to progress in waves (as the graph already shows), but the waves will get smaller.
  3. As I am currently crunching through all packages (or at least attempt so), I am not uploading build logs now. I want to upload all of them in a bunch when I am through (or at least except some of the really big packages), and fulfilled more build dependencies.

50% is the next aim, of course. More stability in the Hurd itself would help (so I need to fix the proc bug, d'oh!).

This is what has to say about it: There are 4318 packages in this group. 108 packages are out of date, and need to be updated. 1582 packages are missing from the binary archive.

And 10 more packages are in incoming right now (updates and new ones). More statistics: Of the 4318 packages, 1229 are up-to-date, 1166 binary-all and 167 other-arch (the remaining 66 don't exist anymore - they have been deleted from Debian).

And there was much rejoicing.

Philip Charles said: "This inspired me to run my CD scripts again when I should be in bed. I got a total of 1827 Hurd specific binaries. Beginning of May 592, beginning of July 1068. " It's going to be hard to keep up with this pace however.

Ian Duggan looked at the graph ( and said: "Anyone know what caused the giant leap in the s390 line?"

"Three letters" said Phil Barritt, "IBM" and Colin Watson added "They've added a new member of their Debian porting team recently, and also did a fairly enormous amount of toolchain work, I believe. "


7. Nascent HOWTO
7 Aug 2001 - 8 Aug 2001 (4 posts) Archive Link: "HOWTO"
People: James MorrisonNeil Walfield

There was some discussion about a new HOWTO. However much of the ground it was intended to cover is also covered by Neil Walfield's FAQ ( .

James Morrison said that his patches can be downloaded from, which is his "Hurd box".


8. Many Jobs To Do
9 Aug 2001 (2 posts) Archive Link: "[JOB] bing"
People: Marcus Brinkmann

Marcus Brinkmann posted several jobs (relatively minor patching issues) for this week. These are: some more JOBS ( cint ( , ixbiff ( , limo ( , bing ( , debfoster ( libares ( curves ( .


9. Fixing Proc and Auth Defects
4 Aug 2001 - 5 Aug 2001 (4 posts) Archive Link: "Bug#105476: proc and auth not robust"
People: Marcus BrinkmannRoland McGrath

This thread follows up bug #105476 ( , where Marcus Brinkmann notes easily explotable defects of proc and auth: "proc_reauthenticate calls auth_server_authenticate within the global lock. This makes proc block until the caller goes ahead and calls auth_user_authenticate. But if he never does, proc will be locked up."

Roland McGrath replied "Agreed. I see no reason it needs to hold the lock before the first line that touches P->p_id. Hmm, I wonder what happens if the process dies while proc is blocked in auth_server_authenticate. process_has_exited will have come in and done ids_rele(p->p_id)."

Marcus replied with "I thought about this a few days ago and came to the same conclusion. It is safe to refer to *p as we get a reference in reqport_find (our intran), so even if the child was reaped in the meantime we are fine. "

Roland agreed.


10. proc Changes For rusage
5 Aug 2001 - 7 Aug 2001 (7 posts) Archive Link: "proc changes for rusage"
People: Roland McGrathNeil Walfield

Perhaps inspired by last weeks rusage And wait3 thread, Roland McGrath updated proc for use with wait3/wait4:

Please test the changes I've just checked into proc. (If you don't know how to test a changed proc server, then don't try.)

The main thing is to be sure I didn't break anything, which I shouldn't have. Existing code was changed very little.

The change is that proc_wait (i.e. wait3/wait4) can now return a nonzero struct rusage. The values will always be inaccurate (see comments in proc/wait.c) and can never be relied upon. But that's not as inaccurate as always reporting zero, as it did before.

Also this information is tallied in the parent's proc structure to record the aggregate usage of its dead children. There is no way to extract the tallied usage data. That requires either a new proc RPC or a change of the proc_getprocinfo data format, so it becomes possible to implement getrusage(RUSAGE_CHILDREN).

Previously all reports about dead-child usage were consistent: that is, the two places that can report about dead children are wait[34] and getrusage, and both always returned zero. Right now those two will report contradictory data. I don't know of any user for which this would be a (new) problem.

It's also the case that previously things like autoconf checks could notice that wait[34] always returned zero rusage and accordingly adapt to a system that doesn't provide that information. Now, the Hurd provides some information so such a check will decide the facility is available, but the information is still not reliable or trustable for security/accounting purposes. But I'm not aware of anything in particular that would be adversely affected by this.

As I noted, the results here are always inaccurate. For correct results, we need to add a feature in the microkernel (this has already been discussed on this list). I've done these changes now with half-assed data collection because these changes (plus adding the new RPC and finishing the getrusage implementation) fill in all other the missing pieces for this functionality to work. That is, when the microkernel feature gets added, we will only have to change proc to use it internally, and then everything else falls into place without needing any recompilations or anything.

There was a round of bug fixing, after which, Neil Walfield said: "I have tested all the [new] code. I am pleased to report that it works quite well. "


11. Shadowfs
6 Aug 2001 (1 post) Archive Link: "shadowfs-0.1"
People: Moritz Schulte

Moritz Schulte announced a new version of shadowfs:

shadowfs-0.1 is available at:

It differs a lot from version 0.0 and is hopefully a step into the right direction. Now, it uses ports rather than pathnames. Furthermore only the nodes for the virtual directories are managed by shadowfs - file accesses get forwarded to the real filesystem servers.

It's not perfect, there are some known bugs, which i'll try to fix in the next days. Also, there are some parts which need a cleanup.

There was no reply.







We Hope You Enjoy Hurd Traffic

Kernel Traffic is grateful to be developed on a computer donated by Professor Greg Benson and Professor Allan Cruse in the Department of Computer Science at the University of San Francisco. This is the same department that invented FlashMob Computing. Kernel Traffic is hosted by the generous folks at All pages on this site are copyright their original authors, and distributed under the terms of the GNU General Public License, version 2.0.