public inbox for glibc-bugs@sourceware.org help / color / mirror / Atom feed
* [Bug libc/12201] New: Fix setrlimit/getrlimit 32-bit platforms for limits > 2^32-1 @ 2010-11-07 15:02 mtk.manpages at gmail dot com 2010-11-08 20:16 ` [Bug libc/12201] " drepper.fsp at gmail dot com ` (6 more replies) 0 siblings, 7 replies; 8+ messages in thread From: mtk.manpages at gmail dot com @ 2010-11-07 15:02 UTC (permalink / raw) To: glibc-bugs http://sourceware.org/bugzilla/show_bug.cgi?id=12201 Summary: Fix setrlimit/getrlimit 32-bit platforms for limits > 2^32-1 Product: glibc Version: 2.12 Status: NEW Severity: normal Priority: P2 Component: libc AssignedTo: drepper.fsp@gmail.com ReportedBy: mtk.manpages@gmail.com The current glibc wrappers for getrlimit/setrlimit do some work to paper over this kernel bug: https://bugzilla.kernel.org/show_bug.cgi?id=5042 With the kernel 2.6.36 addition of the prlimit(2) syscall, the wrappers could be written to use prlimit() and thus avoid the problem resulting from the broken kernel syscalls. -- Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug. ^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug libc/12201] Fix setrlimit/getrlimit 32-bit platforms for limits > 2^32-1 2010-11-07 15:02 [Bug libc/12201] New: Fix setrlimit/getrlimit 32-bit platforms for limits > 2^32-1 mtk.manpages at gmail dot com @ 2010-11-08 20:16 ` drepper.fsp at gmail dot com 2010-11-11 5:34 ` mtk.manpages at gmail dot com ` (5 subsequent siblings) 6 siblings, 0 replies; 8+ messages in thread From: drepper.fsp at gmail dot com @ 2010-11-08 20:16 UTC (permalink / raw) To: glibc-bugs http://sourceware.org/bugzilla/show_bug.cgi?id=12201 Ulrich Drepper <drepper.fsp at gmail dot com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |WAITING --- Comment #1 from Ulrich Drepper <drepper.fsp at gmail dot com> 2010-11-08 20:16:22 UTC --- What exactly are you talking about? We are using ugetrlimit for some time. At the same time setrlimit was changed. These syscalls now match exactly the required userlevel semantic. -- Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug. ^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug libc/12201] Fix setrlimit/getrlimit 32-bit platforms for limits > 2^32-1 2010-11-07 15:02 [Bug libc/12201] New: Fix setrlimit/getrlimit 32-bit platforms for limits > 2^32-1 mtk.manpages at gmail dot com 2010-11-08 20:16 ` [Bug libc/12201] " drepper.fsp at gmail dot com @ 2010-11-11 5:34 ` mtk.manpages at gmail dot com 2010-11-11 9:09 ` drepper.fsp at gmail dot com ` (4 subsequent siblings) 6 siblings, 0 replies; 8+ messages in thread From: mtk.manpages at gmail dot com @ 2010-11-11 5:34 UTC (permalink / raw) To: glibc-bugs http://sourceware.org/bugzilla/show_bug.cgi?id=12201 Michael Kerrisk <mtk.manpages at gmail dot com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|WAITING |NEW --- Comment #2 from Michael Kerrisk <mtk.manpages at gmail dot com> 2010-11-11 05:33:45 UTC --- (In reply to comment #1) > What exactly are you talking about? It was fairly carefully explained in the kernel.org bug report... > We are using ugetrlimit for some time. At > the same time setrlimit was changed. These syscalls now match exactly the > required userlevel semantic. No, they do not. Look at the following. $ cat rlimit_large.c /* rlimit_large.c */ #define _FILE_OFFSET_BITS 64 #include <sys/resource.h> #include <sys/types.h> #include <stdio.h> #include <stdlib.h> #include <unistd.h> #include <string.h> #include <errno.h> #define errMsg(msg) { perror(msg); } #define errExit(msg) { perror(msg); exit(EXIT_FAILURE); } static void printRlimit(const char *msg, int resource) { struct rlimit rlim; if (getrlimit(resource, &rlim) == -1) errExit("getrlimit"); printf("%s soft=", msg); if (rlim.rlim_cur == RLIM_INFINITY) printf("infinite"); else if (rlim.rlim_cur == RLIM_SAVED_CUR) printf("unrepresentable"); else printf("%lld", (long long) rlim.rlim_cur); printf("; hard="); if (rlim.rlim_max == RLIM_INFINITY) printf("infinite\n"); else if (rlim.rlim_max == RLIM_SAVED_MAX) printf("unrepresentable"); else printf("%lld\n", (long long) rlim.rlim_max); } /* printRlimit */ int main(int argc, char *argv[]) { struct rlimit rl; printf("sizeof(rl.rlim_cur) = %ld\n", (long) sizeof(rl.rlim_cur)); /* Show the value of the glibc constant, just for interest */ printf("RLIM_INFINITY = %llx\n", (unsigned long long) RLIM_INFINITY); if (getrlimit(RLIMIT_FSIZE, &rl) == -1) errExit("setrlimit"); printRlimit("Initial RLIMIT_FSIZE limits : ", RLIMIT_FSIZE); #define VAL1 10000 rl.rlim_cur = VAL1; printf("About to set rlim_cur to %lld\n", (long long) rl.rlim_cur); if (setrlimit(RLIMIT_FSIZE, &rl) == -1) errExit("setrlimit"); if (getrlimit(RLIMIT_FSIZE, &rl) == -1) errExit("setrlimit"); printRlimit("RLIMIT_FSIZE limits after setrlimit(): ", RLIMIT_FSIZE); #define VAL2 4999222333LL rl.rlim_cur = VAL2; printf("About to set rlim_cur to %lld\n", (long long) rl.rlim_cur); if (setrlimit(RLIMIT_FSIZE, &rl) == -1) errExit("setrlimit"); if (getrlimit(RLIMIT_FSIZE, &rl) == -1) errExit("setrlimit"); printRlimit("RLIMIT_FSIZE limits after setrlimit(): ", RLIMIT_FSIZE); exit(EXIT_SUCCESS); } /* main */ $ cc rlimit_large.c $ ./a.out sizeof(rl.rlim_cur) = 8 RLIM_INFINITY = ffffffffffffffff Initial RLIMIT_FSIZE limits : soft=infinite; hard=infinite About to set rlim_cur to 10000 RLIMIT_FSIZE limits after setrlimit(): soft=10000; hard=infinite About to set rlim_cur to 4999222333 RLIMIT_FSIZE limits after setrlimit(): soft=infinite; hard=infinite The last line of output indicates the problem: a limit > (2^32)-1 got turned into RLIM_INFINITY, even though it is representable in 8 bytes. It's a kernel problem, but glibc's wrappers could now workaround that kernel problem by using prlimit(). -- Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug. ^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug libc/12201] Fix setrlimit/getrlimit 32-bit platforms for limits > 2^32-1 2010-11-07 15:02 [Bug libc/12201] New: Fix setrlimit/getrlimit 32-bit platforms for limits > 2^32-1 mtk.manpages at gmail dot com 2010-11-08 20:16 ` [Bug libc/12201] " drepper.fsp at gmail dot com 2010-11-11 5:34 ` mtk.manpages at gmail dot com @ 2010-11-11 9:09 ` drepper.fsp at gmail dot com 2010-12-26 12:55 ` drepper.fsp at gmail dot com ` (3 subsequent siblings) 6 siblings, 0 replies; 8+ messages in thread From: drepper.fsp at gmail dot com @ 2010-11-11 9:09 UTC (permalink / raw) To: glibc-bugs http://sourceware.org/bugzilla/show_bug.cgi?id=12201 --- Comment #3 from Ulrich Drepper <drepper.fsp at gmail dot com> 2010-11-11 09:09:37 UTC --- If you would only learn to express yourself correctly and concisely you could save yourself work. Why on earth would you say setrlimit has problems if you really mean setrlimit64? That's not at all the same code. -- Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug. ^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug libc/12201] Fix setrlimit/getrlimit 32-bit platforms for limits > 2^32-1 2010-11-07 15:02 [Bug libc/12201] New: Fix setrlimit/getrlimit 32-bit platforms for limits > 2^32-1 mtk.manpages at gmail dot com ` (2 preceding siblings ...) 2010-11-11 9:09 ` drepper.fsp at gmail dot com @ 2010-12-26 12:55 ` drepper.fsp at gmail dot com 2014-02-16 18:24 ` jackie.rosen at hushmail dot com ` (2 subsequent siblings) 6 siblings, 0 replies; 8+ messages in thread From: drepper.fsp at gmail dot com @ 2010-12-26 12:55 UTC (permalink / raw) To: glibc-bugs http://sourceware.org/bugzilla/show_bug.cgi?id=12201 Ulrich Drepper <drepper.fsp at gmail dot com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution| |FIXED --- Comment #4 from Ulrich Drepper <drepper.fsp at gmail dot com> 2010-12-26 01:13:06 UTC --- I checked in a patch. -- Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug. ^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug libc/12201] Fix setrlimit/getrlimit 32-bit platforms for limits > 2^32-1 2010-11-07 15:02 [Bug libc/12201] New: Fix setrlimit/getrlimit 32-bit platforms for limits > 2^32-1 mtk.manpages at gmail dot com ` (3 preceding siblings ...) 2010-12-26 12:55 ` drepper.fsp at gmail dot com @ 2014-02-16 18:24 ` jackie.rosen at hushmail dot com 2014-05-28 19:43 ` schwab at sourceware dot org 2014-06-30 6:29 ` fweimer at redhat dot com 6 siblings, 0 replies; 8+ messages in thread From: jackie.rosen at hushmail dot com @ 2014-02-16 18:24 UTC (permalink / raw) To: glibc-bugs https://sourceware.org/bugzilla/show_bug.cgi?id=12201 Jackie Rosen <jackie.rosen at hushmail dot com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |jackie.rosen at hushmail dot com --- Comment #5 from Jackie Rosen <jackie.rosen at hushmail dot com> --- *** Bug 260998 has been marked as a duplicate of this bug. *** Seen from the domain http://volichat.com Page where seen: http://volichat.com/adult-chat-rooms Marked for reference. Resolved as fixed @bugzilla. -- You are receiving this mail because: You are on the CC list for the bug. ^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug libc/12201] Fix setrlimit/getrlimit 32-bit platforms for limits > 2^32-1 2010-11-07 15:02 [Bug libc/12201] New: Fix setrlimit/getrlimit 32-bit platforms for limits > 2^32-1 mtk.manpages at gmail dot com ` (4 preceding siblings ...) 2014-02-16 18:24 ` jackie.rosen at hushmail dot com @ 2014-05-28 19:43 ` schwab at sourceware dot org 2014-06-30 6:29 ` fweimer at redhat dot com 6 siblings, 0 replies; 8+ messages in thread From: schwab at sourceware dot org @ 2014-05-28 19:43 UTC (permalink / raw) To: glibc-bugs https://sourceware.org/bugzilla/show_bug.cgi?id=12201 Andreas Schwab <schwab at sourceware dot org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC|jackie.rosen at hushmail dot com | -- You are receiving this mail because: You are on the CC list for the bug. ^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug libc/12201] Fix setrlimit/getrlimit 32-bit platforms for limits > 2^32-1 2010-11-07 15:02 [Bug libc/12201] New: Fix setrlimit/getrlimit 32-bit platforms for limits > 2^32-1 mtk.manpages at gmail dot com ` (5 preceding siblings ...) 2014-05-28 19:43 ` schwab at sourceware dot org @ 2014-06-30 6:29 ` fweimer at redhat dot com 6 siblings, 0 replies; 8+ messages in thread From: fweimer at redhat dot com @ 2014-06-30 6:29 UTC (permalink / raw) To: glibc-bugs https://sourceware.org/bugzilla/show_bug.cgi?id=12201 Florian Weimer <fweimer at redhat dot com> changed: What |Removed |Added ---------------------------------------------------------------------------- Flags| |security- -- You are receiving this mail because: You are on the CC list for the bug. ^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2014-06-30 6:29 UTC | newest] Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2010-11-07 15:02 [Bug libc/12201] New: Fix setrlimit/getrlimit 32-bit platforms for limits > 2^32-1 mtk.manpages at gmail dot com 2010-11-08 20:16 ` [Bug libc/12201] " drepper.fsp at gmail dot com 2010-11-11 5:34 ` mtk.manpages at gmail dot com 2010-11-11 9:09 ` drepper.fsp at gmail dot com 2010-12-26 12:55 ` drepper.fsp at gmail dot com 2014-02-16 18:24 ` jackie.rosen at hushmail dot com 2014-05-28 19:43 ` schwab at sourceware dot org 2014-06-30 6:29 ` fweimer at redhat dot com
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).