From patchwork Thu May 28 09:22:51 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Florian Weimer X-Patchwork-Id: 39375 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 4DFCB395A839; Thu, 28 May 2020 09:22:56 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 4DFCB395A839 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1590657776; bh=oYCupaSmC57ltExsG/JPbfxqXDG8yzHXfsUmVoSIakc=; h=To:Subject:Date:List-Id:List-Unsubscribe:List-Archive:List-Post: List-Help:List-Subscribe:From:Reply-To:Cc:From; b=JnmlidBWr3mB3hRkFeAibx9RW3LTUUPFJ+vOQ4aYnxdoHqwh7WEGEdsgrj3i0EhP6 Qq4kQfLyMWiTkKfCZJOMDhE3qBGcC+AmfeP1tHFOUoE73LVL1RRfhMgeU6GfVKpKjM 5wQPxNC3ScwjHFm2G6WqOIg/tG3pjMhNAgm7IdAg= X-Original-To: libc-alpha@sourceware.org Delivered-To: libc-alpha@sourceware.org Received: from albireo.enyo.de (albireo.enyo.de [37.24.231.21]) by sourceware.org (Postfix) with ESMTPS id C232B386F46E for ; Thu, 28 May 2020 09:22:53 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org C232B386F46E Received: from [172.17.203.2] (helo=deneb.enyo.de) by albireo.enyo.de with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) id 1jeEkV-0001cL-Ce; Thu, 28 May 2020 09:22:51 +0000 Received: from fw by deneb.enyo.de with local (Exim 4.92) (envelope-from ) id 1jeEkV-00015e-9l; Thu, 28 May 2020 11:22:51 +0200 To: libc-alpha@sourceware.org Subject: [PATCH 1/2] Hurd: Use __sigmask in favor of deprecated sigmask Message-ID: <87zh9smn3a.fsf@totally-fudged-out-message-id> Date: Thu, 28 May 2020 11:22:51 +0200 MIME-Version: 1.0 X-Spam-Status: No, score=-14.1 required=5.0 tests=BAYES_00, GIT_PATCH_0, HEADER_FROM_DIFFERENT_DOMAINS, KAM_DMARC_STATUS, SPF_HELO_NONE, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on server2.sourceware.org X-BeenThere: libc-alpha@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Libc-alpha mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Florian Weimer via Libc-alpha From: Florian Weimer Reply-To: Florian Weimer Cc: commit-hurd@gnu.org Errors-To: libc-alpha-bounces@sourceware.org Sender: "Libc-alpha" This fixes various build errors due to deprecation warnings. Fixes commit 02802fafcf6e11ea3f998f685035ffe568dfddeb ("signal: Deprecate additional legacy signal handling functions"). Reviewed-by: Samuel Thibault --- hurd/catch-signal.c | 10 +++++----- hurd/hurd/sigpreempt.h | 2 +- hurd/hurdfault.h | 2 +- hurd/hurdsig.c | 4 ++-- sysdeps/generic/sigset-cvt-mask.h | 4 ++-- 5 files changed, 11 insertions(+), 11 deletions(-) diff --git a/hurd/catch-signal.c b/hurd/catch-signal.c index 67667443a5..059a8690f6 100644 --- a/hurd/catch-signal.c +++ b/hurd/catch-signal.c @@ -84,7 +84,7 @@ hurd_safe_memset (void *dest, int byte, size_t nbytes) memset (dest, byte, nbytes); return 0; } - return __hurd_catch_signal (sigmask (SIGBUS) | sigmask (SIGSEGV), + return __hurd_catch_signal (__sigmask (SIGBUS) | __sigmask (SIGSEGV), (vm_address_t) dest, (vm_address_t) dest + nbytes, &operate, SIG_ERR); } @@ -98,7 +98,7 @@ hurd_safe_copyout (void *dest, const void *src, size_t nbytes) memcpy (dest, src, nbytes); return 0; } - return __hurd_catch_signal (sigmask (SIGBUS) | sigmask (SIGSEGV), + return __hurd_catch_signal (__sigmask (SIGBUS) | __sigmask (SIGSEGV), (vm_address_t) dest, (vm_address_t) dest + nbytes, &operate, SIG_ERR); } @@ -111,7 +111,7 @@ hurd_safe_copyin (void *dest, const void *src, size_t nbytes) memcpy (dest, src, nbytes); return 0; } - return __hurd_catch_signal (sigmask (SIGBUS) | sigmask (SIGSEGV), + return __hurd_catch_signal (__sigmask (SIGBUS) | __sigmask (SIGSEGV), (vm_address_t) src, (vm_address_t) src + nbytes, &operate, SIG_ERR); } @@ -125,13 +125,13 @@ hurd_safe_memmove (void *dest, const void *src, size_t nbytes) struct hurd_signal_preemptor src_preemptor = { - sigmask (SIGBUS) | sigmask (SIGSEGV), + __sigmask (SIGBUS) | __sigmask (SIGSEGV), (vm_address_t) src, (vm_address_t) src + nbytes, NULL, (sighandler_t) &throw, }; struct hurd_signal_preemptor dest_preemptor = { - sigmask (SIGBUS) | sigmask (SIGSEGV), + __sigmask (SIGBUS) | __sigmask (SIGSEGV), (vm_address_t) dest, (vm_address_t) dest + nbytes, NULL, (sighandler_t) &throw, &src_preemptor diff --git a/hurd/hurd/sigpreempt.h b/hurd/hurd/sigpreempt.h index 2591c472d3..4ab5b1369f 100644 --- a/hurd/hurd/sigpreempt.h +++ b/hurd/hurd/sigpreempt.h @@ -51,7 +51,7 @@ struct hurd_signal_preemptor }; #define HURD_PREEMPT_SIGNAL_P(preemptor, signo, sigcode) \ - (((preemptor)->signals & sigmask (signo)) \ + (((preemptor)->signals & __sigmask (signo)) \ && (sigcode) >= (preemptor)->first && (sigcode) <= (preemptor)->last) diff --git a/hurd/hurdfault.h b/hurd/hurdfault.h index 61ccc785e5..a83717222e 100644 --- a/hurd/hurdfault.h +++ b/hurd/hurdfault.h @@ -43,7 +43,7 @@ extern struct hurd_signal_preemptor _hurdsig_fault_preemptor; #define _hurdsig_catch_memory_fault(object) \ - _hurdsig_catch_fault (sigmask (SIGSEGV) | sigmask (SIGBUS), \ + _hurdsig_catch_fault (__sigmask (SIGSEGV) | __sigmask (SIGBUS), \ (object), (object) + 1) diff --git a/hurd/hurdsig.c b/hurd/hurdsig.c index a2741bb7c8..1d0ec0d19a 100644 --- a/hurd/hurdsig.c +++ b/hurd/hurdsig.c @@ -595,8 +595,8 @@ sigset_t _hurdsig_preempted_set; weak_alias (_hurdsig_preemptors, _hurdsig_preempters) /* Mask of stop signals. */ -#define STOPSIGS (sigmask (SIGTTIN) | sigmask (SIGTTOU) \ - | sigmask (SIGSTOP) | sigmask (SIGTSTP)) +#define STOPSIGS (__sigmask (SIGTTIN) | __sigmask (SIGTTOU) \ + | __sigmask (SIGSTOP) | __sigmask (SIGTSTP)) /* Actual delivery of a single signal. Called with SS unlocked. When the signal is delivered, return SS, locked (or, if SS was originally diff --git a/sysdeps/generic/sigset-cvt-mask.h b/sysdeps/generic/sigset-cvt-mask.h index 16c655d8e9..ad2a4a4337 100644 --- a/sysdeps/generic/sigset-cvt-mask.h +++ b/sysdeps/generic/sigset-cvt-mask.h @@ -37,7 +37,7 @@ sigset_set_old_mask (sigset_t *set, int mask) return -1; for (__sig = 1; __sig < NSIG && __sig <= sizeof (mask) * 8; __sig++) - if (mask & sigmask (__sig)) + if (mask & __sigmask (__sig)) if (__sigaddset (set, __sig) < 0) return -1; } @@ -58,7 +58,7 @@ sigset_get_old_mask (const sigset_t *set) for (sig = 1; sig < NSIG && sig <= sizeof (mask) * 8; sig++) if (__sigismember (set, sig)) - mask |= sigmask (sig); + mask |= __sigmask (sig); return mask; } From patchwork Thu May 28 09:23:20 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Florian Weimer X-Patchwork-Id: 39376 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 5BD1C395C038; Thu, 28 May 2020 09:23:24 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 5BD1C395C038 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1590657804; bh=KF3tj0tzzSy6pY3ycbcBIXjpy+gcVAO9xVMrDMYcWNs=; h=To:Subject:Date:List-Id:List-Unsubscribe:List-Archive:List-Post: List-Help:List-Subscribe:From:Reply-To:Cc:From; b=o5POucAe2bX+89zruJqMKt+ChnrWAYIesABpxbijGPOF/wNP/AAqGY4x3xTE138Bq LdBCiBwkxlIq0Ide7TIo3mkVn6D3nmFzDwkxo1lyoBA4Rp4EEupJYrkeb1hMg/K86P hY3WNuyPcX1r6WNhenqPPxhfsXW9Tm2SwE/Dfh78= X-Original-To: libc-alpha@sourceware.org Delivered-To: libc-alpha@sourceware.org Received: from albireo.enyo.de (albireo.enyo.de [37.24.231.21]) by sourceware.org (Postfix) with ESMTPS id E7B54386F46E for ; Thu, 28 May 2020 09:23:21 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org E7B54386F46E Received: from [172.17.203.2] (helo=deneb.enyo.de) by albireo.enyo.de with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) id 1jeEky-0001dQ-SJ; Thu, 28 May 2020 09:23:20 +0000 Received: from fw by deneb.enyo.de with local (Exim 4.92) (envelope-from ) id 1jeEky-00016F-QP; Thu, 28 May 2020 11:23:20 +0200 To: libc-alpha@sourceware.org Subject: [PATCH 2/2] Hurd: Move internals into wrapper header Message-ID: <87y2pcmn3a.fsf@totally-fudged-out-message-id> Date: Thu, 28 May 2020 11:23:20 +0200 MIME-Version: 1.0 X-Spam-Status: No, score=-14.2 required=5.0 tests=BAYES_00, GIT_PATCH_0, HEADER_FROM_DIFFERENT_DOMAINS, KAM_DMARC_STATUS, KAM_SHORT, SPF_HELO_NONE, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on server2.sourceware.org X-BeenThere: libc-alpha@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Libc-alpha mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Florian Weimer via Libc-alpha From: Florian Weimer Reply-To: Florian Weimer Cc: commit-hurd@gnu.org Errors-To: libc-alpha-bounces@sourceware.org Sender: "Libc-alpha" _hurdsig_preemptors and _hurdsig_preempted_set are not ABI symbols, so do not declare them. HURD_PREEMPT_SIGNAL_P is an implementation detail, so move it as well. Reviewed-by: Samuel Thibault --- hurd/hurd/sigpreempt.h | 10 -------- sysdeps/hurd/include/hurd/sigpreempt.h | 32 ++++++++++++++++++++++++++ 2 files changed, 32 insertions(+), 10 deletions(-) create mode 100644 sysdeps/hurd/include/hurd/sigpreempt.h diff --git a/hurd/hurd/sigpreempt.h b/hurd/hurd/sigpreempt.h index 4ab5b1369f..8cbf66a198 100644 --- a/hurd/hurd/sigpreempt.h +++ b/hurd/hurd/sigpreempt.h @@ -50,16 +50,6 @@ struct hurd_signal_preemptor struct hurd_signal_preemptor *next; /* List structure. */ }; -#define HURD_PREEMPT_SIGNAL_P(preemptor, signo, sigcode) \ - (((preemptor)->signals & __sigmask (signo)) \ - && (sigcode) >= (preemptor)->first && (sigcode) <= (preemptor)->last) - - -/* Signal preemptors applying to all threads; locked by _hurd_siglock. */ -extern struct hurd_signal_preemptor *_hurdsig_preemptors; -extern sigset_t _hurdsig_preempted_set; - - /* The caller must initialize all members of *PREEMPTOR except `next'. The preemptor is registered on the global list. */ void hurd_preempt_signals (struct hurd_signal_preemptor *preemptor); diff --git a/sysdeps/hurd/include/hurd/sigpreempt.h b/sysdeps/hurd/include/hurd/sigpreempt.h new file mode 100644 index 0000000000..fc0fdfd5e8 --- /dev/null +++ b/sysdeps/hurd/include/hurd/sigpreempt.h @@ -0,0 +1,32 @@ +/* Preemption of Hurd signals before POSIX.1 semantics take over. Wrapper. + Copyright (C) 1996-2020 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#ifndef _HURD_SIGPREEMPT_H +# include + +# ifndef _ISOMAC +# define HURD_PREEMPT_SIGNAL_P(preemptor, signo, sigcode) \ + (((preemptor)->signals & __sigmask (signo)) \ + && (sigcode) >= (preemptor)->first && (sigcode) <= (preemptor)->last) + +/* Signal preemptors applying to all threads; locked by _hurd_siglock. */ +extern struct hurd_signal_preemptor *_hurdsig_preemptors; +extern sigset_t _hurdsig_preempted_set; + +# endif /* _ISOMAC */ +#endif /* _HURD_SIGPREEMPT_H */