Subject: [netatalk-admins] netatalk-1.4b2+asun2.0a18.2 on Solaris 2.6x86 compiled! - causes panic

From: Bob Atkins <[email-masked]>
Date: Tue, 29 Sep 1998 17:07:41 -0700 (PDT)

Hello all!

I managed to compile and use netatalk on Solaris 2.5.1 SPARC with both
afpd *and* CAP aufs (compiled for kernel appletalk). The performance
results of using netatalk vs. native ethertalk in CAP were impressive.

I very much need to adapt netatalk to a Solaris 2.6x86 system to replace
the CAP/Native ethertalk solution which is not performing well.

I managed to get everything to compile on the Solaris 2.6x86 system
after making a few modifications to .h files (byte swapping for the
driver) and some duplicate declarations that overlap newly added
declarations in Solaris 2.6 header files.

The main item that I had to change for the driver compilation aside
from the byteswapping in the ddp.h file was the compilation options.
I'm using gcc v2.8.1 with the proper fix-includes, etc. I have had
no problem compiling other kernel level code such as top.

However, when compiling the netatalk driver the following error
occurs:

gcc -D_KERNEL -mno-app-regs -munaligned-doubles -fpcc-struct-return -I../../sys/solaris -D__svr4__ -DSOLARIS -O2 -I../../include -I../netatalk   -c aarp.c 
cc1: Invalid option `no-app-regs'
cc1: Invalid option `unaligned-doubles'

If I remove the offending options from the compile statement the driver
compiles successfully. Unfortuneatly the system panics as soon as I run
the atalkd deamon. I suspect that the driver is not compiled properly
for an x86 system.

Does anyone have any ideas as to what gcc compilation options should be
used to compile a driver for Solaris x86? Or does anyone know if the
driver requires modification to operate under Solaris x86?

Any help/tips would be greatly appreciated.

Thanks,
Bob

---

From: [email-masked]
Date: Tue, 29 Sep 1998 23:08:17 -0400

> From:    Bob Atkins <[email-masked]>
> To:      [email-masked]

> Or does anyone know if the

First, you shouldn't try to use 1.4b2 on any Solaris system.  The
streams module in that version (which was written by Sun) is quite
buggy.  There's a snap-shot available from terminator.rs.itd.umich.edu.
If you're using Adrian's patches, he includes instructions for using
the snap-shot.  All that said, there are no streams drivers for Solaris
which are written for x86.  We don't have one here to test on, but most
problems you'll encounter with a port are probably endian issues.  If
you succeed in a port, or need advice at some point in a port, let us
know.

:wes