From patchwork Thu Jan 8 22:29:07 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Roland McGrath X-Patchwork-Id: 4578 Received: (qmail 22268 invoked by alias); 8 Jan 2015 22:29:12 -0000 Mailing-List: contact libc-alpha-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: libc-alpha-owner@sourceware.org Delivered-To: mailing list libc-alpha@sourceware.org Received: (qmail 22250 invoked by uid 89); 8 Jan 2015 22:29:11 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-2.2 required=5.0 tests=AWL, BAYES_00 autolearn=ham version=3.3.2 X-HELO: topped-with-meat.com MIME-Version: 1.0 From: Roland McGrath To: "GNU C. Library" Subject: [COMMITTED PATCH] NPTL: Fix generic pthread_sigmask. Message-Id: <20150108222908.06C0F2C3BC0@topped-with-meat.com> Date: Thu, 8 Jan 2015 14:29:07 -0800 (PST) X-CMAE-Score: 0 X-CMAE-Analysis: v=2.1 cv=SvUDtp+0 c=1 sm=1 tr=0 a=WkljmVdYkabdwxfqvArNOQ==:117 a=14OXPxybAAAA:8 a=kj9zAlcOel0A:10 a=hOe2yjtxAAAA:8 a=jvavcbvD9qdUa2opnv4A:9 a=CjuIK1q_8ugA:10 Fixes the build of libpthread.so on non-Linux. (Also some incidental sanity-checking with the #error.) No effect on existing configurations. Thanks, Roland * nptl/pthread_sigmask.c [SIGCANCEL || SIGTIMER || SIGSETXID]: #error. (pthread_sigmask): Call sigprocmask, not __sigprocmask. --- a/nptl/pthread_sigmask.c +++ b/nptl/pthread_sigmask.c @@ -18,14 +18,18 @@ #include #include +#include +#if defined SIGCANCEL || defined SIGTIMER || defined SIGSETXID +# error "This implementation assumes no internal-only signal numbers." +#endif int pthread_sigmask (int how, const sigset_t *newmask, sigset_t *oldmask) { /* Here we assume that sigprocmask actually does everything right. The only difference is the return value protocol. */ - int result = __sigprocmask (how, newmask, oldmask); + int result = sigprocmask (how, newmask, oldmask); if (result < 0) result = errno; return result;