From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-0.8 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id D5A9DC06508 for ; Tue, 11 Jun 2019 15:46:21 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id B83212089E for ; Tue, 11 Jun 2019 15:46:21 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2405366AbfFKPqQ convert rfc822-to-8bit (ORCPT ); Tue, 11 Jun 2019 11:46:16 -0400 Received: from eu-smtp-delivery-151.mimecast.com ([207.82.80.151]:42504 "EHLO eu-smtp-delivery-151.mimecast.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2405358AbfFKPqQ (ORCPT ); Tue, 11 Jun 2019 11:46:16 -0400 Received: from AcuMS.aculab.com (156.67.243.126 [156.67.243.126]) (Using TLS) by relay.mimecast.com with ESMTP id uk-mta-136-uZnrwUCgOQuJY1Gr7kFh-Q-1; Tue, 11 Jun 2019 16:46:13 +0100 Received: from AcuMS.Aculab.com (fd9f:af1c:a25b::d117) by AcuMS.aculab.com (fd9f:af1c:a25b::d117) with Microsoft SMTP Server (TLS) id 15.0.1347.2; Tue, 11 Jun 2019 16:46:11 +0100 Received: from AcuMS.Aculab.com ([fe80::43c:695e:880f:8750]) by AcuMS.aculab.com ([fe80::43c:695e:880f:8750%12]) with mapi id 15.00.1347.000; Tue, 11 Jun 2019 16:46:11 +0100 From: David Laight To: "'Eric W. Biederman'" , 'Oleg Nesterov' CC: 'Andrew Morton' , 'Deepa Dinamani' , "'linux-kernel@vger.kernel.org'" , "'arnd@arndb.de'" , "'dbueso@suse.de'" , "'axboe@kernel.dk'" , "'dave@stgolabs.net'" , "'e@80x24.org'" , "'jbaron@akamai.com'" , "'linux-fsdevel@vger.kernel.org'" , "'linux-aio@kvack.org'" , "'omar.kilani@gmail.com'" , "'tglx@linutronix.de'" , 'Al Viro' , 'Linus Torvalds' , "'linux-arch@vger.kernel.org'" Subject: RE: [RFC PATCH 1/5] signal: Teach sigsuspend to use set_user_sigmask Thread-Topic: [RFC PATCH 1/5] signal: Teach sigsuspend to use set_user_sigmask Thread-Index: AQHVH9JWknGdQ9+D0UeylJNmvFzQKKaWJ31QgABvBOA= Date: Tue, 11 Jun 2019 15:46:11 +0000 Message-ID: <05ffd0f434c64262aa767db81ad75ac1@AcuMS.aculab.com> References: <20190522032144.10995-1-deepa.kernel@gmail.com> <20190529161157.GA27659@redhat.com> <20190604134117.GA29963@redhat.com> <20190606140814.GA13440@redhat.com> <87k1dxaxcl.fsf_-_@xmission.com> <87ef45axa4.fsf_-_@xmission.com> <20190610162244.GB8127@redhat.com> <87lfy96sta.fsf@xmission.com> <9199239a450d4ea397783ccf98742220@AcuMS.aculab.com> In-Reply-To: <9199239a450d4ea397783ccf98742220@AcuMS.aculab.com> Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-exchange-transport-fromentityheader: Hosted x-originating-ip: [10.202.205.107] MIME-Version: 1.0 X-MC-Unique: uZnrwUCgOQuJY1Gr7kFh-Q-1 X-Mimecast-Spam-Score: 0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8BIT Sender: linux-fsdevel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-fsdevel@vger.kernel.org From: David Laight > Sent: 11 June 2019 10:52 ... > FWIW is ERESTARTNOHAND actually sane here? > If I've used setitimer() to get SIGALARM generated every second I'd > expect select() to return EINTR every second even if I don't > have a SIGALARM handler? Actually no - after sigset(SIGALRM, SIG_IGN) I'd expect absolutely nothing to happen when kill(pid, SIGALRM) is called. However if I run: struct itimerval itimerval = {{1, 0}, {1, 0}}; setitimer(ITIMER_REAL, &itimerval, NULL); sigset(SIGALRM, SIG_IGN); poll(0, 0, big_timeout); I see (with strace) poll() repeatedly returning ERESTART_RESTARTBLOCK and being restarted. Replacing poll() with pselect() returns ERESTARTNOHAND. (In both cases the timeout must be updated since the application does see the timeout.) I'm sure other unix kernels completely ignore signals set to SIG_IGN. So this restart dance just isn't needed. David - Registered Address Lakeside, Bramley Road, Mount Farm, Milton Keynes, MK1 1PT, UK Registration No: 1397386 (Wales)