From nobody Fri Apr 14 13:33:42 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Pycq60lQrz45FPV; Fri, 14 Apr 2023 13:33:54 +0000 (UTC) (envelope-from kevans@freebsd.org) Received: from smtp.freebsd.org (smtp.freebsd.org [IPv6:2610:1c1:1:606c::24b:4]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "smtp.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Pycq56X5qz40w7; Fri, 14 Apr 2023 13:33:53 +0000 (UTC) (envelope-from kevans@freebsd.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681479233; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=8UqxX0sbAZIEGwY1/dMgMU4D5LIet0nRYGIVn4sc+wc=; b=o2LskKXCyF9L5g3oTTw0Ut+0gqr2rXAkrsaLhncMk3OJdSVTXcjZ3zHfpfFDxchAgyh6hj ZMDJKt9SnGnz0OPAqYh15mVc6jZMhzSSUEqrYg1TcG+qHQ7BZo1FfN9GeUHOlH3xFWxVuX +W72UiIo+SQaJKZGmB1J5AVpR6tUv4qUP+ZFiDOaBtDaS/6FvKfcEotAINLm12bBtP7Ehc qDxvoi7PJqjhfteS2dri3oUYMngaCVLz7/8TIDfRWoGgZc6GXXoues4Ivd2dpb6FVD37Ow lETH/ogylyRuvDTE7RAaNOCojdUNV22I2t4kfzPbuA59uhwBlWhnpPgSBfvU2A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681479233; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=8UqxX0sbAZIEGwY1/dMgMU4D5LIet0nRYGIVn4sc+wc=; b=NZYkvlUP1ygWh/Fg98D3P0P3cVKkfQK0ZbCGG7NZop6533UdINYX/XcJjOIg+QZrNuQECi TuS82+RwMRDNoxsptIuR5gIWVd0uE+1TbyTYEgNAJun3wp/9yMJkDntF7yjvb4O5ZMpToi TJR+bn13UyeAYT21MNu7G1v8btIVVOBhDmhhH5c9UZc6Vt3fxM0E0+itaIY5fRx6pjSjEp C1JzQsBZDXToketUgztlY+m4/+gXJFsDFvANmFiFYwuLLJXi565XM/ZnRZXHqK3ZCGI0fm zTY9I51+FygWWN5Wd/cK64MqKnkp8WVPkkiSdbb97c7rLnV07AWvYJryy7eH7w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681479233; a=rsa-sha256; cv=none; b=vAs6JgLQYuc6yPzlUesRKVtnGnZKDYvUvDTf1nlqZGucKeZPwoL4YH9+M8XamRRzzHnE8u Tj2Ehb/bnE3r7odSs48PyS3W1/wZSNpnE13dsb3QGew4MzPxo6D0/aJcFIsWj7dN1JFqDC DlsT92Df2d534az+6hKIdawY2BrgrpJ20aKmL0y3USBwc4nkY5cMgSNDL1sr3r3c5WvK2y D35hE4ZtOweSNYKlt0cxOuFT0uFUUR9U1kCFUOcOfxOkjs/YJ+rkEV6TkMXDr4Etqp0Elw 7x5Z+HRhZumHPp6Z8OaCxuOekmDSIzDaR9AIRS5XnL8Rv9gFXjQQWzhSh+geFw== Received: from mail-qv1-f46.google.com (mail-qv1-f46.google.com [209.85.219.46]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "GTS CA 1D4" (verified OK)) (Authenticated sender: kevans) by smtp.freebsd.org (Postfix) with ESMTPSA id 4Pycq55N18z19TG; Fri, 14 Apr 2023 13:33:53 +0000 (UTC) (envelope-from kevans@freebsd.org) Received: by mail-qv1-f46.google.com with SMTP id oo30so3630812qvb.12; Fri, 14 Apr 2023 06:33:53 -0700 (PDT) X-Gm-Message-State: AAQBX9e2trZ8ATB59Yu9INEzpdlolEaEy2Q//ru0MDejKAYcQCkpukap WgLS+ZEPWLHI0XUU2NlLTtw3xOqUHHxCRCKK3Z4= X-Google-Smtp-Source: AKy350avKXs5SbxwCAC1Tf8xP5eqPb88UPGAvcHzZuQALNw8srrURvQNn+rcK2w8a/Tp6Bumss+IOu2GJEE/AZK5D/c= X-Received: by 2002:ad4:55ee:0:b0:5bd:ed35:9546 with SMTP id bu14-20020ad455ee000000b005bded359546mr424652qvb.1.1681479233078; Fri, 14 Apr 2023 06:33:53 -0700 (PDT) List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 References: <202304140513.33E5DsXL019547@gitrepo.freebsd.org> In-Reply-To: From: Kyle Evans Date: Fri, 14 Apr 2023 08:33:42 -0500 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: git: 8935a3993219 - main - daemon: use kqueue for all events To: Konstantin Belousov Cc: Kyle Evans , src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-ThisMailContainsUnwantedMimeParts: N On Fri, Apr 14, 2023 at 2:43=E2=80=AFAM Konstantin Belousov wrote: > > On Fri, Apr 14, 2023 at 05:13:54AM +0000, Kyle Evans wrote: > > The branch main has been updated by kevans: > > > > URL: https://cgit.FreeBSD.org/src/commit/?id=3D8935a3993219be76c7ea03e9= ad4509657d08af6c > > > > commit 8935a3993219be76c7ea03e9ad4509657d08af6c > > Author: Ihor Antonov > > AuthorDate: 2023-04-14 05:10:29 +0000 > > Commit: Kyle Evans > > CommitDate: 2023-04-14 05:12:21 +0000 > > > > daemon: use kqueue for all events > > > > Refactor daemon to use kqueue/kevent instead of signals. > > > > This changes allows to simplify the code in several ways: > > - the execution flow is now linear, no async events. > > - several variables became redundant and got removed. > > - all event handling is now concentrated inside of the event loop, = which > > makes code reading and comprehension easier. > > - new kqueuex(2) call is used for CLOEXEC, but maintained closing t= he > > kq fd prior to execve() to ease later MFC > > > + /* Signals are processed via kqueue */ > > + signal(SIGHUP, SIG_IGN); > > + signal(SIGTERM, SIG_IGN); > Are you sure that this works? When a signal disposition is set to 'ignor= e', > the signal delivery drops the signal immediately without queuing/notifyin= g > the victim. I very much doubt that you would get any kqueue event for HU= P > or TERM after the calls. The manpage, at least, specifically calls this out: The filter will record all attempts to deliver a signal to a process, even if the signal has been marked as SIG_IGN, except for the SIGCHLD signal, which, if ignored, will not be recorded by the filter. The tests should at least test SIGHUP, maybe not the others. Thanks, Kyle Evans