Linux PARISC architecture development
 help / color / mirror / Atom feed
* [parisc-linux] ELF32 kernel
@ 2000-03-01 23:35 Paul Bame
  2000-03-02 21:37 ` Paul Bame
  2000-03-03 22:00 ` Paul Bame
  0 siblings, 2 replies; 3+ messages in thread
From: Paul Bame @ 2000-03-01 23:35 UTC (permalink / raw)
  To: parisc-linux


It ain't perfect, but the ELF32 kernel booted with an NFS root, ran
sash and fork/exec-ed hellow.  Networking didn't work well on a busy
LAN booting on a B180, dunno why, but it worked great on a c360.  I
checked in a defconfig per willy's suggestion and all the other changes
are in CVS too on the branch ELF_BRANCH.

There's a problem when I enable CONFIG_PROC_FS where devinet_init()
calls register_sysctl_table() with a ctl_table containing a char*
pointer (for ->procname) containing the value 0x20, which eventually
dies in strlen() at a lower level.  The code in devinet_init *may*
be interacting with the __init/__setup stuff we kludged around for SOM.
Maybe a someone who knows this code can take a look at this?

	-Paul Bame

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [parisc-linux] ELF32 kernel
  2000-03-01 23:35 [parisc-linux] ELF32 kernel Paul Bame
@ 2000-03-02 21:37 ` Paul Bame
  2000-03-03 22:00 ` Paul Bame
  1 sibling, 0 replies; 3+ messages in thread
From: Paul Bame @ 2000-03-02 21:37 UTC (permalink / raw)
  Cc: parisc-linux

= There's a problem when I enable CONFIG_PROC_FS where devinet_init()
= calls register_sysctl_table() with a ctl_table containing a char*
= pointer (for ->procname) containing the value 0x20, which eventually
= dies in strlen() at a lower level.

Actually CONFIG_PROC_FS works, but CONFIG_SYSCTL doesn't, for the
reason above, so I changed defconfig to reflect this.

I tracked the problem down to what appears to be a compiler
bug, in that the devinet_sysctl_table struct in net/ipv4/devinet.c
works well until you try to generate a pointer to the last 'ctl_table'
element inside that struct.  This pointer value is bogus, leading to
the misbehavior described above.  I can make the problem move around
by inserting fields in the struct, so it appears that gcc can't generate
valid pointers to members past a certain struct size.

This could also be a difficulty for SOM folks who use the compiler
from CVS on puffin.external.hp.com and who configure kernels including
networking.

I'm out of my depth hacking gcc.

	-Paul Bame

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [parisc-linux] ELF32 kernel
  2000-03-01 23:35 [parisc-linux] ELF32 kernel Paul Bame
  2000-03-02 21:37 ` Paul Bame
@ 2000-03-03 22:00 ` Paul Bame
  1 sibling, 0 replies; 3+ messages in thread
From: Paul Bame @ 2000-03-03 22:00 UTC (permalink / raw)
  Cc: parisc-linux


The latest changes to the main line (SOM) as of this moment have
been folded into the ELF_BRANCH branch.  I had a SCSI lock-up
but otherwise things seem to be as healthy for ELF as I've heard
they are for SOM.  I won't be around until Tuesday, or possibly
Wednesday, but it seems a great time to move all of us to ELF...

	-Paul Bame

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2000-03-03 22:59 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2000-03-01 23:35 [parisc-linux] ELF32 kernel Paul Bame
2000-03-02 21:37 ` Paul Bame
2000-03-03 22:00 ` Paul Bame

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox