Last Comment Bug 356616 - NSPR DLLS should build at default base address
: NSPR DLLS should build at default base address
Status: RESOLVED FIXED
:
Product: NSPR
Classification: Components
Component: NSPR (show other bugs)
: 4.6.3
: x86 Windows 2000
: P2 normal (vote)
: 4.6.4
Assigned To: Julien Pierre
: Wan-Teh Chang
Mentors:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2006-10-13 16:57 PDT by Julien Pierre
Modified: 2006-10-18 17:39 PDT (History)
3 users (show)
See Also:
Crash Signature:
(edit)
QA Whiteboard:
Iteration: ---
Points: ---


Attachments
Use system default DLLBASE unless specified (4.82 KB, patch)
2006-10-18 17:24 PDT, Julien Pierre
wtc: review+
Details | Diff | Review

Description Julien Pierre 2006-10-13 16:57:28 PDT
Currently, NSPR builds its DLLs at an address of 0x3000000. The system default is 0x10000000 .

In some situations, the alternate address is undesirable. The JDK 1.5 for instance allocates its heap as a contiguous block. If configured with a large heap (512 MB or larger), the JVM won't start, because NSPR is in the middle of the address space.

We should build our DLLs with the default address of 0x100000000 . I don't think anyone depends on the alternate address we have now.

Of course, some products may want to build at an alternate address for other reasons, so we should leave the rule in place to allow DLLBASE to be customized .
Comment 1 Wan-Teh Chang 2006-10-13 18:49:13 PDT
Please remove all references to DLLBASE from the NSPR
source tree.  DLLBASE is not an environment variable or
a make variable you set on the gmake command line.  Without
anything in the source tree using DLLBASE, a future NSPR
maintainer will need to search in the CVS logs or Bugzilla
to know why $(DLLBASE) is there.

Nobody needs DLLBASE as a build option.  Please don't
add a customization option that nobody will use.
Comment 2 Julien Pierre 2006-10-16 17:21:30 PDT
Wan-Teh,

We might need to use another non-default address in the future at Sun .
This is why I think the DLLBASE rule should be preserved. The same rule exists in NSS coreconf, and it is not harmful . But we can add comments to explain why it's there.
Comment 3 Julien Pierre 2006-10-18 17:24:22 PDT
Created attachment 242713 [details] [diff] [review]
Use system default DLLBASE unless specified

I left the macro in the rules so that the DLLBASE can be customized in the future by products that need that feature.
Comment 4 Julien Pierre 2006-10-18 17:39:39 PDT
Thanks for the review, Wan-Teh !

Checked in to the tip :

Checking in lib/ds/Makefile.in;
/cvsroot/mozilla/nsprpub/lib/ds/Makefile.in,v  <--  Makefile.in
new revision: 1.36; previous revision: 1.35
done
Checking in lib/libc/src/Makefile.in;
/cvsroot/mozilla/nsprpub/lib/libc/src/Makefile.in,v  <--  Makefile.in
new revision: 1.32; previous revision: 1.31
done
Checking in lib/msgc/src/Makefile.in;
/cvsroot/mozilla/nsprpub/lib/msgc/src/Makefile.in,v  <--  Makefile.in
new revision: 1.14; previous revision: 1.13
done
Checking in lib/prstreams/Makefile.in;
/cvsroot/mozilla/nsprpub/lib/prstreams/Makefile.in,v  <--  Makefile.in
new revision: 1.22; previous revision: 1.21
done
Checking in pr/src/Makefile.in;
/cvsroot/mozilla/nsprpub/pr/src/Makefile.in,v  <--  Makefile.in
new revision: 1.43; previous revision: 1.42
done
Checking in pr/tests/dll/Makefile.in;
/cvsroot/mozilla/nsprpub/pr/tests/dll/Makefile.in,v  <--  Makefile.in
new revision: 1.17; previous revision: 1.16
done

And to NSPR_4_6_BRANCH :
Checking in lib/ds/Makefile.in;
/cvsroot/mozilla/nsprpub/lib/ds/Makefile.in,v  <--  Makefile.in
new revision: 1.35.2.1; previous revision: 1.35
done
Checking in lib/libc/src/Makefile.in;
/cvsroot/mozilla/nsprpub/lib/libc/src/Makefile.in,v  <--  Makefile.in
new revision: 1.31.2.1; previous revision: 1.31
done
Checking in lib/msgc/src/Makefile.in;
/cvsroot/mozilla/nsprpub/lib/msgc/src/Makefile.in,v  <--  Makefile.in
new revision: 1.13.2.1; previous revision: 1.13
done
Checking in lib/prstreams/Makefile.in;
/cvsroot/mozilla/nsprpub/lib/prstreams/Makefile.in,v  <--  Makefile.in
new revision: 1.21.2.1; previous revision: 1.21
done
Checking in pr/src/Makefile.in;
/cvsroot/mozilla/nsprpub/pr/src/Makefile.in,v  <--  Makefile.in
new revision: 1.40.2.2; previous revision: 1.40.2.1
done
Checking in pr/tests/dll/Makefile.in;
/cvsroot/mozilla/nsprpub/pr/tests/dll/Makefile.in,v  <--  Makefile.in
new revision: 1.16.2.1; previous revision: 1.16
done

Note You need to log in before you can comment on or make changes to this bug.