Subject: Re: just a friendly warning
To: Mike Long <>
From: Open Carefully -- Contents Under Pressure <>
List: current-users
Date: 10/14/1997 19:41:15
Mike Long sez:
 * >Date: Mon, 13 Oct 1997 02:24:30 -0400 (EDT)
 * >From: "Perry E. Metzger" <>
 * >For a long time I've been lucky and building userland before a new
 * >kernel hasn't hurt me too badly in general. Because of the new
 * >getdents() system call, I badly screwed myself tonight doing just
 * >that. In general, you MUST build a new kernel before building a new
 * >libc. "The life you save might be your own...."
 * I rebuild the kernel first whenever I see an update of
 * src/sys/sys/syscall.h.

Good advice, I'll have to remember that.

I ended up building:
	- ld
	- as
	- gcc
	- compile_et
	- make_cmds
	- libc
	- sh

and after that it died.  Everything I ran with sh would dump core
after returning from the exec (dowaitproc or something is where
it died).

Caught it before I rebooted my system, restored the old sh (always keep
a backup sh around), and built a kernel successfully and rebooted.

But then ldconfig caught the new libc which kept on dying with
"SYS_getdents() undefined in".

Got rid of and everything is fine again.  Now I need to
rebuild libc and try again.

 * I also build all my kernels with COMPAT_12, which helps ease these
 * transitions.

I think I've got compat all the way back to 1.1.  Plus 4.3.

Has the problem been fixed so that I don't need COMPAT_43 to make
ttyname(3) not return ENOTTY?

 * -- 
 * Mike Long <>      
 * "Every normal man must be tempted at times to spit on his hands,
 * hoist the black flag, and begin slitting throats." -- H.L. Mencken

When the government fails to meet the needs and wishes of its populace,
it is the right AND THE DUTY of the people to _abolish_ it, and start anew.
				-- Tom Jefferson (paraphrased)