Subject: sparc snapshot failure :(
To: None <current-users@netbsd.org>
From: Andrew Brown <atatat@atatdot.net>
List: current-users
Date: 07/19/2001 18:19:32
my sys/mbuf.h (1.58) declares mh_data as a caddr_t, which my sparc
(when compiling a kernel) sees as a char *.  this is a problem when
line 741 of tulip.c (1.194) gets expanded from

	if ((sc->sc_ntxsegs == 1 && (mtod(m0, bus_addr_t) & 3) != 0) ||

to

	if ((sc->sc_ntxsegs == 1 &&
		(((  bus_addr_t )(( m0 )-> m_hdr.mh_data ))  & 3) != 0) ||

which i've wrapped so that it's easier to read.  the other type there
is the bus_addr_t, which is typedef'ed as a u_int64_t on line 113 of
arch/sparc64/include/bus.h (1.27) which i guess i'm using because the
GENERIC_SUN4U config file reaches over into the sparc64 conf
directory.

anyway!  the compiler says "warning: cast from pointer to integer of
different size" and i think i agree with it.  not that there would be
any data loss here, but it makes my "make snapshot" die when it gets
to trying to compile the GENERIC_SUN4U kernel.

hints?  suggestions?

-- 
|-----< "CODE WARRIOR" >-----|
codewarrior@daemon.org             * "ah!  i see you have the internet
twofsonet@graffiti.com (Andrew Brown)                that goes *ping*!"
andrew@crossbar.com       * "information is power -- share the wealth."