On Wed, Oct 23, 2002 at 05:29:40PM -0400, Andrew Gallatin wrote:
> 
> 
> 
> Ruslan Ermilov writes:
>  > OK, to summarize things.  There was a single problem with two
>  > symptoms: 1) groff, if built dynamically, could not be run
>  > by ld-elf.so; 2) groff, if built statically, always failed
>  > with ``out of memory'', apparently due to the same bug.
>  > 
>  > Static hack is safe to delete because:
>  > 
>  > 1.  groff that is built as part of the bootstrap-tools during
>  >     buildworld will be built static anyway (see -DNOSHARED in
>  >     BMAKE in Makefile.inc1)
>  > 
>  > 2.  if you have a vulnerable kernel and rtld-elf, static
>  >     linkage does not address the problem -- you get spurious
>  >     ``out of memory'' even if you link groff statically.
>  > 
>  > If you agree, please feel free to commit the backout of
>  > the hack yourself -- I'm going to leave the computer now.  :-)
> 
> Removed.  
> 
> Please review the following UPDATING entry:
> 
> --- UPDATING    3 Sep 2002 06:13:43 -0000       1.217
> +++ UPDATING    23 Oct 2002 21:24:44 -0000
> @@ -22,6 +22,19 @@
>         integrity.  Re-enabling write caching can substantially
> improve
>         performance.
> 
> +20021023:
> +       Alphas with kernels from between 20020902 and 20021022 and/or
> +       rtld (ld-elf.so.1) older than 20021022 may experience problems
> +       with groff while doing a buildworld (kernel: "out of memory",
> +       rtld: "too few PT_LOAD segments").
> +
> +       So, to successfully upgrade your Alpha, you must either
> +       upgrade your kernel and rtld first (which might be a bit
> +       tricky), or avoid running the bootstrapped groff during the
> +       "transitional" buildworld.  To avoid running groff during the
> +       transitional upgrade run make buildworld with -DNOMAN,
> +       -DNO_SHAREDOCS, and -DNO_LPR.
> +
>  20020831:
>         gcc has been upgraded to 3.2.  It is not all binary compatible
>         with earlier versions of gcc for c++ programs.  All c++
> 
> 
> Note:  I have NOT tested this, beyond verifying that a kernel from Sep
> 02 works fine.
> 
What commit is responsible for a breakage, this one?

: peter       2002/09/03 14:18:17 PDT
: 
:   Modified files:
:     sys/kern             imgact_elf.c
:   Log:
:   Make the text segment locating heuristics from rev 1.121 more reliable
:   so that it works on the Alpha.  This defines the segment that the entry
:   point exists in as 'text' and any others (usually one) as data.
: 
:   Submitted by: tmm
:   Tested on: i386, alpha
: 
:   Revision  Changes    Path
:   1.125     +10 -15    src/sys/kern/imgact_elf.c

Also I have verified (on beast) that previous version of Groff (1.17.1)
does not have this problem -- groff has two PT_LOAD segments.  Anyone
cares to explain what's going on here?  Why when I remove -fno-exceptions
it creates two PT_LOAD segments, why it does not affect previous version
of Groff?


Cheers,
-- 
Ruslan Ermilov          Sysadmin and DBA,
[EMAIL PROTECTED]           Sunbay Software AG,
[EMAIL PROTECTED]          FreeBSD committer,
+380.652.512.251        Simferopol, Ukraine

http://www.FreeBSD.org  The Power To Serve
http://www.oracle.com   Enabling The Information Age

Attachment: msg45130/pgp00000.pgp
Description: PGP signature

Reply via email to