From patchwork Fri Mar 13 19:48:25 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Adhemerval Zanella X-Patchwork-Id: 38557 X-Patchwork-Delegate: azanella@linux.vnet.ibm.com Return-Path: X-Original-To: libc-alpha@sourceware.org Delivered-To: libc-alpha@sourceware.org Received: from mail-qk1-x743.google.com (mail-qk1-x743.google.com [IPv6:2607:f8b0:4864:20::743]) by sourceware.org (Postfix) with ESMTPS id 60C2D38A2417 for ; Fri, 13 Mar 2020 19:48:34 +0000 (GMT) Received: by mail-qk1-x743.google.com with SMTP id c145so14646855qke.12 for ; Fri, 13 Mar 2020 12:48:34 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:date:message-id:in-reply-to :references; bh=7QDT/Lto/6EklhnPnM4AxkWOinpHohjLRXDGdyuo2Rs=; b=XlhP+6d3dAMrzKmhFSkmmOYHDXTMGwlToW+YKEBfuf9pLqaLrwL6pD4E+2a8sGlbv0 +pn+ktqYCOjNGkw6yRMWtOR9Tlq/kNuU7jUAcuG+kwxq2ofnxu6B/axGpGYej3/lI3wV i217Jr2NNxBod53srU1avdEDECEI1NMDzudzDg6sey7NO+8OPgR+lVI6tjeGCa3XLRl5 l+LAaYNCSrkXQd+WskqV7wm3EppkXA4d/ycIu8bao2G2gc9o88Sp2iFeli1U6RT0ZLki +csKqg6R6MFJct4Vob53PQZo+DUERt2l+axC2CxvBEfzFPHxptyGuxodZFYV4uL6pCrH smTg== X-Gm-Message-State: ANhLgQ1mVTIMUGhn3IhPmjoHCSUIiEX4JsgcRmEbAGGZvMsR0eZH/1Ij ZZldVlBk2y5JvEWKPJd7ofpnc8IRvZU= X-Google-Smtp-Source: ADFU+vvELPR64nIGhQF90KK6pUvxtNiZD+Hq29fgFXBp/NEufy973+eFAqtw59H5gvEGKAwX0qNerw== X-Received: by 2002:a37:9f58:: with SMTP id i85mr14379271qke.196.1584128913686; Fri, 13 Mar 2020 12:48:33 -0700 (PDT) Received: from localhost.localdomain ([177.194.48.209]) by smtp.googlemail.com with ESMTPSA id r10sm29497900qkm.23.2020.03.13.12.48.32 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 13 Mar 2020 12:48:33 -0700 (PDT) From: Adhemerval Zanella To: libc-alpha@sourceware.org Subject: [PATCH 2/4] ia64: Remove sigprocmask/sigblock objects from libpthread Date: Fri, 13 Mar 2020 16:48:25 -0300 Message-Id: <20200313194827.4467-2-adhemerval.zanella@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20200313194827.4467-1-adhemerval.zanella@linaro.org> References: <20200313194827.4467-1-adhemerval.zanella@linaro.org> X-Spam-Status: No, score=-25.2 required=5.0 tests=DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, GIT_PATCH_1, GIT_PATCH_2, GIT_PATCH_3, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS 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-List-Received-Date: Fri, 13 Mar 2020 19:48:35 -0000 It is required because __libc_unwind_longjmp (used on thread cancellation) calls __sigprocmask. Replace with a direct call. The sigblock was never exported and thus unused. Checked on cross build for ia64-linux-gnu. --- sysdeps/ia64/nptl/Makefile | 4 ++-- sysdeps/unix/sysv/linux/ia64/unwind_longjmp.c | 3 +-- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/sysdeps/ia64/nptl/Makefile b/sysdeps/ia64/nptl/Makefile index b7d87c37c8..d34cb27699 100644 --- a/sysdeps/ia64/nptl/Makefile +++ b/sysdeps/ia64/nptl/Makefile @@ -20,6 +20,6 @@ gen-as-const-headers += tcb-offsets.sym endif ifeq ($(subdir),nptl) -libpthread-routines += sysdep sigblock sigprocmask -libpthread-shared-only-routines += sysdep sigblock sigprocmask +libpthread-routines += sysdep +libpthread-shared-only-routines += sysdep endif diff --git a/sysdeps/unix/sysv/linux/ia64/unwind_longjmp.c b/sysdeps/unix/sysv/linux/ia64/unwind_longjmp.c index 93d1d66dd0..d9ed942963 100644 --- a/sysdeps/unix/sysv/linux/ia64/unwind_longjmp.c +++ b/sysdeps/unix/sysv/linux/ia64/unwind_longjmp.c @@ -34,8 +34,7 @@ __libc_unwind_longjmp (sigjmp_buf env, int val) if (env[0].__mask_was_saved) /* Restore the saved signal mask. */ - (void) __sigprocmask (SIG_SETMASK, &env[0].__saved_mask, - (sigset_t *) NULL); + __libc_signal_restore_set (&env[0].__saved_mask); /* Call the machine-dependent function to restore machine state. */ __sigstack_longjmp (env[0].__jmpbuf, val ?: 1);