Age | Commit message (Collapse) | Author |
|
text data bss dec hex filename
- 370 0 0 370 172 libc/misc/dirent/opendir.o
+ 366 0 0 366 16e libc/misc/dirent/opendir.o
- 375 4 0 379 17b libc/pwd_grp/lckpwdf.o
+ 356 4 0 360 168 libc/pwd_grp/lckpwdf.o
- 248 0 0 248 f8 librt/shm.o
+ 209 0 0 209 d1 librt/shm.o
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
|
|
bug #1:
static_fd = -1;
close(static_fd);
DOH!
bug #2:
if (utmp_fd == -1) {
__setutent();
}
if (utmp_fd == -1) {
return NULL;
}
if utmp_fd == -1, we call _setutent().
if __setutent() opens a fd, utmp_fd (a parameter)
wouldn't change, the second check is bogus.
We need to use static_fd instead in second check.
Which makes clear that having utmp_fd parameter
is wrong. See the patch for a complete fix.
Shrink comes from simplifying fcntl(static_fd, F_SETFD, FD_CLOEXEC):
text data bss dec hex filename
- 661 8 384 1053 41d libc/misc/utmp/utent.o
+ 604 8 384 996 3e4 libc/misc/utmp/utent.o
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
|
|
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
|
|
If your arch does not support _syscall6(), it is broken anyways.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
|
This fixes compilation errors on hosts that turn off long double support
for C99 like powerpc32.
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
|
|
Right now for ARM, MIPS, Xtensa and powerpc posix_fadvise
routines are included conditionally. They should only be
enabled when UCLIBC_HAS_ADVANCED_REALTIME is set. Also fix
code style in powerpc/posix_fadvise64.c
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
Fix the argument types to operate on long
and correct a typo.
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
The syscall is having different number of params
and in one case the parameters are passed in differently.
This patch add powerpc specific versions of these
functions.
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
Handle O=
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
|
|
Fixes 3575b741754b391a27e33bb1866bdb29131b7fea
which only changed the old impl but not the new one.
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
|
|
Signed-off-by: Maxim Kuvyrkov <maxim@codesourcery.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
|
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
|
|
CLONE_VM (used in no-MMU daemon) is defined in <bits/sched.h>. A
build with threads ends up including <sched.h> via <pthread.h> via
<bits/uClibc_mutex.h>; this indirect include does not happen for a
build without threads, so this patch adds a direct <sched.h> include.
Signed-off-by: Joseph Myers <joseph@codesourcery.com>
|
|
Without a hidden_def we'd end up with __GI_ioperm which is wrong.
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
|
|
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
Avoid including akefile.commonarch in each Makefile.arch.
Include it instead from Makefile.in just after the arch specific
Makefile.arch
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
|
|
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
|
|
Now that Linux is no longer installing linux/user.h, arches will have to
provide their own.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
|
I always forget that many arches have their own bits/stat.h ...
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
|
Fill out the stat structure so that the nanosecond resolution support is
always available. There is a small code size increase for a few ports
(three additional assignments in xstatconv), but otherwise everything
should remain the same.
While we're here, punt __old_kernel_stat from the few headers that still
define it as it is unused in uClibc and causes compile errors after these
nanosecond changes.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
|
The sbrk() function can be used to merely query sizes and for that, no-mmu
works the same as mmu. It can also sometimes increase data segments on
no-mmu systems provided the trailing memory is free. So, there is no real
reason to exclude this function for no-mmu ports.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
|
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
|
The dlpi_addr isn't a simple Elf_Addr type for FDPIC systems, so we can't
just assign 0 to it to initialize.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
|
The Blackfin port hasn't been compiling cleanly, so this typo was missed
in the byteswap unification commit.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
|
The order of attributes in a function definition matters and in a few
places in the Blackfin code, it was being applied to the return type
instead of the function itself.
In file included from ldso/ldso/ldso.c:43:
ldso/ldso/bfin/elfinterp.c: At top level:
ldso/ldso/bfin/elfinterp.c:42: warning: '__visibility__' attribute ignored on non-class types
In file included from ldso/ldso/bfin/elfinterp.c:341,
from ldso/ldso/ldso.c:43:
libc/sysdeps/linux/bfin/crtreloc.c: At top level:
libc/sysdeps/linux/bfin/crtreloc.c:91: warning: 'visibility' attribute ignored on non-class types
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
|
Rather than force people to always implement their own vfork(), have the
default implementation be sane.
For now, only the Blackfin port uses the new code.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
|
The register is already loaded for us upon entry by the kernel.
Signed-off-by: Jie Zhang <jie.zhang@analog.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
|
Signed-off-by: Jie Zhang <jie.zhang@analog.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
|
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
|
openat64() uses openat(), so we need hidden aliases for it.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
|
Sometimes references for these functions show up (like when debugging is
enabled), so add hidden aliases for them if needed.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
|
The majority of the byteswap functions are the same across all arches, so
setup a common header to provide definitions if they don't exist. This
allows arches to override only the ones they actually want to implement
with inline assembly.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
|
Undo my old mistake. I added UCLIBC_INTERNAL define,
but later I realized _LIBC is doing exactly the same thing.
This change converts all usages of UCLIBC_INTERNAL to _LIBC,
removing all instances of UCLIBC_INTERNAL.
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
|
|
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
|
|
libc/sysdeps/linux/mips/clone.S: Assembler messages:
libc/sysdeps/linux/mips/clone.S:122: Warning: No .frame pseudo-op used in PIC code
libc/sysdeps/linux/mips/clone.S:75: Warning: Pretending global symbol used as branch target is local.
libc/sysdeps/linux/mips/crt1.S: Assembler messages:
libc/sysdeps/linux/mips/crt1.S:134: Warning: No .cprestore pseudo-op used in PIC code
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
These arches are generic C implementations of the byteswap functions, so
rather than keep a useless local copy, use the common C one.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
|
The cris/hppa code appears to be easy to convert, so go ahead and do it
for them. Build tested only.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
|
A port or two (like hppa) does define ENOTSUP, so don't assume that
everyone needs this fallback define.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
|
The INLINE_SYSCALL_NCS() macro was using "res" and "err" as local variable
names, but this caused conflicts with some code (like clock_getres) whose
arguments were named the same.
libc/sysdeps/linux/common/clock_getres.c: In function 'clock_getres':
libc/sysdeps/linux/common/clock_getres.c:15: warning: 'res' is used uninitialized in this function
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
|
If an arch (like alpha and others) have no ldso support at all, then there
is no point in attempting to walk loaded modules in the dl-* helper funcs.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
|
The latest sanitized linux kernel headers no longer export asm/elf.h, so do
not rely on it anymore.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
|
The latest alpha Linux kernel defines __NR_fdatasync like everyone else and
deprecates the older __NR_osf_fdatasync, so support that setup.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
|
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
|
Tested basic functionality with coreutils and things seem to work. At
least gives us a basis to jump from.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
|
This syncs the dirent related functions with the glibc behavior -- rather
than take void pointers everywhere, make the struct dirent pointers
explicit in the API. After all, the functions themselves will cast the
pointers to a dirent structure, so if it isn't as expected, people will
crash.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
|
Avoid gcc warnings about #if statements with defines that aren't defined.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
|
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
|
Reported-by: Denys Vlasenko <vda.linux@googlemail.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|