Subject: Re: kern/1991: device number defined inconsistently on sparc/Ultrix/OSF1 Alpha
To: None <ivanenko@ctpa03.mit.edu>
From: Gordon W. Ross <gwr@mc.com>
List: netbsd-bugs
Date: 02/05/1996 12:05:37
> Date: Mon, 29 Jan 1996 10:36:03 -0500
> From: ivanenko@ctpa03.mit.edu

> >Number:         1991
> >Category:       kern
> >Synopsis:       device number defined inconsistently on sparc/Ultrix/OSF1 Alpha
> >Confidential:   no
> >Severity:       serious
> >Priority:       medium
> >Responsible:    kern-bug-people (Kernel Bug People)
> >State:          open
> >Class:          sw-bug
> >Submitter-Id:   net
> >Arrival-Date:   Mon Jan 29 11:05:04 1996
> >Last-Modified:
> >Originator:     Taras Ivanenko
> >Organization:
> Massachusetts Institute of Technology
> >Release:        1.1
> >Environment:
>     SUN SLC (diskless), DEC Alpha OSF/1 as a boot/file server
> System: NetBSD ctps01.mit.edu 1.1 NetBSD 1.1 (ctp-sun-slc) #1: Sun Jan 28 17:32:33 PST 1996 ivanenko@ctps01.mit.edu:/usr/src/sys/arch/sparc/compile/ctp-sun-slc sparc
> 
> 
> >Description:
> 	device number is combined 8-bit major/8-bit minor on NetBSD
> and everywhere else except DEC Alpha, where it is 12-bit major/20-bit
> minor. When I used DEC Alpha as a file server for root dir in diskless
> setup, the devices are created with Alpha numbers (12/20) but are then

Bzzzzt!  That was the mistake.  The NFS diskless arrangement requires
that you create your device nodes from the client.  The NFS server
handles the device numbers provided by the client as opaque values,
so the client will be happy.  To the server, they look like garbage.

Actually, you can create /dev/console (0,0) on either machine, and
probably need to make just that on the server so you can boot the
client in single-user mode to make the remaining device nodes.

> read with NetBSd macros (8/8). To make things worse, the devices stay
> in cache for some time with 8/8 numbers and then switch to 12/20 (as
> on the server) and make the system unusable.
> 
> >How-To-Repeat:
> 	It show up every time in my setup.
> >Fix:
> 	I put this into sys/types.h as I do not have other /dev except
> on Alpha. I guess it is possible to make the NFS code work
> consistently across platforms.

Note that NFS does deal correctly with different device node formats.

Gordon