Subject: Re: inetd / tftpd regression
To: None <>
From: Jukka Salmi <>
List: current-users
Date: 04/09/2005 17:35:15
Jukka Salmi --> current-users (2005-04-06 23:31:00 +0200):
> Hmm, I just noticed this problem only exists whith a 3.99.3 kernel. When
> using a 3.99.2 kernel (2005-03-29), everything works as expected...
> What could be the culprit? Would it make sense to try sources just before
> the yamt-km merge?

That was not the problem.

The following commit caused the described regression:

Module Name:	src
Committed By:	christos
Date:		Wed Mar 30 17:07:51 UTC 2005

Modified Files:
	src/sys/kern: kern_exit.c kern_sig.c
	src/sys/sys: proc.h

Log Message:
PR/19837: Stephen Ma: signal(SIGCHLD, SIG_IGN) should not create zombies.

To generate a diff of this commit:
cvs rdiff -r1.145 -r1.146 src/sys/kern/kern_exit.c
cvs rdiff -r1.202 -r1.203 src/sys/kern/kern_sig.c
cvs rdiff -r1.198 -r1.199 src/sys/sys/proc.h

After reverting these changes, tftp (and netbooting the net45xx) works fine

To reproduce the problem, enable tftp on a current i386 system using the
following files:

$ ident  /netbsd | egrep -e 'kern_(exit|sig)\.c'
     $NetBSD: kern_exit.c,v 1.146 2005/03/30 17:07:50 christos Exp $
     $NetBSD: kern_sig.c,v 1.204 2005/04/01 11:59:37 yamt Exp $

copy a file to /tftpboot and try to fetch it twice. The first time it will
succeed, but then time out:

$ tftp moray                 
tftp> verbose
Verbose mode on.
tftp> get test
getting from to test [netascii]
Received 24773 bytes in 0.0 seconds [inf bits/sec]
tftp> get test
getting from to test [netascii]
Transfer timed out.

tftp> quit

Regards, Jukka

bashian roulette:
$ ((RANDOM%6)) || rm -rf ~