[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Gcl-devel] Re: tub
[Gcl-devel] Re: tub
10 Aug 2005 11:08:46 -0400
Gnus/5.09 (Gnus v5.9.0) Emacs/21.2
Robert Boyer <address@hidden> writes:
> You might want to look at
> for documentation of tub (evade task_unapped_base) for a hack that supposedly
> lets one get up 2.8GB. Fairly recent. And it is a user-mode hack, i.e., one
> does not need to be root or rebuild the kernel.
This is what I love about the open source community -- what ingenuity
to scratch the common itch! The depth of knowledge squirreled away in
at least some brain of the world will never cease to amaze me.
In principle, we could incorporate tub into gcl. It is x86 only
however. Furthermore, a quick attempt at building with gcc-4.0 gives:
gcc -g -O3 -c -o tub_cstart.o tub_cstart.c
tub_cstart.c:15: warning: conflicting types for built-in function 'bzero'
tub_cstart.c: In function 'tub_cstart':
tub_cstart.c:156: warning: incompatible implicit declaration of built-in
gcc -c -o tub_libc.o tub_libc.S
gcc -g -O3 -c -o tub_mmap.o tub_mmap.c
gcc -g -O3 -c -o tub_sigbus.o tub_sigbus.c
In file included from /usr/include/sys/types.h:216,
/usr/include/sys/select.h:38: error: conflicting types for 'sigset_t'
tub_signal.h:10: error: previous declaration of 'sigset_t' was here
In file included from /usr/include/asm/siginfo.h:4,
/usr/include/asm-generic/siginfo.h:75: error: syntax error before 'clock_t'
/usr/include/asm-generic/siginfo.h:92: error: syntax error before '}' token
/usr/include/asm-generic/siginfo.h:93: error: syntax error before '}' token
In file included from tub_sigbus.c:1:
tub_signal.h:88: error: syntax error before 'siginfo_t'
tub_sigbus.c:6: error: syntax error before 'siginfo_t'
tub_sigbus.c: In function 'handler':
tub_sigbus.c:8: error: 'uc' undeclared (first use in this function)
tub_sigbus.c:8: error: (Each undeclared identifier is reported only once
tub_sigbus.c:8: error: for each function it appears in.)
tub_sigbus.c:12: error: 'signum' undeclared (first use in this function)
tub_sigbus.c:15: error: 'info' undeclared (first use in this function)
tub_sigbus.c: In function 'setup_sigbus_handler':
tub_sigbus.c:45: error: syntax error before 'siginfo_t'
make: *** [tub_sigbus.o] Error 1
This or analogous approaches are worth pursuing, but the static build
is the sure fire solution within our control. I don't feel
comfortable shipping a static gcl, but the power user should be able
to so build if they desire.
Just another note about binary lifetime -- while static linking
removes binary obsolescence induced by external library change, gcl
may silently break in any case with gcc upgrades. Being able to
rebuild from source at all times appears so important. Just recently,
sigblock and sigsetmask have become deprecated, which means we have to
remove them before the next gcc go round when they simply will be
One other issue on the static front -- there are a number of functions
in libc currently in use by gcl for which the linker warns that
compatible dynamic runtime libc versions are required even with static
linking. These are mostly password lookups and the like, and may be
replaceable. At present, you can see the list by adding "-static " to
compiler::*ld*, and calling (compiler::link nil "new") -- this wont
work (yet) but will display the errors to which I'm referring.
Camm Maguire address@hidden
"The earth is but one country, and mankind its citizens." -- Baha'u'llah
|[Prev in Thread]
||[Next in Thread]|
- [Gcl-devel] Re: tub,
Camm Maguire <=