Subject: bin/409: ld.so with minor number warning is noisy
To: None <gnats-admin>
From: Jason R. Thorpe <thorpej@mail.CS.ORST.EDU>
List: netbsd-bugs
Date: 08/11/1994 15:35:10
>Number: 409
>Category: bin
>Synopsis: ld.so with minor number warning is noisy
>Confidential: no
>Severity: serious
>Priority: high
>Responsible: gnats-admin (Utility Bug People)
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Thu Aug 11 15:35:06 1994
>Originator: Jason R. Thorpe
>Organization:
Department of Computer Science
Oregon State University
>Release: 1.0_BETA (sup'd 8/10/94)
>Environment:
System: NetBSD santiam 1.0_BETA NetBSD 1.0_BETA (SANTIAM) #2: Mon Aug 8 23:20:19 PDT 1994 thorpej@nemesis:/usr/src/sys/arch/hp300/compile/SANTIAM hp300
>Description:
When the change to ld.so was made to warn against using a
minor number lower than link time, the way one suppresses
warning about non pure code changed. To hear about it before
you did 'setenv LD_WARN_NON_PURE_CODE'. That was wonderful.
Now, to *stop* hearing about it, you 'setenv LD_SUPPRESS_WARNINGS'.
Well, every cron job that has a dynamic executible now spits
errors, etc. Also, one might want to be warned against
minor-number 'violations', yet not hear about non pure code.
I feel that the old way of warning against non pure code
is much friendlier, as it is quiet by default.
Yes, the libraries are up to date :-)
>How-To-Repeat:
Upgrade to new ld.so.
unsetenv LD_SUPPRESS_WARNINGS
run any dynamic executible.
>Fix:
The following patch applies to version:
$Id: rtld.c,v 1.21.2.1 1994/08/08 08:04:24 mycroft Exp $
*** rtld.c.dist Thu Aug 11 10:50:20 1994
--- rtld.c Thu Aug 11 10:56:54 1994
***************
*** 544,550 ****
else
sym = "";
! if (getenv("LD_SUPPRESS_WARNINGS") == NULL)
warnx("ld.so: warning: non pure code in %s at %x (%s)\n",
smp->som_path, r->r_address, sym);
--- 544,550 ----
else
sym = "";
! if (getenv("LD_WARN_NON_PURE_CODE") != NULL)
warnx("ld.so: warning: non pure code in %s at %x (%s)\n",
smp->som_path, r->r_address, sym);
>Audit-Trail:
>Unformatted:
------------------------------------------------------------------------------