Linux PARISC architecture development
 help / color / mirror / Atom feed
* [parisc-linux] 32-bit xc-20001206.tar.gz is foobar
@ 2000-12-10  5:23 Grant Grundler
  2000-12-10 13:02 ` Alan Modra
  0 siblings, 1 reply; 10+ messages in thread
From: Grant Grundler @ 2000-12-10  5:23 UTC (permalink / raw)
  To: parisc-linux

Matt,
xc-latest.tar.gz points to xc-20001206.tar.gz.
Could latest be pointed to the previous version?

32-bit 1206 build dies in the link phase with:
...
hppa-linux-ld: fs/fs.o(.text.load_elf_interp+0x2b8): cannot handle R_PARISC_PCREL17F for __up
hppa-linux-ld: fs/fs.o(.text.load_elf_interp+0x2dc): cannot reach 00000010___down+0, recompile with -ffunction-sections
hppa-linux-ld: fs/fs.o(.text.load_elf_interp+0x2dc): cannot handle R_PARISC_PCREL17F for __down
hppa-linux-ld: fs/fs.o(.text.load_aout_interp+0x11c): cannot reach 00000010_flush_instruction_cache+0, recompile with -ffunction-sections
hppa-linux-ld: fs/fs.o(.text.load_aout_interp+0x11c): cannot handle R_PARISC_PCREL17F for flush_instruction_cache
...

later,
grant

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

* Re: [parisc-linux] 32-bit xc-20001206.tar.gz is foobar
  2000-12-10  5:23 [parisc-linux] 32-bit xc-20001206.tar.gz is foobar Grant Grundler
@ 2000-12-10 13:02 ` Alan Modra
  2000-12-10 15:38   ` Roel Teuwen
                     ` (2 more replies)
  0 siblings, 3 replies; 10+ messages in thread
From: Alan Modra @ 2000-12-10 13:02 UTC (permalink / raw)
  To: Grant Grundler; +Cc: parisc-linux

On Sat, 9 Dec 2000, Grant Grundler wrote:

> Matt,
> xc-latest.tar.gz points to xc-20001206.tar.gz.
> Could latest be pointed to the previous version?
> 
> 32-bit 1206 build dies in the link phase with:
> ...
> hppa-linux-ld: fs/fs.o(.text.load_elf_interp+0x2b8): cannot handle R_PARISC_PCREL17F for __up
> hppa-linux-ld: fs/fs.o(.text.load_elf_interp+0x2dc): cannot reach 00000010___down+0, recompile with -ffunction-sections
> hppa-linux-ld: fs/fs.o(.text.load_elf_interp+0x2dc): cannot handle R_PARISC_PCREL17F for __down
> hppa-linux-ld: fs/fs.o(.text.load_aout_interp+0x11c): cannot reach 00000010_flush_instruction_cache+0, recompile with -ffunction-sections
> hppa-linux-ld: fs/fs.o(.text.load_aout_interp+0x11c): cannot handle R_PARISC_PCREL17F for flush_instruction_cache
> ...

This isn't necessarily a problem with Matt's latest compiler binary.  fs.o
is produced with a "ld -r" link stage, and it's text size is larger than
256k, so there is potential for branches to not be able to reach stubs.

ie. You may get these problems if
 a) You are using an older binutils (ie. not the latest pehc CVS version),
    and aren't using -ffunction-sections to compile the kernel
 b) You are using the very latest binutils, and aren't using
    -ffunction-sections, and I've goofed in my "ld -r" magic.

On a good fs.o, "hppa-linux-readelf -h fs.o" ought to show lots of .text.*
sections.

Alan
-- 
Linuxcare.  Support for the Revolution.

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

* Re: [parisc-linux] 32-bit xc-20001206.tar.gz is foobar
  2000-12-10 13:02 ` Alan Modra
@ 2000-12-10 15:38   ` Roel Teuwen
  2000-12-12  0:06   ` [parisc-linux] gcc wchar patch for hppa64 John David Anglin
  2000-12-12  8:28   ` [parisc-linux] 32-bit xc-20001206.tar.gz is foobar Matt Taggart
  2 siblings, 0 replies; 10+ messages in thread
From: Roel Teuwen @ 2000-12-10 15:38 UTC (permalink / raw)
  To: parisc-linux

[-- Attachment #1: Type: text/plain, Size: 225 bytes --]

Hello,

I am seeing the same error messages with the version fresh form CVS, the
build completes. The problem appeared a week or 2 ago.
The kernel is unable to boot, though, it dies with BUG() at bootmem.c:219

Regards,
Roel

[-- Attachment #2: log.gz --]
[-- Type: application/x-gzip, Size: 53033 bytes --]

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

* [parisc-linux] gcc wchar patch for hppa64
  2000-12-10 13:02 ` Alan Modra
  2000-12-10 15:38   ` Roel Teuwen
@ 2000-12-12  0:06   ` John David Anglin
  2000-12-12  1:43     ` Alan Modra
  2000-12-12  8:28   ` [parisc-linux] 32-bit xc-20001206.tar.gz is foobar Matt Taggart
  2 siblings, 1 reply; 10+ messages in thread
From: John David Anglin @ 2000-12-12  0:06 UTC (permalink / raw)
  To: Alan Modra; +Cc: grundler, parisc-linux

Alan,

This patch fixes a problem with wide characters.  We need to override the
defines in svr4.h.  With this, I get much further building a 64 bit glibc.
Please review and install if ok.

Dave
-- 
J. David Anglin                                  dave.anglin@nrc.ca
National Research Council of Canada              (613) 990-0752 (FAX: 952-6605)

2000-12-11  John David Anglin  <dave@hiauly1.hia.nrc.ca>

	* pa-linux64.h: Define WCHAR_TYPE and WCHAR_TYPE_SIZE per ABI.

--- pa-linux64.h.orig	Mon Oct 30 02:58:24 2000
+++ pa-linux64.h	Mon Dec 11 18:15:14 2000
@@ -158,9 +158,13 @@
   Make GCC agree with types.h.  */
 #undef SIZE_TYPE
 #undef PTRDIFF_TYPE
+#undef WCHAR_TYPE
+#undef WCHAR_TYPE_SIZE
 
 #define SIZE_TYPE "long unsigned int"
 #define PTRDIFF_TYPE "long int"
+#define WCHAR_TYPE "unsigned int"
+#define WCHAR_TYPE_SIZE 32
 
 /* If it is not listed here, then the default selected by GCC is OK.  */
 #define SHORT_TYPE_SIZE 16

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

* Re: gcc wchar patch for hppa64
  2000-12-12  0:06   ` [parisc-linux] gcc wchar patch for hppa64 John David Anglin
@ 2000-12-12  1:43     ` Alan Modra
  0 siblings, 0 replies; 10+ messages in thread
From: Alan Modra @ 2000-12-12  1:43 UTC (permalink / raw)
  To: John David Anglin; +Cc: grundler, parisc-linux

On Mon, 11 Dec 2000, John David Anglin wrote:

> This patch fixes a problem with wide characters.  We need to override the
> defines in svr4.h.  With this, I get much further building a 64 bit glibc.
> Please review and install if ok.

Thanks!  Installed.

-- 
Linuxcare.  Support for the Revolution.

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

* Re: [parisc-linux] 32-bit xc-20001206.tar.gz is foobar
  2000-12-10 13:02 ` Alan Modra
  2000-12-10 15:38   ` Roel Teuwen
  2000-12-12  0:06   ` [parisc-linux] gcc wchar patch for hppa64 John David Anglin
@ 2000-12-12  8:28   ` Matt Taggart
  2000-12-12  8:37     ` Alan Modra
  2 siblings, 1 reply; 10+ messages in thread
From: Matt Taggart @ 2000-12-12  8:28 UTC (permalink / raw)
  To: Alan Modra; +Cc: Grant Grundler, parisc-linux


Alan Modra writes...

> > hppa-linux-ld: fs/fs.o(.text.load_aout_interp+0x11c): cannot reach 00000010
> _flush_instruction_cache+0, recompile with -ffunction-sections
> > hppa-linux-ld: fs/fs.o(.text.load_aout_interp+0x11c): cannot handle R_PARIS
> C_PCREL17F for flush_instruction_cache
> > ...
> 
> This isn't necessarily a problem with Matt's latest compiler binary.  fs.o
> is produced with a "ld -r" link stage, and it's text size is larger than
> 256k, so there is potential for branches to not be able to reach stubs.
> 
> ie. You may get these problems if
>  a) You are using an older binutils (ie. not the latest pehc CVS version),
>     and aren't using -ffunction-sections to compile the kernel
>  b) You are using the very latest binutils, and aren't using
>     -ffunction-sections, and I've goofed in my "ld -r" magic.

I just built a new cross-compiler (xc-20001211.tar.gz) and am still getting 
similar errors when building the kernel. It doesn't seem to matter if I have 
-ffunction-sections in the kernel Makefile or not.

> On a good fs.o, "hppa-linux-readelf -h fs.o" ought to show lots of .text.*
> sections.

$ hppa-linux-readelf -h fs.o
ELF Header:
  Magic:   7f 45 4c 46 01 02 01 03 00 00 00 00 00 00 00 00 
  Class:                             ELF32
  Data:                              2's complement, big endian
  Version:                           1 (current)
  OS/ABI:                            UNIX - Linux
  ABI Version:                       0
  Type:                              REL (Relocatable file)
  Machine:                           HPPA
  Version:                           0x1
  Entry point address:               0x0
  Start of program headers:          0 (bytes into file)
  Start of section headers:          360836 (bytes into file)
  Flags:                             0x210, PA-RISC 1.1
  Size of this header:               52 (bytes)
  Size of program headers:           0 (bytes)
  Number of program headers:         0
  Size of section headers:           40 (bytes)
  Number of section headers:         92
  Section header string table index: 89

HTH,

-- 
Matt Taggart
taggart@fc.hp.com

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

* Re: [parisc-linux] 32-bit xc-20001206.tar.gz is foobar
  2000-12-12  8:28   ` [parisc-linux] 32-bit xc-20001206.tar.gz is foobar Matt Taggart
@ 2000-12-12  8:37     ` Alan Modra
  2000-12-12  8:44       ` Matt Taggart
  0 siblings, 1 reply; 10+ messages in thread
From: Alan Modra @ 2000-12-12  8:37 UTC (permalink / raw)
  To: Matt Taggart; +Cc: Grant Grundler, parisc-linux

On Tue, 12 Dec 2000, Matt Taggart wrote:

> Alan Modra writes...
> 
> 
> I just built a new cross-compiler (xc-20001211.tar.gz) and am still getting 
> similar errors when building the kernel. It doesn't seem to matter if I have 
> -ffunction-sections in the kernel Makefile or not.
> 
> > On a good fs.o, "hppa-linux-readelf -h fs.o" ought to show lots of .text.*
> > sections.

Oops, sorry.  "hppa-linux-objdump -h" or "hppa-linux-readelf -S"

> $ hppa-linux-readelf -h fs.o
> ELF Header:

-- 
Linuxcare.  Support for the Revolution.

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

* Re: [parisc-linux] 32-bit xc-20001206.tar.gz is foobar
  2000-12-12  8:37     ` Alan Modra
@ 2000-12-12  8:44       ` Matt Taggart
  2000-12-12  9:01         ` Alan Modra
  0 siblings, 1 reply; 10+ messages in thread
From: Matt Taggart @ 2000-12-12  8:44 UTC (permalink / raw)
  To: Alan Modra; +Cc: Grant Grundler, parisc-linux


Alan Modra writes...

> On Tue, 12 Dec 2000, Matt Taggart wrote:
> 
> > Alan Modra writes...
> > 
> > 
> > I just built a new cross-compiler (xc-20001211.tar.gz) and am still getting
>  
> > similar errors when building the kernel. It doesn't seem to matter if I hav
> e 
> > -ffunction-sections in the kernel Makefile or not.
> > 
> > > On a good fs.o, "hppa-linux-readelf -h fs.o" ought to show lots of .text.
> *
> > > sections.
> 
> Oops, sorry.  "hppa-linux-objdump -h" or "hppa-linux-readelf -S"

$ hppa-linux-objdump -h fs.o

fs.o:     file format elf32-hppa-linux

Sections:
Idx Name          Size      VMA       LMA       File off  Algn
  0 .rodata       0000c06c  00000000  00000000  00000034  2**2
                  CONTENTS, ALLOC, LOAD, RELOC, READONLY, DATA
  1 .PARISC.unwind 00003b90  00000000  00000000  0000c0a0  2**2
                  CONTENTS, ALLOC, LOAD, RELOC, READONLY, DATA
  2 __ex_table    00000530  00000000  00000000  0000fc30  2**0
                  CONTENTS, ALLOC, LOAD, RELOC, READONLY, DATA
  3 .data         00001da0  00000000  00000000  00010160  2**3
                  CONTENTS, ALLOC, LOAD, RELOC, DATA
  4 .initcall.init 00000030  00000000  00000000  00011f00  2**2
                  CONTENTS, ALLOC, LOAD, RELOC, DATA
  5 .exitcall.exit 0000001c  00000000  00000000  00011f30  2**2
                  CONTENTS, ALLOC, LOAD, RELOC, DATA
  6 .init.data    000007d0  00000000  00000000  00011f4c  2**2
                  CONTENTS, ALLOC, LOAD, RELOC, DATA
  7 .setup.init   00000008  00000000  00000000  0001271c  2**2
                  CONTENTS, ALLOC, LOAD, RELOC, DATA
  8 .bss          00001ec8  00000000  00000000  00012724  2**2
                  ALLOC
  9 .comment      00000cf9  00000000  00000000  00012724  2**0
                  CONTENTS, READONLY
 10 .text         00000008  00000000  00000000  00013420  2**2
                  CONTENTS, ALLOC, LOAD, READONLY, CODE
 11 .init.text    00001b3c  00000000  00000000  00013428  2**2
                  CONTENTS, ALLOC, LOAD, RELOC, READONLY, CODE
 12 .text.1       00005f48  00000000  00000000  00014f64  2**2
                  CONTENTS, ALLOC, LOAD, RELOC, READONLY, CODE
 13 .text.2       00003078  00000000  00000000  0001aeac  2**2
                  CONTENTS, ALLOC, LOAD, RELOC, READONLY, CODE
 14 .text.3       000053f0  00000000  00000000  0001df24  2**2
                  CONTENTS, ALLOC, LOAD, RELOC, READONLY, CODE
 15 .text.4       000044c8  00000000  00000000  00023314  2**2
                  CONTENTS, ALLOC, LOAD, RELOC, READONLY, CODE
 16 .text.5       000070b8  00000000  00000000  000277dc  2**2
                  CONTENTS, ALLOC, LOAD, RELOC, READONLY, CODE
 17 .text.6       000050cc  00000000  00000000  0002e894  2**2
                  CONTENTS, ALLOC, LOAD, RELOC, READONLY, CODE
 18 .text.7       00005ce0  00000000  00000000  00033960  2**2
                  CONTENTS, ALLOC, LOAD, RELOC, READONLY, CODE
 19 .text.8       0000265c  00000000  00000000  00039640  2**2
                  CONTENTS, ALLOC, LOAD, RELOC, READONLY, CODE
 20 .text.9       00003eec  00000000  00000000  0003bc9c  2**2
                  CONTENTS, ALLOC, LOAD, RELOC, READONLY, CODE
 21 .text.10      00003e04  00000000  00000000  0003fb88  2**2
                  CONTENTS, ALLOC, LOAD, RELOC, READONLY, CODE
 22 .exit.text    000000f8  00000000  00000000  0004398c  2**2
                  CONTENTS, ALLOC, LOAD, RELOC, READONLY, CODE
 23 .text.11      000047f0  00000000  00000000  00043a84  2**2
                  CONTENTS, ALLOC, LOAD, RELOC, READONLY, CODE
 24 .text.12      00000be4  00000000  00000000  00048274  2**2
                  CONTENTS, ALLOC, LOAD, RELOC, READONLY, CODE
 25 .text.13      00000408  00000000  00000000  00048e58  2**2
                  CONTENTS, ALLOC, LOAD, RELOC, READONLY, CODE
 26 .text.14      000008b0  00000000  00000000  00049260  2**2
                  CONTENTS, ALLOC, LOAD, RELOC, READONLY, CODE
 27 .text.15      00000da8  00000000  00000000  00049b10  2**2
                  CONTENTS, ALLOC, LOAD, RELOC, READONLY, CODE
 28 .text.16      00000390  00000000  00000000  0004a8b8  2**2
                  CONTENTS, ALLOC, LOAD, RELOC, READONLY, CODE
 29 .text.17      00003280  00000000  00000000  0004ac48  2**2
                  CONTENTS, ALLOC, LOAD, RELOC, READONLY, CODE
 30 .text.18      00001584  00000000  00000000  0004dec8  2**2
                  CONTENTS, ALLOC, LOAD, RELOC, READONLY, CODE
 31 .text.19      000015fc  00000000  00000000  0004f44c  2**2
                  CONTENTS, ALLOC, LOAD, RELOC, READONLY, CODE
 32 .text.20      0000048c  00000000  00000000  00050a48  2**2
                  CONTENTS, ALLOC, LOAD, RELOC, READONLY, CODE
 33 .text.21      000000d8  00000000  00000000  00050ed4  2**2
                  CONTENTS, ALLOC, LOAD, RELOC, READONLY, CODE
 34 .text.22      00000400  00000000  00000000  00050fac  2**2
                  CONTENTS, ALLOC, LOAD, RELOC, READONLY, CODE
 35 .text.23      00000394  00000000  00000000  000513ac  2**2
                  CONTENTS, ALLOC, LOAD, RELOC, READONLY, CODE
 36 .text.24      000002a4  00000000  00000000  00051740  2**2
                  CONTENTS, ALLOC, LOAD, RELOC, READONLY, CODE
 37 .text.25      00000008  00000000  00000000  000519e4  2**2
                  CONTENTS, ALLOC, LOAD, READONLY, CODE
 38 .text.26      00000880  00000000  00000000  000519ec  2**2
                  CONTENTS, ALLOC, LOAD, RELOC, READONLY, CODE
 39 .text.27      0000025c  00000000  00000000  0005226c  2**2
                  CONTENTS, ALLOC, LOAD, RELOC, READONLY, CODE
 40 .text.28      00002370  00000000  00000000  000524c8  2**2
                  CONTENTS, ALLOC, LOAD, RELOC, READONLY, CODE
 41 .text.29      00000000  00000000  00000000  00054838  2**0
                  CONTENTS, ALLOC, LOAD, READONLY, CODE
 42 .text.30      000009c4  00000000  00000000  00054838  2**2
                  CONTENTS, ALLOC, LOAD, RELOC, READONLY, CODE
 43 .text.31      00000000  00000000  00000000  000551fc  2**0
                  CONTENTS, ALLOC, LOAD, READONLY, CODE
 44 .text.32      0000056c  00000000  00000000  000551fc  2**2
                  CONTENTS, ALLOC, LOAD, RELOC, READONLY, CODE
 45 .text.33      00001fb4  00000000  00000000  00055768  2**2
                  CONTENTS, ALLOC, LOAD, RELOC, READONLY, CODE
 46 .text.34      00000000  00000000  00000000  0005771c  2**0
                  CONTENTS, ALLOC, LOAD, READONLY, CODE
 47 .note         00000654  00000000  00000000  0005771c  2**0
                  CONTENTS, READONLY

-- 
Matt Taggart
taggart@fc.hp.com

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

* Re: [parisc-linux] 32-bit xc-20001206.tar.gz is foobar
  2000-12-12  8:44       ` Matt Taggart
@ 2000-12-12  9:01         ` Alan Modra
  2000-12-12 10:53           ` Alan Modra
  0 siblings, 1 reply; 10+ messages in thread
From: Alan Modra @ 2000-12-12  9:01 UTC (permalink / raw)
  To: Matt Taggart; +Cc: Grant Grundler, parisc-linux

On Tue, 12 Dec 2000, Matt Taggart wrote:

> $ hppa-linux-objdump -h fs.o
>[snip]
>  10 .text         00000008  00000000  00000000  00013420  2**2
>                   CONTENTS, ALLOC, LOAD, READONLY, CODE
>  11 .init.text    00001b3c  00000000  00000000  00013428  2**2
>                   CONTENTS, ALLOC, LOAD, RELOC, READONLY, CODE
>  12 .text.1       00005f48  00000000  00000000  00014f64  2**2
>                   CONTENTS, ALLOC, LOAD, RELOC, READONLY, CODE
>  13 .text.2       00003078  00000000  00000000  0001aeac  2**2
>[snip]

Looks good to me, what I'd expect to see with the new binutils and a
compile without -ffunction-sections.  I'll see if I can reproduce it -
it's probably a bug in the latest binutils .

-- 
Linuxcare.  Support for the Revolution.

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

* Re: [parisc-linux] 32-bit xc-20001206.tar.gz is foobar
  2000-12-12  9:01         ` Alan Modra
@ 2000-12-12 10:53           ` Alan Modra
  0 siblings, 0 replies; 10+ messages in thread
From: Alan Modra @ 2000-12-12 10:53 UTC (permalink / raw)
  To: Matt Taggart; +Cc: Grant Grundler, parisc-linux


linux/arch/parisc/vmlinux.lds is the culprit.  Or at least, the line

	OUTPUT_FORMAT("elf32-hppa")

along with a new linker that produces elf32-hppa-linux output format.
I'm committing a fix to pehc.

-- 
Linuxcare.  Support for the Revolution.

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

end of thread, other threads:[~2000-12-12 10:55 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2000-12-10  5:23 [parisc-linux] 32-bit xc-20001206.tar.gz is foobar Grant Grundler
2000-12-10 13:02 ` Alan Modra
2000-12-10 15:38   ` Roel Teuwen
2000-12-12  0:06   ` [parisc-linux] gcc wchar patch for hppa64 John David Anglin
2000-12-12  1:43     ` Alan Modra
2000-12-12  8:28   ` [parisc-linux] 32-bit xc-20001206.tar.gz is foobar Matt Taggart
2000-12-12  8:37     ` Alan Modra
2000-12-12  8:44       ` Matt Taggart
2000-12-12  9:01         ` Alan Modra
2000-12-12 10:53           ` Alan Modra

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