summary |
shortlog | log |
commit |
commitdiff |
tree
first ⋅ prev ⋅ next
GNU Libc Maintainers [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
git-intr-msg
commit
32ad5b3328e0ce53ca27e185a89ca44c1d0acd0c
Author: Samuel Thibault <samuel.thibault@ens-lyon.org>
Date: Tue Oct 9 23:40:09 2018 +0200
hurd: Fix race between calling RPC and handling a signal
* sysdeps/mach/hurd/i386/intr-msg.h (INTR_MSG_TRAP): Make
_hurd_intr_rpc_msg_about_to global point to start of controlled
assembly snippet. Make it check canceled flag again.
* hurd/hurdsig.c (_hurdsig_abort_rpcs): Only mutate thread if it passed the
_hurd_intr_rpc_msg_about_to point.
* hurd/intr-msg.c (_hurd_intr_rpc_mach_msg): Remove comment on mutation
issue.
Gbp-Pq: Topic hurd-i386
Gbp-Pq: Name git-intr-msg.diff
GNU Libc Maintainers [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
git-interrupt_timeout
commit
6849ff19657e8f7e6a83e9aaae07eb45269dc7d4
Author: Samuel Thibault <samuel.thibault@ens-lyon.org>
Date: Tue Oct 9 22:27:59 2018 +0200
hurd: set interrupt timeout to 1 minute
Seeing a server not able to get interrupted for 3s is not so surprising when
e.g. a lot of writes are happening. 1 minute allows to actually notice the
issue and be able to debug it.
* hurd/hurdsig.c (_hurd_interrupted_rpc_timeout): Set to 60000.
Gbp-Pq: Topic hurd-i386
Gbp-Pq: Name git-interrupt_timeout.diff
GNU Libc Maintainers [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
git-interrupt_timeout_EIO
commit
16d61b858ec0e802008d721e150e48d6083d3921
Author: Samuel Thibault <samuel.thibault@ens-lyon.org>
Date: Tue Oct 9 22:25:19 2018 +0200
hurd: Return EIEIO on non-responding interrupted servers
since we do not actually know whether the RPC was completed or not,
which makes a huge difference for e.g. write(), so better really error
out than letting caller think that the RPC did not happen.
* hurd/intr-msg.c (_hurd_intr_rpc_mach_msg): When the server does not
answer to interrupt_operation, return EIEIO instead of EINTR.
Gbp-Pq: Topic hurd-i386
Gbp-Pq: Name git-interrupt_timeout_EIO.diff
GNU Libc Maintainers [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
local-hurd_sigstate-PLT
===================================================================
Gbp-Pq: Topic hurd-i386
Gbp-Pq: Name local-hurd_sigstate-PLT.diff
GNU Libc Maintainers [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
local-exec_filename
Keep compatibility with experimental implementation
Gbp-Pq: Topic hurd-i386
Gbp-Pq: Name local-exec_filename.diff
GNU Libc Maintainers [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
local-no_unsupported_ioctls
These ioctls are not actually supported (and will probably not be in the
close future), and are not available on Linux either, so don't expose
them to application at the risk of them complaining that they don't work
(e.g. xterm using TIOCLSET).
Gbp-Pq: Topic hurd-i386
Gbp-Pq: Name local-no_unsupported_ioctls.diff
Justus Winter [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
hurd: Handle `pid' magical lookup retry
* hurd/lookup-retry.c: Handle `pid' magical lookup
retry.
Gbp-Pq: Topic hurd-i386
Gbp-Pq: Name tg-magic-pid.diff
Samuel Thibault [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
XXX: make libc_rwlock recursive
Without making the rwlocks recursive, running fakeroot-tcp gets this:
#0 0x0106e91c in mach_msg_trap () at /usr/src/glibc-2.24/build-tree/hurd-i386-libc/mach/mach_msg_trap.S:2
#1 0x0106f090 in __mach_msg (msg=0x20034a0, option=3, send_size=64, rcv_size=32, rcv_name=421, timeout=0, notify=0) at msg.c:110
#2 0x0125a241 in __gsync_wait (task=1, addr=
19101080, val1=2, val2=0, msec=0, flags=0)
at /usr/src/glibc-2.24/build-tree/hurd-i386-libc/mach/RPC_gsync_wait.c:175
#3 0x010b0743 in __dcigettext (domainname=0x8050740 <_libc_intl_domainname@@GLIBC_2.2.6> "libc",
msgid1=0x8051d88 "undefined symbol: acl_get_fd", msgid2=0x0, plural=0, n=0, category=5) at dcigettext.c:527
#4 0x010af776 in __dcgettext (domainname=0x8050740 <_libc_intl_domainname@@GLIBC_2.2.6> "libc",
msgid=0x8051d88 "undefined symbol: acl_get_fd", category=5) at dcgettext.c:47
#5 0x0124e427 in __dlerror () at dlerror.c:94
#6 0x01035ae3 in load_library_symbols () from /usr/lib/i386-gnu/libfakeroot/libfakeroot-tcp.so
#7 0x01035cc3 in tmp___fxstat64 () from /usr/lib/i386-gnu/libfakeroot/libfakeroot-tcp.so
#8 0x01036cd6 in __fxstat64 () from /usr/lib/i386-gnu/libfakeroot/libfakeroot-tcp.so
#9 0x010ad831 in _nl_load_locale_from_archive (category=category@entry=0, namep=namep@entry=0x200399c) at loadarchive.c:211
#10 0x010ac45b in _nl_find_locale (locale_path=0x0, locale_path_len=0, category=category@entry=0, name=0x200399c) at findlocale.c:154
#11 0x010abde7 in setlocale (category=0, locale=0x804c2e4 "") at setlocale.c:417
#12 0x0804947f in main (argc=2, argv=0x2003ad4) at programs/locale.c:191
That's very unfortunate: libfakeroot gets initialized from a section
where __libc_setlocale_lock is already locked, and thus the dlerror()
call hangs inside __dcigettext. It happens that Linux doesn't have
the problem probably because pthread_rwlock_wrlock returns a EDEADLK
error instead of hanging, and then the first unlock unlocks, and the
second unlock probably returns an EINVAL. This is all very unsafe, but
that's fakeroot-tcp's matter (see http://bugs.debian.org/845930 for the
follow-up)...
We only use it when constructing the debian installer for -s -r options
anyway.
Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
Gbp-Pq: Topic hurd-i386
Gbp-Pq: Name tg-libc_rwlock_recursive.diff
Samuel Thibault [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
Fix SS_ONSTACK support
* sysdeps/mach/hurd/i386/sigreturn.c (__sigreturn2): New function,
unlocks SS and returns to the saved PC.
(__sigreturn): Do not unlock SS, and "return" into __sigreturn2 on the
thread stack instead of the saved PC.
Gbp-Pq: Topic hurd-i386
Gbp-Pq: Name tg-ONSTACK.diff
GNU Libc Maintainers [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
tg-eintr
commit
230b85f414291ac955827aba15cfbd103ab6ebdd
Author: Samuel Thibault <samuel.thibault@ens-lyon.org>
Date: Thu Jun 9 01:15:10 2016 +0200
Fix pipe() call returning EINTR sometimes
because it uses a critical section
Gbp-Pq: Topic hurd-i386
Gbp-Pq: Name tg-eintr.diff
GNU Libc Maintainers [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
local-mach_print
Gbp-Pq: Topic hurd-i386
Gbp-Pq: Name local-mach_print.diff
GNU Libc Maintainers [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
tg-bootstrap
This dependency is missing, but would pose problem on Darwin
Gbp-Pq: Topic hurd-i386
Gbp-Pq: Name tg-bootstrap.diff
GNU Libc Maintainers [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
submitted-bind_umask2
2014-08-27 Samuel Thibault <samuel.thibault@ens-lyon.org>
Fix bind when umask is e.g. 0777.
* sysdeps/mach/hurd/bind.c (__bind): Pass mode 0666 to __dir_mkfile
instead of final mode, so that call __ifsock_getsockaddr can always
succeed, before calling __file_chmod to fix the mode according to umask,
before calling __dir_link to show the file.
Part of the original fix was committed, the other hasn't been yet, see Roland's
"Harumph" reply to
https://sourceware.org/ml/libc-alpha/2014-08/msg00408.html
Gbp-Pq: Topic hurd-i386
Gbp-Pq: Name submitted-bind_umask2.diff
Richard Braun [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
Hurd: make sigstates hold a reference on thread ports
This change is required in order to correctly release per-thread
resources. Directly reusing the threading library reference isn't
possible since the sigstate is also used early in the main thread,
before threading is initialized.
* hurd/hurd/signal.h (_hurd_self_sigstate): Drop thread reference after
calling _hurd_thread_sigstate.
(_hurd_critical_section_lock): Likewise.
* hurd/hurdsig.c (_hurd_thread_sigstate): Add a reference on the thread.
(_hurd_sigstate_delete): Drop thread reference.
Gbp-Pq: Topic hurd-i386
Gbp-Pq: Name tg-sigstate_thread_reference.diff
Justus Winter [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
submitted-path_mounted
To: libc-alpha@sourceware.org
Subject: [PATCH 2/2] Define _PATH_MOUNTED as "/etc/mtab"
Date: Thu, 15 Aug 2013 10:43:35 +0200
Change the definition of _PATH_MOUNTED to "/etc/mtab". This is the
value used on Linux.
The change is motivated by the fact that on Debian /etc/mtab is a
symbolic link to /proc/mounts. This patch adjusts the macro for
non-linux systems such as Hurd. Changing this using
sysdeps/mach/hurd/paths.h causes build problems because
/usr/include/hurd/paths.h is shadowed by this file. This change is
proposed in the hope that aligning the non-linux targets with the
glibc for Linux is perceived as a good thing while fixing this problem
on Debian/Hurd along the way.
* sysdeps/generic/paths.h (_PATH_MOUNTED): Change value to "/etc/mtab".
Gbp-Pq: Topic hurd-i386
Gbp-Pq: Name submitted-path_mounted.diff
GNU Libc Maintainers [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
unsubmitted-clock_t_centiseconds
Some applications assume centisecond precision, or at most millisecond precision
(e.g. guile). This is a work-around for them.
Gbp-Pq: Topic hurd-i386
Gbp-Pq: Name unsubmitted-clock_t_centiseconds.diff
Samuel Thibault [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
Fix poll and select POSIX compliancy details about errors
This fixes the following:
- On error, poll must not return without polling, including EBADF, and instead
report POLLHUP/POLLERR/POLLNVAL
- Select must report EBADF if some set contains an invalid FD.
The idea is to move error management to after all select calls, in the
poll/select final treatment. The error is instead recorded in a new `error'
field, and a new SELECT_ERROR bit set.
Thanks Svante Signell for the initial version of the patch.
* hurd/hurdselect.c (SELECT_ERROR): New macro.
(_hurd_select):
- Add `error' field to `d' structures array.
- If a poll descriptor is bogus, set EBADF, but continue with a zero timeout.
- Go through the whole fd_set, not only until _hurd_dtablesize. Return EBADF
there is any bit set above _hurd_dtablesize.
- Do not request io_select on bogus descriptors (SELECT_ERROR).
- On io_select request error, record the error.
- On io_select bogus reply, use EIO error code.
- On io_select bogus or error reply, record the error.
- Do not destroy reply port for bogus FDs.
- On error, make poll set POLLHUP in the EPIPE case, POLLNVAL in the EBADF
case, or else POLLERR.
- On error, make select simulated readiness.
Gbp-Pq: Topic hurd-i386
Gbp-Pq: Name tg-poll_errors_fixes.diff
Richard Braun [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
Fix timeout handling in _hurd_select
Rely on servers to implement timeouts, so that very short values (including
0) don't make mach_msg return before valid replies can be received. The
purpose of this scheme is to guarantee a full client-server round-trip,
whatever the timeout value.
This change depends on the new io_select_timeout RPC being implemented by
servers.
* hurd/Makefile (user-interfaces): Add io_reply and io_request.
* hurd/hurdselect.c: Include <sys/time.h>, <hurd/io_request.h> and <limits.h>.
(_hurd_select): Replace the call to __io_select with either __io_select_request
or __io_select_timeout_request, depending on the timeout. Count the number of
ready descriptors (replies for which at least one type bit is set). Implement
the timeout locally when there is no file descriptor.
Gbp-Pq: Topic hurd-i386
Gbp-Pq: Name tg-io_select_timeout.diff
Samuel Thibault [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
t/EGREGIOUS-fr
Fix grammar in french translation for EGREGIOUS
Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
Gbp-Pq: Topic hurd-i386
Gbp-Pq: Name tg-EGREGIOUS-fr.diff
Samuel Thibault [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
Correction traduction « Computer bought the farm »
* po/fr.po: Fix EIEIO french translation.
Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
Gbp-Pq: Topic hurd-i386
Gbp-Pq: Name tg-EIEIO-fr.diff
Samuel Thibault [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
Allow unknown root directory.
To be efficient, the remap translator simply returns ports from the underlying
filesystem, and thus the root directory found through browsing '..' is the
underlying root, not the remap root. This should not be a reason for getcwd to
fail.
* sysdeps/mach/hurd/getcwd.c (_hurd_canonicalize_directory_name_internal): Do
not remove the heading slash if we got an unknown root directory.
(__getcwd): Do not fail with EGRATUITOUS if we got an unknown root directory.
Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
Gbp-Pq: Topic hurd-i386
Gbp-Pq: Name tg-remap_getcwd.diff
Samuel Thibault [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
Workaround to add IPv6 support to getifaddrs
ifreq only contains sockaddr structures, which are not big enough for
IPv6 addresses. This takes another, ugly, approach, by parsing fsysopts
/servers/socket/2 options...
Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
Gbp-Pq: Topic hurd-i386
Gbp-Pq: Name tg-ifaddrs_v6.diff
Samuel Thibault [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
Fix sbrk in PIE binaries
In PIE mode, the program gets loaded at very low address, and thus _end is very
low, just before libraries, and thus initializing the brk to it does not make
sense, since there is no room left there. Hardcode the brk to 0x8000000 for now
as a workaround.
Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
Gbp-Pq: Topic hurd-i386
Gbp-Pq: Name tg-pie-sbrk.diff
GNU Libc Maintainers [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
tg-setitimer
Fix Hurd implementation of setitimer.
The preemptor sigcode doesn't match since the POSIX sigcode SI_TIMER is
used when SIGALRM is sent. In addition, The inline version of
hurd_preempt_signals doesn't update _hurdsig_preempted_set. For these
reasons, the preemptor would be skipped by post_signal.
* sysdeps/mach/hurd/setitimer.c (setitimer_locked): Fix preemptor setup.
Gbp-Pq: Topic hurd-i386
Gbp-Pq: Name tg-setitimer.diff
GNU Libc Maintainers [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
tg-single-select-timeout
commit
fffcbbb0b5ff8864086f7b58fdbb8aa4c71943d0
Author: Richard Braun <rbraun@sceen.net>
Date: Mon Dec 17 09:57:41 2012 +0000
Fix _hurd_select for single fd sets
The function attempts to optimize this case by performing one IPC system call
with the timeout included among the parameters, but in the absence of a reply,
it will call mach_msg again with the same timeout later, effectively doubling
the total timeout of the select/poll call.
Remove this optimization for the time being.
* hurd/hurdselect.c (_hurd_select): Always call __io_select with no timeout.
Gbp-Pq: Topic hurd-i386
Gbp-Pq: Name tg-single-select-timeout.diff
GNU Libc Maintainers [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
tg-hurdsig-boot-fix
2012-09-05 Richard Braun <rbraun@sceen.net>
* hurd/hurdsig.c (sigstate_is_global_rcv): Do not return true
if _HURD_GLOBAL_SIGSTATE is null.
Gbp-Pq: Topic hurd-i386
Gbp-Pq: Name tg-hurdsig-boot-fix.diff
GNU Libc Maintainers [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
local-usr
Upstream uses prefix=/ while we use prefix=/usr
Gbp-Pq: Topic hurd-i386
Gbp-Pq: Name local-usr.diff
GNU Libc Maintainers [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
libpthread_version
This dates when libpthread was moved to glibc and some features were added.
2.13-31/38/39 dates when the global signal disposition call was added.
TODO: _DEBIAN_ in versions however pose problem. Remove the _DEBIAN_ version
once packages are rebuilt against 2.21.
Gbp-Pq: Topic hurd-i386
Gbp-Pq: Name libpthread_version.diff
Samuel Thibault [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
t/hooks
Add link rules to sort hooks, otherwise they are not properly recorded
2012-04-21 Samuel Thibault <samuel.thibault@ens-lyon.org>
* Makerules (shlib.lds): Add hurd hooks sorting rules.
Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
Gbp-Pq: Topic hurd-i386
Gbp-Pq: Name tg-hooks.diff
Jeremie Koenig [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
Small signal fixes
22e7268 Hurd signals: fix sigwait for pending signals
da8bf5e Hurd signals: clear the pending mask in fork and spawn
8e87205 Hurd signals: don't drop blocked ignored signals
Gbp-Pq: Topic hurd-i386
Gbp-Pq: Name tg-hurdsig-fixes-2.diff
Jeremie Koenig [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
implement SA_SIGINFO signal handlers.
52baaca Hurd signals: Copy bits/sigaction.h
4232c66 Hurd signals: SA_SIGINFO support
1831cfe Hurd signals: Use POSIX sigcodes
Gbp-Pq: Topic hurd-i386
Gbp-Pq: Name tg-hurdsig-SA_SIGINFO.diff
GNU Libc Maintainers [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
local-hurdsig-global-dispositions-version
jkoenig's work on signals
2.13-19 dates when the global signal disposition call was added.
TODO: _DEBIAN_ in versions however pose problem. Remove the _DEBIAN_ version
once packages are rebuilt against 2.21.
Gbp-Pq: Topic hurd-i386
Gbp-Pq: Name local-hurdsig-global-dispositions-version.diff
GNU Libc Maintainers [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
Global signal dispositions.
Although they should not change the
default behaviors of signals for cthread programs, these patches add
new functions which can be used by libpthread to enable
POSIX-conforming behavior of signals on a per-thread basis.
YYYY-MM-DD Jeremie Koenig <jk@jk.fr.eu.org>
e407ae3 Hurd signals: implement global signal dispositions
38eb4b3 Hurd signals: provide a sigstate destructor
344dfd6 Hurd signals: fix sigwait() for global signals
fb055f2 Hurd signals: fix global untraced signals.
YYYY-MM-DD Thomas Schwinge <thomas@codesourcery.com>
* sysdeps/mach/hurd/fork.c (__fork): In the child, reinitialize
the global sigstate's lock.
This is work in progress.
This cures an issue that would very rarely cause a deadlock in the child
in fork, tries to unlock ss' critical section lock at the end of fork.
This will typically (always?) be observed in /bin/sh, which is not
surprising as that is the foremost caller of fork.
To reproduce an intermediate state, add an endless loop if
_hurd_global_sigstate is locked after __proc_dostop (cast through
volatile); that is, while still being in the fork's parent process.
When that triggers (use the libtool testsuite), the signal thread has
already locked ss (which is _hurd_global_sigstate), and is stuck at
hurdsig.c:685 in post_signal, trying to lock _hurd_siglock (which the
main thread already has locked and keeps locked until after
__task_create). This is the case that ss->thread == MACH_PORT_NULL, that
is, a global signal. In the main thread, between __proc_dostop and
__task_create is the __thread_abort call on the signal thread which would
abort any current kernel operation (but leave ss locked). Later in fork,
in the parent, when _hurd_siglock is unlocked in fork, the parent's
signal thread can proceed and will unlock eventually the global sigstate.
In the client, _hurd_siglock will likewise be unlocked, but the global
sigstate never will be, as the client's signal thread has been configured
to restart execution from _hurd_msgport_receive. Thus, when the child
tries to unlock ss' critical section lock at the end of fork, it will
first lock the global sigstate, will spin trying to lock it, which can
never be successful, and we get our deadlock.
Options seem to be:
* Move the locking of _hurd_siglock earlier in post_signal -- but that
may generally impact performance, if this locking isn't generally
needed anyway?
On the other hand, would it actually make sense to wait here until we
are not any longer in a critical section (which is meant to disable
signal delivery anyway (but not for preempted signals?))?
* Clear the global sigstate in the fork's child with the rationale that
we're anyway restarting the signal thread from a clean state. This
has now been implemented.
Why has this problem not been observed before Jérémie's patches? (Or has
it? Perhaps even more rarely?) In _S_msg_sig_post, the signal is now
posted to a *global receiver thread*, whereas previously it was posted to
the *designated signal-receiving thread*. The latter one was in a
critical section in fork, so didn't try to handle the signal until after
leaving the critical section? (Not completely analyzed and verified.)
Another question is what the signal is that is being received
during/around the time __proc_dostop executes.
Gbp-Pq: Topic hurd-i386
Gbp-Pq: Name tg-hurdsig-global-dispositions.diff
Jeremie Koenig [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
Signal code refactoring.
These patches should not change the current
behavior, although they do fix a few minor bugs which were made
apparent in the process. They are unchanged from my previous post
earlier this month.
34f5960 _hurd_internal_post_signal: Split into more functions
420eec9 _hurd_internal_post_signal: Scope variables more restrictively
1f5accd _hurd_internal_post_signal: Split out inner functions
1bb0a1d Hurd signals: refactor check_pending_signals
1764465 Hurd signals: reindent
28473d2 Hurd signals: make sigsuspend POSIX-conformant.
26d091a Hurd signals: fix uninitialized value.
Gbp-Pq: Topic hurd-i386
Gbp-Pq: Name tg-hurdsig-fixes.diff
GNU Libc Maintainers [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
local-madvise_warn
Do not warn about madvise not being implemented. It does not have any real
semantic anyway, and that brings some -Werror FTBFS.
Gbp-Pq: Topic hurd-i386
Gbp-Pq: Name local-madvise_warn.diff
GNU Libc Maintainers [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
local-ED
This is a long funny story, but even if it's standard-compliant, it poses too
many problems.
Gbp-Pq: Topic hurd-i386
Gbp-Pq: Name local-ED.diff
Samuel Thibault [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
Add -lmachuser -lhurduser to libc.so on GNU/Hurd.
http://lists.gnu.org/archive/html/bug-hurd/2011-03/msg00112.html
2011-03-29 Samuel Thibault <samuel.thibault@ens-lyon.org>
* Makerules ($(inst_libdir)/libc.so): Add -lmachuser -lhurduser to
libc.so on GNU/Hurd.
It's still unclear what we want to aim for.
Gbp-Pq: Topic hurd-i386
Gbp-Pq: Name tg-mach-hurd-link.diff
GNU Libc Maintainers [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
hurd: SCM_CREDS support
Svante Signell <svante.signell@gmail.com>
Samuel Thibault <samuel.thibault@ens-lyon.org>
* sysdeps/mach/hurd/sendmsg.c (__libc_sendmsg): On SCM_CREDS
control messages, record uids, pass a rendez-vous port in the
control message, and call __auth_user_authenticate_request to
make auth send credentials on that port. Do not wait for a
reply.
* sysdeps/mach/hurd/recvmsg.c (contains_uid, contains_gid,
check_auth): New functions.
(__libc_recvmsg): On SCM_CREDS control messages, call check_auth
to check the passed credentials thanks to the answer from the
auth server.
* hurd/Makefile (user-interfaces): Add auth_request and
auth_reply.
Gbp-Pq: Topic hurd-i386
Gbp-Pq: Name tg-sendmsg-SCM_CREDS.diff
Emilio Pozuelo Monfort [Sat, 17 Jul 2010 20:09:13 +0000 (22:09 +0200)]
Add support to send file descriptors over Unix sockets
Gbp-Pq: Topic hurd-i386
Gbp-Pq: Name tg-sendmsg-SCM_RIGHTS.diff
Samuel Thibault [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
Fix installation of locales-all
Dirty hack to fix installation of locales-all: instead of just locking the
archive extension (which is not supported on hurd-i386), lock it all.
Gbp-Pq: Topic hurd-i386
Gbp-Pq: Name tg-locarchive.diff
GNU Libc Maintainers [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
local-disable-ioctls
struct ortentry and struct ifalias req are actually not defined
struct arpreq is defined, but can not be passed to an ioctl on the Hurd.
so let's make packages not believe these are available.
Gbp-Pq: Topic hurd-i386
Gbp-Pq: Name local-disable-ioctls.diff
Samuel Thibault [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
Allow the kernel to start earlier than VM_MAX_ADDRESS
A bit hackish.
Gbp-Pq: Topic hurd-i386
Gbp-Pq: Name tg-bigmem.diff
Samuel Thibault [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
The critical section lock _can_ be held in these place.
At least since hurd_thread_cancel can be called by another thread and lock our
critical lock.
http://bugs.debian.org/46859
“
Thomas suggested that there is no need to take the critical section
lock. I believe that taking the critical section lock is necessary to
prevent the target thread from entering a signal handler. Roland will
look into the problem.
”
Taking the critical section lock makes these assertions bogus.
It happens that hurd_thread_cancel is only called from libports and inside
/hurd/term so this is rare in practice.
A reproducer can be found here:
http://lists.gnu.org/archive/html/bug-hurd/2014-05/msg00025.html
2006-08-05 Samuel Thibault <samuel.thibault@ens-lyon.org>
* hurd/thread-cancel.c (hurd_thread_cancel): Do not assert that
`&ss->critical_section_lock' is unlocked.
* sysdeps/mach/hurd/jmp-unwind.c (_longjmp_unwind): Likewise, and take
critical section lock before taking the sigstate lock.
* sysdeps/mach/hurd/spawni.c (__spawni): Likewise.
Gbp-Pq: Topic hurd-i386
Gbp-Pq: Name tg-thread-cancel.diff
Marcus Brinkmann [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
Implement SysV shared memory for GNU/Hurd.
2005-07-11 Marcus Brinkmann <marcus@gnu.org>
* hurd/Makefile (routines): Add sysvshm.
(distribute): Add sysvshm.h.
* hurd/sysvshm.h: New file.
* hurd/sysvshm.c: New file.
* sysdeps/mach/hurd/bits/stat.h (S_IMMAP0): New macro.
(S_ISPARE): Unset the S_IMMAP0 flag.
* sysdeps/mach/hurd/ftok.c: New file.
* sysdeps/mach/hurd/shmat.c: New file.
* sysdeps/mach/hurd/shmctl.c: New file.
* sysdeps/mach/hurd/shmdt.c: New file.
* sysdeps/mach/hurd/bits/posix_opt.h: Define _XOPEN_SHM to 1.
Gbp-Pq: Topic hurd-i386
Gbp-Pq: Name tg-sysvshm.diff
Thomas Schwinge [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
getcontext, makecontext, setcontext, swapcontext
Adapted from the Linux x86 functions.
Not thoroughly tested, but manual testing as well as glibc tests look fine, and
manual -lpthread testing also looks fine (within the given bounds for a new
stack to be used with makecontext).
Gbp-Pq: Topic hurd-i386
Gbp-Pq: Name tg-context_functions.diff
GNU Libc Maintainers [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
local-enable-ldconfig
# DP: Description: Enable ldconfig and such on hurd-i386
# DP: Author: Jeff Bailey <jbailey@nisa.net>
# DP: Related Bugs: #309489
# DP: Upstream status: Not submitted
# DP: Status Details: Upstream disagrees with this patch, but I'm
# DP: putting it in so that we have expected Debian behaviour on the
# DP: Hurd. We should review this when the ELF standard supports runpath.
# DP: Date: 08 Apr 2003
Gbp-Pq: Topic hurd-i386
Gbp-Pq: Name local-enable-ldconfig.diff
GNU Libc Maintainers [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
local-inlining
Increase the maximal overall growth of the compilation unit caused
by inlining for dl-reloc.c on hppa. This remove some warnings and
strangely it reduces the size of the final binary.
Gbp-Pq: Topic hppa
Gbp-Pq: Name local-inlining.diff
GNU Libc Maintainers [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
local-arm-futex
Gbp-Pq: Topic arm
Gbp-Pq: Name local-arm-futex.diff
GNU Libc Maintainers [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
unsubmitted-ldso-multilib
Gbp-Pq: Topic arm
Gbp-Pq: Name unsubmitted-ldso-multilib.diff
GNU Libc Maintainers [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
local-vfp-sysdeps
Gbp-Pq: Topic arm
Gbp-Pq: Name local-vfp-sysdeps.diff
GNU Libc Maintainers [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
local-soname-hack
For backward compatibility with armhf binaries built with the
old linker SONAME, we need to fake out the linker to believe
the new is the old, until such a point as everything is rebuilt
Gbp-Pq: Topic arm
Gbp-Pq: Name local-soname-hack.diff
GNU Libc Maintainers [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
unsubmitted-ldso-abi-check
Gbp-Pq: Topic arm
Gbp-Pq: Name unsubmitted-ldso-abi-check.diff
GNU Libc Maintainers [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
unsubmitted-ldconfig-cache-abi
Gbp-Pq: Topic arm
Gbp-Pq: Name unsubmitted-ldconfig-cache-abi.diff
GNU Libc Maintainers [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
local-sigaction
Gbp-Pq: Topic arm
Gbp-Pq: Name local-sigaction.diff
GNU Libc Maintainers [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
submitted-makecontext
2018-03-01 Aurelien Jarno <aurelien@aurel32.net>
[BZ #22910]
* sysdeps/unix/sysv/linux/alpha/setcontext.S (__startcontext): Set
up CFI directive to forbid further backtracing.
Gbp-Pq: Topic alpha
Gbp-Pq: Name submitted-makecontext.diff
GNU Libc Maintainers [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
submitted-fts64
2016-03-22 Aurelien Jarno <aurelien@aurel32.net>
* sysdeps/unix/sysv/linux/alpha/fts.c: New file.
* sysdeps/unix/sysv/linux/alpha/fts64.c: New file.
Gbp-Pq: Topic alpha
Gbp-Pq: Name submitted-fts64.diff
GNU Libc Maintainers [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
local-string-functions
The alpha assembly version of various string functions do not work
correctly on some corner cases, and thus doesn't pass the testsuite.
This patch removes them.
Gbp-Pq: Topic alpha
Gbp-Pq: Name local-string-functions.diff
GNU Libc Maintainers [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
submitted-dl-support
older versions of glibc would build dl-sysdep as shared-only and dl-support as
static-only. alpha hooks in a cache variable via dl-auxv.h. newer versions of
glibc build dl-sysdep as both shared and static which means we now have symbol
duplication for static builds with dl-sysdep and dl-support. since dl-sysdep
is both shared/static, there is no point in hooking dl-support anymore, so we
can punt it.
Gbp-Pq: Topic alpha
Gbp-Pq: Name submitted-dl-support.diff
GNU Libc Maintainers [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
local-gcc4.1
2006-05-30 Falk Hueffner <falk@debian.org>
* sysdeps/unix/sysv/linux/alpha/ioperm.c: force the architecture
to ev6 in assembly code.
{standard input}: Assembler messages:
{standard input}:341: Error: macro requires $at register while noat in effect
{standard input}:374: Error: macro requires $at register while noat in effect
{standard input}:438: Error: macro requires $at register while noat in effect
{standard input}:471: Error: macro requires $at register while noat in effect
make[3]: *** [/tmp/buildd/glibc-2.3.6/build-tree/alpha-libc/misc/ioperm.o] Error 1
Hrm. gcc puts .arch ev4 into the .s, and this overrides -mev6 for as.
I cannot really think of anything better than
Gbp-Pq: Topic alpha
Gbp-Pq: Name local-gcc4.1.diff
GNU Libc Maintainers [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
submitted-it_IT-thousands_sep
2014-05-05 Aurelien Jarno <aurelien@aurel32.net>
* locales/it_IT: Use same grouping in LC_NUMERIC as in LC_MONETARY.
Gbp-Pq: Topic localedata
Gbp-Pq: Name submitted-it_IT-thousands_sep.diff
GNU Libc Maintainers [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
submitted-es_MX-decimal_point
2012-06-06 Aurelien Jarno <aurelien@aurel32.net>
* locales/es_MX (LC_MONETARY): Set mon_thousands_sep to space
( ).
Gbp-Pq: Topic localedata
Gbp-Pq: Name submitted-es_MX-decimal_point.diff
GNU Libc Maintainers [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
submitted-en_AU-date_fmt
2012-04-29 Aurelien Jarno <aurelien@aurel32.net>
* locales/en_AU: Change date_fmt to match Australian standards.
Gbp-Pq: Topic localedata
Gbp-Pq: Name submitted-en_AU-date_fmt.diff
GNU Libc Maintainers [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
locale-C
Gbp-Pq: Topic localedata
Gbp-Pq: Name locale-C.diff
GNU Libc Maintainers [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
submitted-bz9725-locale-sv_SE
Gbp-Pq: Topic localedata
Gbp-Pq: Name submitted-bz9725-locale-sv_SE.diff
GNU Libc Maintainers [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
tailor-iso14651_t1
# All lines beginning with `# DP:' are a description of the patch.
# DP: Description: Rewrite collation rules to include iso14651_t1
# DP: ar_SA cs_CZ et_EE hr_HR lt_LT pl_PL sl_SI tr_TR: not
# DP: submitted yet.
# DP: Related bugs: BZ664 BZ672
# DP: Dpatch author: Denis Barbier
# DP: Patch author: Denis Barbier, Pablo Saratxaga
# DP: Upstream status: BZ664 BZ672
# DP: Date: 2006-01-18
2008-08-08 Aurelien Jarno <aurel32@debian.org>
Loosy update for glibc 2.8.
2007-05-25 Pierre Habouzit <madcoder@debian.org>
Loosy update for glibc 2.6.
2005-01-16 Denis Barbier <barbier@linuxfr.org>
[BZ #672]
Replace current collation rules by including iso14651_t1 and adding
extra rules if needed. There should be no noticeable changes in
sorted text. only ligatures and ignoreable characters have modified
weights.
* locales/da_DK: Likewise.
Gbp-Pq: Topic localedata
Gbp-Pq: Name tailor-iso14651_t1.diff
GNU Libc Maintainers [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
locale-zh_TW
See BTS #352600.
Not submitted yet.
Gbp-Pq: Topic localedata
Gbp-Pq: Name locale-zh_TW.diff
GNU Libc Maintainers [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
locale-en_DK
# All lines beginning with `# DP:' are a description of the patch.
# DP: Description: Improve en_DK and add en_DK.ISO-8859-15 to SUPPORTED
# DP: This locale is only useful to provide ISO8601 date formats.
# DP: Related bugs: #323159
# DP: Dpatch author: Denis Barbier
# DP: Patch author: Jakob Bohm <jbj@image.dk>
# DP: Upstream status: not submitted
# DP: Date: 2006-01-16
Gbp-Pq: Topic localedata
Gbp-Pq: Name locale-en_DK.diff
GNU Libc Maintainers [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
locales-fr
# All lines beginning with `# DP:' are a description of the patch.
# DP: Description: Various fixes for all French locales
# DP: Related bugs: #248377 #351786 #345481
# DP: Dpatch author: Denis Barbier <barbier@debian.org>
# DP: Patch author: Denis Barbier
# DP: Upstream status: not submitted
# DP: Date: 2006-01-10
Gbp-Pq: Topic localedata
Gbp-Pq: Name locales-fr.diff
GNU Libc Maintainers [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
locales_CH
# All lines beginning with `# DP:' are a description of the patch.
# DP: Description: LC_NUMERIC: copy de_CH into it_CH
# DP: Dpatch author: Denis Barbier <barbier@debian.org>
# DP: Patch author: Denis Barbier
# DP: Upstream status: not submitted
# DP: Date: 2006-10-02
Gbp-Pq: Topic localedata
Gbp-Pq: Name locales_CH.diff
GNU Libc Maintainers [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
fo_FO-date_fmt
# All lines beginning with `# DP:' are a description of the patch.
# DP: Description: Fix d_t_fmt and date_fmt in fo_FO
# DP: Related bugs: #307194
# DP: Dpatch author: Denis Barbier
# DP: Patch author: Jacob Sparre Andersen <sparre@nbi.dk>
# DP: Upstream status: not submitted
# DP: Date: 2006-01-10
Gbp-Pq: Topic localedata
Gbp-Pq: Name fo_FO-date_fmt.diff
GNU Libc Maintainers [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
locale-ku_TR
# DP: Description: Please add Kurdish locale
# DP: Related bugs: BZ870
# DP: Dpatch author: Denis Barbier <barbier@debian.org>
# DP: Patch author: Kader DILSIZ, Pablo Saratxaga
# DP: Upstream status: Version 0.1 submitted in the original bugreport
# DP: has been committed, this new version has been sent just after.
# DP: Date: 2006-01-06
Gbp-Pq: Topic localedata
Gbp-Pq: Name locale-ku_TR.diff
GNU Libc Maintainers [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
locale-eu_FR
# DP: Description: #257840: locales: Please add the eu_FR locale
# DP: Related bugs: #257840
# DP: Dpatch author: GOTO Masanori <gotom@debian.org>
# DP: Patch author: Christian Perrier <bubulle@debian.org>
# DP: Upstream status: Not submitted
# DP: Status Details: sending upstream
# DP: Date: 2004-07-31
Gbp-Pq: Topic localedata
Gbp-Pq: Name locale-eu_FR.diff
GNU Libc Maintainers [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
supported
# All lines beginning with `# DP:' are a description of the patch.
# DP: Description: Add several locales to localedata.SUPPORTED
# DP: - ru_RU.CP1251 was requested in #225516
# DP: - uz_UZ.UTF-8 was clearly missing, uz_UZ had no UTF-8 variant
# DP: - da_DK.ISO-8859-15, en_GB.ISO-8859-15, en_US.ISO-8859-15, no_NO.UTF-8,
# DP: no_NO and sv_SE.ISO-8859-15 are found in fedora-branch CVS branch.
# DP: Related bugs: #225516 (ru_RU.CP1251)
# DP: Dpatch author: Denis Barbier
# DP: Upstream status: not submitted
# DP: Date: 2006-01-10
Gbp-Pq: Topic localedata
Gbp-Pq: Name supported.diff
GNU Libc Maintainers [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
sort-UTF8-first
Gbp-Pq: Topic localedata
Gbp-Pq: Name sort-UTF8-first.diff
GNU Libc Maintainers [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
local-all-no-archive
Gbp-Pq: Topic localedata
Gbp-Pq: Name local-all-no-archive.diff
GNU Libc Maintainers [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
LC_IDENTIFICATION-optional-fields
In LC_IDENTIFICATION, audience, application and abbreviation keywords
are optional, thus do not report an error if they are not defined.
# DP: Dpatch author: Denis Barbier
# DP: Patch author: Denis Barbier
# DP: Upstream status: not submitted
# DP: Date: 2006-01-08
Gbp-Pq: Topic locale
Gbp-Pq: Name LC_IDENTIFICATION-optional-fields.diff
GNU Libc Maintainers [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
locale-print-LANGUAGE
Comments tell that LANG has to be the first value, and LC_ALL the last
one. Thus LANGUAGE is printed between them.
# DP: Dpatch author: Denis Barbier
# DP: Patch author: Denis Barbier
# DP: Upstream status: not submitted
# DP: Date: 2006-01-08
Gbp-Pq: Topic locale
Gbp-Pq: Name locale-print-LANGUAGE.diff
GNU Libc Maintainers [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
check-unknown-symbols
Check for unknown symbols in collation rules. This is useful to detect
broken locales since unknown symbols are always wrong.
This request has not been submitted upstream yet.
# DP: Dpatch author: Denis Barbier
# DP: Patch author: Denis Barbier
# DP: Upstream status: not submitted
# DP: Date: 2006-01-08
Gbp-Pq: Topic locale
Gbp-Pq: Name check-unknown-symbols.diff
GNU Libc Maintainers [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
git-updates
GIT update of https://sourceware.org/git/glibc.git/release/2.28/master from glibc-2.28
Gbp-Pq: Name git-updates.diff
Aurelien Jarno [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
glibc (2.28-2) unstable; urgency=medium
[ Samuel Thibault ]
* patches/hurd-i386/git-fcntl64.diff: Fix returning value returned by
__f_setlk.
[ Aurelien Jarno ]
* debian/control.in/libc: breaks r-cran-later (<< 0.7.5+dfsg-2), ie
versions built with tinycthread. Closes: #915339.
* debian/patches/git-updates.diff: update from upstream stable branch.
* debian/testsuite-xfail-debian.mk: allow tst-pkey to fail on ppc64el, ppc64
powerpc and powerpcspe as the glibc implementation is still only partial.
Closes: #914997.
* debian/control.in/main: glibc-source: add breaks on cross-toolchain-base
(<< 29~) and cross-toolchain-base-ports (<< 25~) as those packages are not
compatible with glibc 2.28. Closes: #915621.
* debian/testsuite-xfail-debian.mk: whitelist misc/tst-preadvwritev2 and
misc/tst-preadvwritev64v2 on x32. The failing part of those tests is new,
and the it looks like a kernel bug in the compat layer.
* debian/testsuite-xfail-debian.mk: whitelist elf/tst-execstack-needed on
riscv64, it is similar to the already whitelisted test
elf/test-xfail-tst-execstack.
* debian/debhelper.in/locales.postinst: fix regexp checking for installed
locales package. Closes: #903964.
[dgit import unpatched glibc 2.28-2]
Aurelien Jarno [Wed, 5 Dec 2018 18:50:21 +0000 (18:50 +0000)]
Import glibc_2.28-2.debian.tar.xz
[dgit import tarball glibc 2.28-2 glibc_2.28-2.debian.tar.xz]
Aurelien Jarno [Mon, 29 Oct 2018 23:11:37 +0000 (23:11 +0000)]
Import glibc_2.28.orig.tar.xz
[dgit import orig glibc_2.28.orig.tar.xz]