summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2007-02-08Paul Brook writes:Mike Frysinger
I'm seeing a hang in applications that open and close files with a non-threaded uClibc. There is code in fclose() to remove a file handle from _stdio_openlist however it's commented out, allegedly because it is dead. _stdio_openlist is used in several places, including _stdio_term when a program exits. fclose() frees the struct, so I don't see how the code can possibly be redundant. In the __UCLIBC_HAS_THREADS__ && __STDIO_BUFFERS case the file is removed from _stdio_openlist by __STDIO_OPENLIST_DEC_USE. The attached patch fixes this bug be re-enabling the code.
2007-02-08pull in features.h so we have access to config definesMike Frysinger
2007-02-07sh crti.S needs features.h to resolve __HAVE_SHARED__, trivial patchPaul Mundt
from Carmelo Amoroso <carmelo73@gmail.com>.
2007-02-05no need to duplicate WCHAR checkMike Frysinger
2007-02-05- silence warning about using an undefined tokenBernhard Reutner-Fischer
2007-02-05- silence warning about using an undefined tokenBernhard Reutner-Fischer
2007-02-05new cheesy test by Denis Vlasenko to trigger fclose loopMike Frysinger
2007-02-04Add support for PowerPC e500, libc part only.Joakim Tjernlund
Math support to be done. From Steve Papacharalambous, stevep@freescale.com
2007-02-04fixup includes so we compile againMike Frysinger
2007-02-04the sun rpc code has too many alias violations to worry over now; just ↵Mike Frysinger
disable strict-aliasing until someone gets the balls to clean this stuff up
2007-02-04fix compiling and touchup styleMike Frysinger
2007-02-04sync some stuff from glibc to fix test build failureMike Frysinger
2007-02-02Make sure struct stat is identical to struct stat64 ifPeter Kjellerstedt
__USE_FILE_OFFSET64 is defined. This was the case for all architectures except those that use packed structures by default (i.e., CRIS).
2007-02-02use sane line breaksEric Andersen
2007-02-02replace bits/syscalls.h with a comment ... an empty file makes people think ↵Mike Frysinger
this is a bug rather than by design
2007-02-02Ronald Maeder writes:Eric Andersen
I have successfully made gethostbyname_r(), res_init(), and gethostid() fully reentrant. In addition, I have added a NULL check to inet_aton(). This is where SEG FAULTs were coming from when gethostbyname_r() was called.
2007-02-02use the correct lock for access to __nameserver[]Eric Andersen
2007-02-02fix lock namingEric Andersen
2007-02-02Ronald Maeder writes:Eric Andersen
Hi Erik, Thanks for all your great work. I found a set of bugs in resolv.c . Basically, there is code that looks like: BIGLOCK; __nameserversXX=__nameservers; __nameserverXX=__nameserver; BIGUNLOCK; i = __dns_lookup(dname, type, __nameserversXX, __nameserverXX, &packet, &a); which is a problem because the declarations are int __nameservers; char * __nameserver[MAX_SERVERS]; int __searchdomains; char * __searchdomain[MAX_SEARCH]; so you can see that __nameserver is a pointer. Copying the pointer to __nameserverXX doesn't protect the global variable space. I have attached a patch and the new file. I hope you will incorporate these bug fixes. I spent quite a bit of time tracking them down. Many thanks, Ron
2007-02-02fix obvious bug in ipv4/ipv6 resolving. When not using AF_INET,Eric Andersen
gethostbyname2_r tries to resolve an ipv6 address from /etc/hosts using get_hosts_byname_r, but with AF_INET instead of the supplied address family. This returns ipv4 addresses marked as ipv6 ones. Fix from nbd.
2007-02-01drive home the point people should not be using _syscall#() macrosMike Frysinger
2007-02-01document future need for larger time valuesMike Frysinger
2007-01-30- should look if LFS is enabled as suggested by pkj in #1131. This generates ↵Bernhard Reutner-Fischer
identical cc1 input for LFS enabled (compared to before r17652) but makes sure that we pickup the non-LFS if LFS is turned off (like r17652 did in this case).
2007-01-29- fix compilation of GNU glob with !LFSBernhard Reutner-Fischer
Sounds like a typo, really
2007-01-29Richard Sandiford writes:Mike Frysinger
However, retesting on m68k showed up a problem that had appeared in uClibc since the last time I tried. Specifically, revision 15785 did: -#define HEAP_GRANULARITY (sizeof (HEAP_GRANULARITY_TYPE)) +#define HEAP_GRANULARITY (__alignof__ (HEAP_GRANULARITY_TYPE)) -#define MALLOC_ALIGNMENT (sizeof (double)) +#define MALLOC_ALIGNMENT (__alignof__ (double)) The problem is that (a) MALLOC_HEADER_SIZE == MALLOC_ALIGNMENT (b) the header contains a size value of type size_t (c) sizeof (size_t) is 4 on m68k, but... (d) __alignof__ (double) is only 2 (the largest alignment used on m68k) So we only allocate 2 bytes for the 4-byte header, and the least significant 2 bytes of the size are in the user's area rather than the header. The patch below fixes that problem by redefining MALLOC_HEADER_SIZE to: MAX (MALLOC_ALIGNMENT, sizeof (size_t)) (but without the help of the MAX macro ;)). However, we really would like to have word alignment on Coldfire. It makes a big performance difference, and because we have to allocate a 4-byte header anyway, what wastage there is will be confined to the end of the allocated block. Any wastage will also be limited to 2 bytes per allocation compared to the current alignment. I've therefore used the __aligned__ type attribute to create a double type that has at least sizeof (size_t) bytes of alignment. I've introduced a new __attribute_aligned__ macro for this. It might seem silly protecting against old or non-GNU compilers here, but the extra alignment is only an optimisation, and having the macro is more in the spirit of the other attribute code.
2007-01-29- s/if USE___THREAD/if defined USE___THREAD && USE___THREAD/gBernhard Reutner-Fischer
2007-01-29- see if defined foo before trying to look at the value of foo (that should ↵Bernhard Reutner-Fischer
be 0 in this case. Avoids some warnings).
2007-01-29- sync with glibc (and provide a check for icc).Bernhard Reutner-Fischer
Only affects gcc <2.7 or non-gcc compilers that bailed earlier due to missing int64_t
2007-01-29pull in unistd.h for syscall() prototypeMike Frysinger
2007-01-29use ifdef rather than if for stack directionMike Frysinger
2007-01-29fix from Atsushi Nemoto for displaying of 64bit typesMike Frysinger
2007-01-29fix from Roman Kononov for reading in of 64bit typesMike Frysinger
2007-01-29make sure reading 64bit types worksMike Frysinger
2007-01-29make sure 64bit output is correctMike Frysinger
2007-01-29since these functions get exported, namespace the argumentsMike Frysinger
2007-01-29mark local function staticMike Frysinger
2007-01-29fixup shadowed warningsMike Frysinger
2007-01-29mark some funcs as noreturnMike Frysinger
2007-01-29fixup prototype warningsMike Frysinger
2007-01-29check to see if __USE_FILE_OFFSET64 is defined rather than if it evaluates ↵Mike Frysinger
to true
2007-01-29make error output a little more helpfulMike Frysinger
2007-01-29fixup warningsMike Frysinger
2007-01-29fix test to work even if CPPFLAGS contains -DNDEBUGMike Frysinger
2007-01-29sync some fixes from glibcMike Frysinger
2007-01-29missed an underscore in previous commitMike Frysinger
2007-01-28Bernhard Fischer writes: add undef/nonnull warnings to EXTRA_WARNINGSMike Frysinger
2007-01-28Bernhard Fischer writes: note how uClibc chooses to handle __resolved==NULLMike Frysinger
2007-01-28sync with glibc as pointed out by Bernhard FischerMike Frysinger
2007-01-28- commentary typo fixBernhard Reutner-Fischer
2007-01-28fix from Bernd Schmidt to make sure _dl_debug_state isnt optimized away and ↵Mike Frysinger
does not generate relocs