Age | Commit message (Collapse) | Author |
|
|
|
|
|
I got the library to compile with the attached patches, though dynamic
loader crashes early.
In buildroot I changed the architecture name by hand from sparc to
sparc64, otherwise the compiler produced 32-bit files with V9 (64-bit)
instructions. This configuration is not supported by QEMU, so I aimed
for pure 64-bit. I think Sparc64 option needs to be added to
buildroot.
The _Qp_ ops seem to be required by the ABI. This and setjmp patches
are just hacks to get the compilation further. The _Qp_ ops can be
found in glibc, would it be OK to use those?
V9 assembler requires declarations for global register use.
The mem* functions in sparc32 directory did not work. They are
actually used only by the hybrid 32-bit + V9 CPU configuration.
|
|
In MIPS syscall(2), .cpload was added to an the error path, but it was
not enough for ABIs other then O32. Use SETUP_GP, SETUP_GP64 and
RESTORE_GP64 to handle all ABIs. This patch fixes an error path of
MIPS pipe(2) too.
|
|
from i386 and x86_64.
|
|
Make msync.c agree on this.
|
|
them enabled, so let's go all the way. There was a quick discussion on IRC about making the max baud rate configurable. That requires a bunch of #ifdef salting throughout all of the 'termios.h' files for the pre-processor to chew on. I'm going to pass on that for now.
|
|
|
|
else.
- internal_function is only used inside libc, so do not define it in
uClibc_arch_features.h on i386 if we are outside of libc.
|
|
Hi All,
this patch fixes a mismatch in ucontext struct between uClibc and kernel.
In this way a signal handler installed by sigaction can access
to the whole machine state correctly.
This can be applied both to trunk and nptl branch
|
|
Current MIPS readahead(), posix_fadvise(), posix_fadvise64() do not
match with kernel on all ABIs.
On O32 ABI, a padding is needed before a long long argument.
On N32/N64, a long long argument should be passed via a single register.
|
|
http://www.opengroup.org/onlinepubs/009695399/functions/posix_fadvise.html
states it returns error code instead of setting errno.
|
|
I actually suspect this code into the file uClibc/libc/sysdeps/linux/common/poll.c:
tval.tv_nsec = (timeout % 1000) *1000; <==== make only usec!
From milisecond this really needs a * 1000000 to make nanosecond. Without this
a 1100 milisecond timeout is converted into a 1 seconde and 100 microsecond
timeout! This can explain the weird result of the test code.
|
|
|
|
Daniel Jacobowitz on the mailing list. More information available at <http://www.uclibc.org/lists/uclibc/2007-May/017968.html> .
|
|
Linux kernel versions as reported by Joseph S. Myers on the mailing list. More information available at <http://www.uclibc.org/lists/uclibc/2007-May/017971.html> .
|
|
|
|
|
|
|
|
running LTP test suite on uClibc-nptl for sh4 I found a bug into pread
and pwrite functions. When the offset is negative it is not correctly
handled due to a missing shift operation, so it is passed to the
syscall as the highest unsigned positive value.
|
|
|
|
|
|
|
|
pointed out the solution. This fixes a segfault for me on exit from a
statically linked "hello world".)
|
|
On PowerPC, r13 is used for a small data pointer and needs to be set up
from _SDA_BASE_ (defined by the linker) at startup.
This is needed for the GCC testcase gcc.target/powerpc/980827-1.c to work.
This patch fixes that testcase (verified for both static and dynamic
linking).
|
|
emulate poll with ppoll.
|
|
|
|
with gcc 4.2. Renaming to make it a bit uncommon name.
|
|
|
|
The attached patch works around some compilation failures on
ia64 caused by the use of the C preprocessor ## operator, and
allows the ia64 default configuration to build again -- or, at
least get as far as an x86 build does (the current source tree
has some problems compiling because of conflicting type
declarations for __kernel_dev_t).
|
|
|
|
says "virtual memory exhausted" trying to build hello world.)
|
|
again, this makes the non-threaded case compile again. I have no idea
if this is the proper fix, I'm just tired if it not compiling for two
weeks.
|
|
Patch from Carmelo Amoroso <carmelo73@gmail.com>.
|
|
Carmelo Amoroso <carmelo73@gmail.com>.
|
|
|
|
Import INTERNAL_SYSCALL macro for i386 from glibc.
Use above macro in posix_fadvise implementation if an arch defines it.
|
|
|
|
|
|
|
|
|
|
|
|
When I imported INLINE_SYSCALL, etc. from glibc, I just copied whole
macros for each ABI. Actually, except for argument type (long
vs. long long), internal_syscall[0-4] are identical for all ABI, and
internal_syscall[5-6] for N32/N64 are identical for N32/N64.
And I just disabled FORCE_FRAME_POINTER since it had caused build
failure, but including <alloca.h> can solve it.
Here is a patch to handle these issues, plus asm/__asm__ and
volatile/__volatile__ conversion.
Thanks for Peter S. Mazinger who did basic work of this cleanup.
|
|
clean up E500 math support somewhat.
From Steve Papacharalambous with mods by me.
|
|
protect its use by #ifdef INTERNAL_SYSCALL since not all
arch's has INTERNAL_SYSCALL.
All arch's not having INTERNAL_SYSCALL in
libc/sysdeps/linux/<arch>/bits/syscalls.h should get an update
from glibc.
|
|
|
|
in the powerpc arch code and make more code common with
classic PowerPC. From Steve Papacharalambous
Lets hope I didn't break something.
|
|
Current ucontext_t does not match with kernel's definition. Also, on
N32 ABI, we can not use kernel's struct sigcontext since kernel's
sizeof(long) and user's sizeof(long) is differ.
For both data structure, just importing header files from recent glibc
fixes the mismatch. So here is a patch importing sys/ucontext.h and
bits/sigcontext.t from glibc-2.5.
|
|
|
|
gcc barf otherwise.
|