From nobody Sun Feb 8 00:26:55 2026 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 52D12C7EE23 for ; Mon, 22 May 2023 02:51:59 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231472AbjEVCv4 (ORCPT ); Sun, 21 May 2023 22:51:56 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:36590 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230036AbjEVCvt (ORCPT ); Sun, 21 May 2023 22:51:49 -0400 Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com [205.220.177.32]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 42710A0 for ; Sun, 21 May 2023 19:51:48 -0700 (PDT) Received: from pps.filterd (m0333520.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 34LLr1Aw010634; Mon, 22 May 2023 02:51:35 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=from : to : cc : subject : date : message-id : in-reply-to : references : content-transfer-encoding : content-type : mime-version; s=corp-2023-03-30; bh=Cg7LXXQah4qV9pTbx+uwWn44v2oCIlgCdigkSldHtiM=; b=Xh7wmT3Hyi2TrMzrAtYlho2c8pHWNfAysRQbO1qIq3JBL/TrRyR4UdjN7Hr24QoKCuJz /d8P2Aa6LcKQjKcu0ZuF+9GkdPjGJXs3BvaALh82u5hWC8pg2nJqrxoLB2hNyrXjJY7+ 5WCdXnPA05/bG3Hgf0IPDTi9mXRjjNvpd52yR7E3DMvlHFjaJufehQvO9xUkGqtKNocB 4w7AV6RKMRb1l1aecpt5nyc6i16oKwbD0aeeURP71n4QX9A/Y2ad9i0iSDdG97uJQgc5 ghVqR85Rj5P3xF9jnsaDQkrp9PltivR1IfCTKsJegpvA5YnBnBgA88TqdaeXZG2sOS7j 3A== Received: from phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta03.appoci.oracle.com [138.1.37.129]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3qpp8c9r7b-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Mon, 22 May 2023 02:51:35 +0000 Received: from pps.filterd (phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 34LN3faL028764; Mon, 22 May 2023 02:51:34 GMT Received: from nam11-bn8-obe.outbound.protection.outlook.com (mail-bn8nam11lp2168.outbound.protection.outlook.com [104.47.58.168]) by phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 3qqk2p4dga-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Mon, 22 May 2023 02:51:34 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=RZ5T2VQRSQ3VcgtL6WtW89vAYSRtdtU+Uvz5/QWHeA1dSpIZOby3ctZz89nj/c/YrjqJZ44uzy7StuCz4NxgUMWydmCEhbKZx/R6YR/baAJPtbRWEn3ENg4aHqKqf0MP9fiN4M332m4S7l6/2PI2GxgE44q45or/1W3OPwIAdDcYJthVpm4LTlLwX3eZdA7W8bD+uj7ZRDmFETMbthi1y9yL+fvZL8EE9LDj/CcY6qYKUA1v1dEQFcQFnLqft6pk4pGIZEpIkky6j27YyV5UIrDFpk6WF0PJdodyRdN/N/1Q5/PAHG4ozT9wwPL5LIc2Idb59QngiVpXJUMKte/t6A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=Cg7LXXQah4qV9pTbx+uwWn44v2oCIlgCdigkSldHtiM=; b=chX7JS8sASVbJV+X2ACkdQRLBRs4fmyTeN5rnHnmWnGLZh1X14zwJX0r71hFws1iIH9Ni5Ed6cB71zr+QidPBmezoUJHm6B4h0pY1GIcubQIOfTuKcZUWzv117MG6v3xrqMY5U4TNOWIsWZEO2X/yztCtFGpnTAuKxdpM8JdokYbS3ymfCJx8IzIkP4bq3zOIq7QFAR2HV62C2uQHXlHlJz8SyhmwVnBOL4g8SnyS8GM2IP+wBTB47C3G3LB+LsfHJA6rY92nXuh9nGv2UZJh1OzFWn2cdR2/GthHVkagBhHONOzAohyfkdKCYGRt3rzLBhuKHYRbJpIUtKsK7rCiw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Cg7LXXQah4qV9pTbx+uwWn44v2oCIlgCdigkSldHtiM=; b=EIUYROCasGt66ZZon3zIDGi2FrzP1E7yEgv8vzul8DIf0lM02Fqz+BZWHq28N6l1EUK4dGazJNwMbwj9eTjRAuRPZNi21fhWdMZCDSwYOxvVgIFyKKGAor1tY6Aqq9xqW8PNudL4wyRPZtQOEod+Qe3v2eW7AayNnEGda4UkVeQ= Received: from IA0PR10MB7255.namprd10.prod.outlook.com (2603:10b6:208:40c::10) by CO6PR10MB5620.namprd10.prod.outlook.com (2603:10b6:303:14b::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6411.28; Mon, 22 May 2023 02:51:30 +0000 Received: from IA0PR10MB7255.namprd10.prod.outlook.com ([fe80::6f12:fcdf:da87:2bfe]) by IA0PR10MB7255.namprd10.prod.outlook.com ([fe80::6f12:fcdf:da87:2bfe%7]) with mapi id 15.20.6411.028; Mon, 22 May 2023 02:51:29 +0000 From: Mike Christie To: oleg@redhat.com, linux@leemhuis.info, nicolas.dichtel@6wind.com, axboe@kernel.dk, ebiederm@xmission.com, torvalds@linux-foundation.org, linux-kernel@vger.kernel.org, virtualization@lists.linux-foundation.org, mst@redhat.com, sgarzare@redhat.com, jasowang@redhat.com, stefanha@redhat.com, brauner@kernel.org Cc: Mike Christie Subject: [PATCH 1/3] signal: Don't always put SIGKILL in shared_pending Date: Sun, 21 May 2023 21:51:22 -0500 Message-Id: <20230522025124.5863-2-michael.christie@oracle.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230522025124.5863-1-michael.christie@oracle.com> References: <20230522025124.5863-1-michael.christie@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: CH2PR04CA0003.namprd04.prod.outlook.com (2603:10b6:610:52::13) To IA0PR10MB7255.namprd10.prod.outlook.com (2603:10b6:208:40c::10) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: IA0PR10MB7255:EE_|CO6PR10MB5620:EE_ X-MS-Office365-Filtering-Correlation-Id: de016aeb-e8bf-4fa6-d3a1-08db5a6f7142 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: qsvsYwWxzb8ak703qL8zLXKloPu9uFhh5+7Hamr/P9IrbsSryuMzUxi10EFdAD4G88o1BdOFBXLeWpLV7mcPq82C4PhEutYRzIyilD9CFSw3Ki5ifxp9GsW1LRokXhQVZydtbho0tg4FLl3d8Q/5lYJtzCgsiQFO0gN5JH5kvNiT2joddknLDjtkwj0oKEWXoK6YLaf/uO0lLshas4f0UYJqzjbTD6CDYv0Tj+kVIfEBbBaVR18S05rGmdJUm9zNONjZGXKCmUn4sNwxT3zI5HKQsv814mE/DOcrDOe3YeyXd4SM/xrD5Vp+VQFbgtFgyYWp885gYZGW5ZZVgGO3NAwK9+u5uQ1HAE2us6EvDr0PbbCFR5ZQY1RvBBPBrceizRu58c3gpJOXkhz9u6jidMnH2O438/9iHiAZuNjBWoQ729un5qQCHlu1uV+FYm3ZG0n0RO2YyjgsXY89lnHJTTmpysAtRD96iddWszUC5PLUaMn9+tXqAhPgvWczWRn7yrK1Gcc9bpwrZlQIbnu5VMFU5luc9TZAqyRrwN21da0kVq0YSl09cT8NMPDQgL8y263aswXyClFji7FD73XanIpCsx1bxMbavN7PrC6fAaY= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:IA0PR10MB7255.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(39860400002)(396003)(346002)(376002)(366004)(136003)(451199021)(921005)(38100700002)(8676002)(8936002)(7416002)(5660300002)(6512007)(6506007)(1076003)(26005)(186003)(2906002)(2616005)(36756003)(83380400001)(107886003)(86362001)(316002)(6666004)(478600001)(66556008)(66476007)(4326008)(66946007)(41300700001)(6486002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?RXFLRc+QxQ5Md53vIGntpRy+VCvTuJRvYItJOdCWjI5JV5rZEK6RI9jw64HY?= =?us-ascii?Q?s8rvZntBQVTVX/QtOBoHXTqmVbjMPuo+m4WMDVZLoTDdl0tZPvfjRJooT+hd?= =?us-ascii?Q?c2MbqJaKYem4a3rVcDoF/6RRuQgicLCdrVC/hN7kC8npX5lQTIJbDsLpr3E1?= =?us-ascii?Q?NEsI1yGCW55K3K9b2ELljGXEEujsT1rM0Kfsl7vwYq5IlpNHYf7m5FgQ9Mct?= =?us-ascii?Q?++un1VOg37mJbK8HNUfrwfbl5xtvi2AVlKhnFBcd/OaHOf9KCakMJjQuTTx/?= =?us-ascii?Q?X9yzYO9vcQQj4uenKcMF3PXYTlWIgPCxKf+8+R76vYL7IebMC3AyeUBjh/Ap?= =?us-ascii?Q?JfTnNBe+wKZonb//OZYTnONgBgEHzuc8mAIKKsSfvwVAC8MlkTEMcSna9O9R?= =?us-ascii?Q?Kyl72G+X5yt+e/qjA/vE/DRcJqOxgUkeLWkAau5MVmMaV1pHfKBRTy1r/qc2?= =?us-ascii?Q?PTGOkRgp+MGgsZ2pkDKK03qb/uOtslWNN9Udh79VKRtYUqVAicn25Ck5CQgS?= =?us-ascii?Q?W/4PSZbWDUkeYzvFbgKzsB1yfi6HLPMRFvc0hGUESuzOlyXc0hu+VkKxJGJs?= =?us-ascii?Q?yP2ljNeBdUppQdMhcBGP/GWrYFucP4f+N02lutBtg8idIRLyPsM5JSEX3Xv9?= =?us-ascii?Q?OMPkgxDQmcO7EqZzOe8htJwj+R4bXzQ+SfKbo4hCo5k+/LzWjpuIl1Atv0G2?= =?us-ascii?Q?V+yLrESkU72NxoCIcChVWmdHksBGkWQGqf+CJh8MSevp3n5N/nB4tS6bIuxM?= =?us-ascii?Q?l3tMIRZHJ/LNp1u6ODXEjS+O5opf29syu7ltVYBXFhrRxi3PPU3Y0czNYG5M?= =?us-ascii?Q?OlOdJKCui0j+tKesgDtx/0idIcauOC0x7a7aKLEqLKLDCJOx2FRvlphOFzoA?= =?us-ascii?Q?FuWBl7mA4qaSLSjVlvl9CnCu0OQw91W6jQL7Mezw49vAdAKwZ2Jyi6Dxmy9F?= =?us-ascii?Q?fkBoiqhgZAGkbRmzxeRhsUeh3K35u9qmYACb2yeTKYSeeGgR5XbcQf9g3lvC?= =?us-ascii?Q?bkaeAJy0jLFSKRm4C4Aq7S+tET/cNOgHIGqsfRuz1dDqg+GzZC7NmodO+seM?= =?us-ascii?Q?ksfldLSXQy2sfh8XPc44B3GgcEmEyHUebEOR/cRmQ14alfK8v+9RqhG74nHB?= =?us-ascii?Q?UQMPz9X8FajxpHXyDnkEH2x6ThJ0cHlimjcGWnRVeqAgOrwkyBSkvoFr5x51?= =?us-ascii?Q?SsoABVIdqnfkxTP8jfOywF8JJ0nYDufJzAJON0evjVOdxzGl8IPDsTyrtlsI?= =?us-ascii?Q?+UnoVmgv+t68774IFhHJJBH70nm7GJCwobgr0xUZkUbX0TiWuTV2Bcjm/TzG?= =?us-ascii?Q?uVQFhJ1OUbiQt10STsJSrEgQlxbGIy01fir4MMcvwvoVjvWEybzjjxQ3/84i?= =?us-ascii?Q?CLHVQGzacUpLR0++i1AUpzE0U3pAH1G0LYS0IZTWN+36Q3c0CbhCDKd14JbA?= =?us-ascii?Q?gycVSwG5hmdZ6kn9q+QnNirRVSviTzXht2lo5OSqFWdCjqfy6IKa2jU7hnoi?= =?us-ascii?Q?z4wS3TQLY7uC9RkGOpFvX4u6uKufSjjuzdsw6TwoeJcfAphx+5JVX8qRjDZu?= =?us-ascii?Q?+QhSKEHSONaD9kxV/D2UPsveNDrHlZ6AfK+GlhFOol1x7yoVVutzsr4E+CE4?= =?us-ascii?Q?Ng=3D=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: =?us-ascii?Q?O97xa8eZfS40pPGNfnA3tKJQUK68CT0saOCETf32U3+j4G9aOpoj/9h0ygDG?= =?us-ascii?Q?vXoYlu8z5FGZvRj3mTn1aheHSFWuZjfXwZlvy0eYHqHWwpe1GLIG4r6SJC3l?= =?us-ascii?Q?mVbasgOzHkMrx8cLEKZZlZ65C/+A4Ze3GlD7TSefTbNjScu48XUHYu8609FS?= =?us-ascii?Q?8sQOUYcFdntHjuC6Nr0tviMq6qdaQaqQWFO8iM2B4sap/EJ3mMH7iaImqQyH?= =?us-ascii?Q?/U0S1vhNRY4nt22opWsNc5RU0nee+/heAPca191uL65bu8QLVfV8cFeyHGC+?= =?us-ascii?Q?2y3h92TSK/tHOqMc3zLhADUjwOKW/d8ljct3PiGMsfRyczizXDxwXFdfnGoe?= =?us-ascii?Q?NRJrLrZu0u9UNgLYVN7wAYWJtmEyCkez/lbV2dTBHxvvxnkgvD4nNP6CSyb/?= =?us-ascii?Q?2P1f3JfJlkco//daGglvPNDxxosxMqJ7oXlTmLtfv2XtuYxgINwR0Axu8tFi?= =?us-ascii?Q?1To/q46yMeryXVkN9es8KLdNdSJUxFPp7EDDYeWolCPDGUmcN+0QseJa3mHV?= =?us-ascii?Q?XvtdVR2+IF4TEeePvN2Y6IDWVDtfmTKiv6HBuwfMBvVMxZpLwl9GyaGWJ2Lq?= =?us-ascii?Q?agZcQo0qukFFoF1/RouzKwtI6SeC2Ae0b0CEjeOeZ9TtszsiDZs6uKHyO/nx?= =?us-ascii?Q?iFedY6uvxDsQ5+gaN9C4j75yJ+4z57wjMphasqCFHmL1/16DAERjkqBy37NE?= =?us-ascii?Q?Ka5nU4SXQIjKiNnpDuS5HmYI4CSCKSzEbScobU0BN+nWoxV1Ck0xNN+bzx6A?= =?us-ascii?Q?oX6JjwS/QkrqpCB+0BQCUlPZJZmKJk3tABKzWnWHPOztk9g+xNRzCoZL+WSh?= =?us-ascii?Q?FloW2BYv2SKS50uaGtsDzyi1zy3Ey+3SOMbaaJCPguara29oAte3T5TNERc5?= =?us-ascii?Q?iXskNzpgYUOhzvmPzIfjKjxTdvafUfIu3RfMqIxFLHy7fLQpAjkC65qo1ma9?= =?us-ascii?Q?wTiGwrlK8yorWINuDuT44/mVcvW9jdWfudUbotKJNSY2qjWQVp28pSHnV40f?= =?us-ascii?Q?krERxZOPU0PoWgSJQIRARAqaiDNgwrN2uA8TAHd60eE9gfErRMIP5IwZbUlJ?= =?us-ascii?Q?96ABbbkl?= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: de016aeb-e8bf-4fa6-d3a1-08db5a6f7142 X-MS-Exchange-CrossTenant-AuthSource: IA0PR10MB7255.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 May 2023 02:51:29.2435 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 8H9sx8YDBLM1Sdi0dZNd+FrTITJJQJ+yT+HOQQPsbBFl9dAfUSFPlAHZZL590SQLOPa/Cmvkt3+JnpZLwt4jTeg+j1pXoCKKCtRyjkcENTo= X-MS-Exchange-Transport-CrossTenantHeadersStamped: CO6PR10MB5620 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.254,Aquarius:18.0.957,Hydra:6.0.573,FMLib:17.11.170.22 definitions=2023-05-21_18,2023-05-17_02,2023-02-09_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 spamscore=0 malwarescore=0 adultscore=0 mlxscore=0 bulkscore=0 suspectscore=0 mlxlogscore=905 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2304280000 definitions=main-2305220022 X-Proofpoint-ORIG-GUID: s4ONPpU6a6QpCORZdbF7Kh3Zr8S-53fO X-Proofpoint-GUID: s4ONPpU6a6QpCORZdbF7Kh3Zr8S-53fO Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" When get_pending detects the task has been marked to be killed we try to clean up the SIGKLL by doing a sigdelset and recalc_sigpending, but we still leave it in shared_pending. If the signal is being short circuit delivered there is no need to put in shared_pending so this adds a check in complete_signal. This patch was modified from Eric Biederman original patch. Signed-off-by: Mike Christie --- kernel/signal.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/kernel/signal.c b/kernel/signal.c index 8f6330f0e9ca..3dc99b9aec7f 100644 --- a/kernel/signal.c +++ b/kernel/signal.c @@ -1052,6 +1052,14 @@ static void complete_signal(int sig, struct task_str= uct *p, enum pid_type type) signal->flags =3D SIGNAL_GROUP_EXIT; signal->group_exit_code =3D sig; signal->group_stop_count =3D 0; + + /* + * The signal is being short circuit delivered so + * don't set pending. + */ + if (type !=3D PIDTYPE_PID) + sigdelset(&signal->shared_pending.signal, sig); + t =3D p; do { task_clear_jobctl_pending(t, JOBCTL_PENDING_MASK); --=20 2.25.1 From nobody Sun Feb 8 00:26:55 2026 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id D238BC77B7C for ; Mon, 22 May 2023 02:52:00 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231476AbjEVCv7 (ORCPT ); Sun, 21 May 2023 22:51:59 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:36598 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231395AbjEVCvu (ORCPT ); Sun, 21 May 2023 22:51:50 -0400 Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com [205.220.177.32]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id E5848CE for ; Sun, 21 May 2023 19:51:48 -0700 (PDT) Received: from pps.filterd (m0246630.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 34LN2IfC028689; Mon, 22 May 2023 02:51:36 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=from : to : cc : subject : date : message-id : in-reply-to : references : content-transfer-encoding : content-type : mime-version; s=corp-2023-03-30; bh=Gt87w4Jfjb+sWoEEah7cPPFoRSKxykQS/KOcwmS0CYg=; b=nmgphjSvuGOHLEJGyYYdIzg+Y9lwORBe0jO8kbtaDorss+o7SFRFvqI9GnRgPf+2yai6 yM9mEOFAS+oNgm4BIuY3mSAtpLMUHrxVERxN/L2yLQ3/h72/LhfQs15HMpsfvll54j2u NSuUu4TUNAaULb7OkUHS4HzpzsbRsefYa9QaRY5lg/Y5lxHZGfnwksGnvibnVyfaFVfM I/u9h8HSosXszqWEZGap6qfAfdqHwWLMpQiK+XKXGFykiThyP8MvHeJP0R2CnmvlLNbn NGPA0pinfoK+xZ9IYn6rkYCBA382wW12h7DsHihxV7D6FpqRpBjSWzIHPmQwlQSV0b4A sA== Received: from phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta03.appoci.oracle.com [138.1.37.129]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3qpp44hq77-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Mon, 22 May 2023 02:51:36 +0000 Received: from pps.filterd (phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 34LN3faM028764; Mon, 22 May 2023 02:51:35 GMT Received: from nam11-bn8-obe.outbound.protection.outlook.com (mail-bn8nam11lp2168.outbound.protection.outlook.com [104.47.58.168]) by phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 3qqk2p4dga-2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Mon, 22 May 2023 02:51:35 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=K6dbM7hHy5+LqcuOjDwKXHI698HD/Cl3uBqRBSqhDaI5klhR9Q/Xyw82Dq15XoRPfGVptee8pfR0J84UPXqJjdMTI+h6ibdI5DqCnmj59OADiM46Cccds1c7K8zs0oQDN7Hkb246khXmSnW9lHK4Rz3YWOh6PLA1MxsLwm1b319UahtWge7RAAqbdXR97qae3ybCIlBmgKpHVByHwdOlCy959RaHCUFZf/3g2kOFNqNaGLkBM78lvgd6nLPU8NXLaPcklEickyORA8pOvAUS5CEPiKZMLBnsCUWuQw0XMwGD7zzhOGylj+QJqHRwOmqujTQLo3JozuydpTJRMCQuEw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=Gt87w4Jfjb+sWoEEah7cPPFoRSKxykQS/KOcwmS0CYg=; b=k0VugeraFcpXKV662IUQN9Q6gXZUtUOhdT6KpK0n5A+Knt/nBKXrG4SN6OzcTxVML5jaZfRUGl9TLQB8SghwfckzWQG9SwN3WvoUcuuximvlqogOHEe8Vg8zHL7kFAAPtwXC2/Wt5naBe37QpYAd7OuKNhDr2d1BTWnaV8EDWnYcqICl7mewIApI39Y8XVPj7IF5IpeqaNipvLcY4fL/Y3v8Tt1FuC0P4yGMW+sDKRx3d2c5g+fkqxMJuH3SRUfiZ+YRYiZLhhAGAMR/VUP6QR76wKT2wMsAApyz9mAYcFpDOMnXVv83WEMTAvEzKGZB3OeRib35IOCRtRef2jtkpA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Gt87w4Jfjb+sWoEEah7cPPFoRSKxykQS/KOcwmS0CYg=; b=koLgPOlJQIHAgolId/GvAZAoz1YWo6G5wrfTU2bTPMNHFsv/WF9ns7QEU9cUJmz710A8vmAoVgWEMbbxtUfSrzomeJ8xeBQ5fTl4BX+x3ZGt2kEDZf1ieRXjugSDfxn4tdtrgDVS9iDW48NKp9tog+3bZa8kLam2Vjx6ml9MTbk= Received: from IA0PR10MB7255.namprd10.prod.outlook.com (2603:10b6:208:40c::10) by CO6PR10MB5620.namprd10.prod.outlook.com (2603:10b6:303:14b::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6411.28; Mon, 22 May 2023 02:51:31 +0000 Received: from IA0PR10MB7255.namprd10.prod.outlook.com ([fe80::6f12:fcdf:da87:2bfe]) by IA0PR10MB7255.namprd10.prod.outlook.com ([fe80::6f12:fcdf:da87:2bfe%7]) with mapi id 15.20.6411.028; Mon, 22 May 2023 02:51:31 +0000 From: Mike Christie To: oleg@redhat.com, linux@leemhuis.info, nicolas.dichtel@6wind.com, axboe@kernel.dk, ebiederm@xmission.com, torvalds@linux-foundation.org, linux-kernel@vger.kernel.org, virtualization@lists.linux-foundation.org, mst@redhat.com, sgarzare@redhat.com, jasowang@redhat.com, stefanha@redhat.com, brauner@kernel.org Cc: Mike Christie Subject: [PATCH 2/3] signal: Don't exit for PF_USER_WORKER tasks Date: Sun, 21 May 2023 21:51:23 -0500 Message-Id: <20230522025124.5863-3-michael.christie@oracle.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230522025124.5863-1-michael.christie@oracle.com> References: <20230522025124.5863-1-michael.christie@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: CH2PR14CA0008.namprd14.prod.outlook.com (2603:10b6:610:60::18) To IA0PR10MB7255.namprd10.prod.outlook.com (2603:10b6:208:40c::10) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: IA0PR10MB7255:EE_|CO6PR10MB5620:EE_ X-MS-Office365-Filtering-Correlation-Id: c11d73f5-b747-4034-f72b-08db5a6f7260 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: UW4ZvwHtgwT/Uf8B4RsUQxEpjwdeluTVArY4v7Mfr9rh2WX/+k45QMcbsOl5rxC/06mTbzGMV6bDOxa+Q7u3/h4ajTpRg6WoMrT75lRzKdyQPrWLAw6clK88Efs4/pYuvF1qg/NqpcGLqV9Q1aT2HNye7JRA+KeYtS/+0Zn0vI4AXvm8u/AjNa8lpN89IYPZaivMMXu1Tlties9qj87GShdL9hnE7veo4BI3e50DASoE0zXDIXk/hKKBn7FILGtaTs9flO8ZJgm32PlIUxRwHGIOPHxPbV5tIyQqXe+jXTkXBS+xi1weixHlJlOpk2F2cLq4g9NK5jrCVWNOMycOAtocaLT+Zlw6R5nQXWBg2zuvRxQIiSL7JQpb2Tg0MT3QTOToLjLxkwcKG9KFhv7a7jBYKC7HIraNz5lekcg/ih6tc15PdA7vF7Sg2bDfT+x4evj16/eALbFWkDBJnzp1KDDng3didHNAgJSJIk9jO6nF8cGnoGvWUW1yDf96MOaJB2Lkmr2WmhE9HI0pP9hvqVNyzVG/ltfflY0hb5xFRmgqG2/nwAfbwI/mQIamnYbaCGS2t34A3hPd1yvNesNWqNU1izHYxxS84VB0B4DZeAA= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:IA0PR10MB7255.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(39860400002)(396003)(346002)(376002)(366004)(136003)(451199021)(921005)(38100700002)(8676002)(8936002)(7416002)(5660300002)(6512007)(6506007)(1076003)(26005)(186003)(2906002)(4744005)(2616005)(36756003)(83380400001)(107886003)(86362001)(316002)(6666004)(478600001)(66556008)(66476007)(4326008)(66946007)(41300700001)(6486002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?gUy0K+k7Tqc8wDxUZDWK8V9uwsPzFae4T8FxoTmD7cfeqDGzhmgx0D+d6Fso?= =?us-ascii?Q?y6QgHKe3tpd0AAkjoqPS/PlpQo4skI3/Gh2q4ROgeotmpFEmDaOLSiZqr83V?= =?us-ascii?Q?clRA/TacL87CZG0uN+XJN4FLRTHJO31DLZAlmyWXZwCrY23PipsJD8Nc7xsW?= =?us-ascii?Q?0QDuLppGR5Bw83ZP2wRgjLIJD/Ej7E81ab2BEx7apfum3SHyWbIecCp7Ya9a?= =?us-ascii?Q?Uz+lCI0ju0aneZa04eggVLItaJvMtiTYSXmdhn8pdpS5lVebxBzCPqLW6Nzx?= =?us-ascii?Q?dVvPlBCTiLeeScJY8QYL7PfbfzFC0lkjZepfWF4AYhFVFwYGdUCIiXriU6re?= =?us-ascii?Q?jiKLC811OixTnYE6fuyJnRzkPtw+LlroUiljwpnnnS1GyAYNkdzf2Mf4Rp4h?= =?us-ascii?Q?Y9CD+ddRp6fkxC1cW0OaDCJ8D41OPw/9KXaHn9ca0pmRC9tcKYdaFDybQ7mG?= =?us-ascii?Q?dWrtZ8TewoxdJp+1T2M77sXb1YBtloywBFm7MARFO8vp9moI3opryA8m6iOH?= =?us-ascii?Q?r0r2CVXOn8fFil/BRIEGM1xFqKRT43pqnq56DrM7MJDRv9zPT6DRAyAmjeZg?= =?us-ascii?Q?Df2c8UTqtoA56/K9cDuue0RdwJ/dm3xuIfLNRboH7x5XUqQ8SFjeeRYpPY0F?= =?us-ascii?Q?L94HcMM58hvsGmLS/9+5ymtCC6AI+B8NxaIOfmcs+tCCWgFjLOg24OkPDApa?= =?us-ascii?Q?sMEtxS2slM/XIBMjmvXHbuqm/ACLBWMVw0ll0ZRrrMvGl5qUQTgudOtR0fkZ?= =?us-ascii?Q?PJpG6m3oSbltggZAzRKw23jkqxBkG254B8ohgnd8y26lqg5MtM2dEKECZJJ3?= =?us-ascii?Q?OFOUfpttIla0swCOID/5T+IRlVzRVo4GuS3iAxFnx75l6Pd2k295Fyj2J94f?= =?us-ascii?Q?MDMolyj49o5KOhhmF118wQspu6k1WkdAjouUpUnat9F0QPuYEC0tX3yHWBGW?= =?us-ascii?Q?MWLTcWKOrQ7gCciVupqXzxL9i4TLSum7aP5BVagGIN9R26X5kfYJImFh+pJ+?= =?us-ascii?Q?oQlnwjBsODi/vlVpZfjEX8vObuZSLy+Jd6V4s7yfohddeJqfEZxyxpuIIoed?= =?us-ascii?Q?nyJcTGPHg1x6+SgCW6+HNDPucxlls/o4YkHjLkOcqRbYhk8tRT8y66fqNZU7?= =?us-ascii?Q?vekkkK7KWd2hg6WH9JNEFz1cfkyu5W8BTgEohuebWcG845/hw+LuRIRzB4GQ?= =?us-ascii?Q?DctdNXLaMfZvvNCPbYRjt4Hl+ehkuQ/UfZCR4yxePPz2+pWUO483HkFxg/LT?= =?us-ascii?Q?MXuFHz3qwyD++bb+6IXMU/q6kQPEfm4rmJYPt4V8B7/PH64MKr8EA50+spcD?= =?us-ascii?Q?gT7gGye5DoYtqdeNiSoLxxYPIzWJ9m0zm4p9F9qvZ1I/owznBqJ90e6D2qAB?= =?us-ascii?Q?b61Wa2lgx2R8X8MKl9Xp7vskOgfC0Z8fAgqxCy1TE0iChIwRSiArplIom4YM?= =?us-ascii?Q?LOF+MGyI6cthw7Oap4tKqu62DQwL+hMemFuF8MbyhxkF6bsYda4s595561zY?= =?us-ascii?Q?z+gFd/7blcPeAHWMQRw2Pz6A734REykB3zpjMavlK0KLRTA2RM5Y7umqKeZy?= =?us-ascii?Q?HhvGg8IpsdcbvrxQG/Td0WM5DrGZC2b1k/IoMzu9F9SoRHSTEpgZLZbt6QJ6?= =?us-ascii?Q?Vw=3D=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: =?us-ascii?Q?TOIBL4HStYs6/A2YvLMJmo8zzlr6KpJl78028HvtOk4NJbzp5r3tK+fDiD8z?= =?us-ascii?Q?pevjeOteNAOnQ1lW2/IFB/l4Wm9jP7Q2jpbiuVcXCcfbvSrJfvPwjMcU4VYn?= =?us-ascii?Q?Apwt/Nyg/EDh1mYCh7n+XQ9nQSJlD+dndlsiLTkpNbzKee55ElQQpO+yaI26?= =?us-ascii?Q?2wIfBRWGCB3/ic8g3m08SdLJX8nlf0BZwhuozgf0DiJPswXNQL4vizSFXI0R?= =?us-ascii?Q?UypaUzQnA0cvfXB5q8FoAoc1csI65gntVMg5fBSVVBbz12sDxmQxefXxxwCT?= =?us-ascii?Q?kPKl0IUvK0YYOTKOCLP6iUMm72gRJvi7K9kx3UusGJKeJubX6wlPKaVrfHSZ?= =?us-ascii?Q?zUiFGTH7rhYJZV/wHiA1jMtLH+yLY5jexA1VgnpoLSmMwSxWDLo3uySvOwR1?= =?us-ascii?Q?JWyZAenoNv1Iu9uC/ie7r0oqZNJdLyvrhxxSeCqJoYkrBJ9uI5Ln6rIAP5+J?= =?us-ascii?Q?ulCw9b26JFZq6+Pg589kjOa/sC2YFlP5oSuPGNw7rPyWN8F9CLqzKWLXIQ9o?= =?us-ascii?Q?j7DSEIq1nuDN5VOpjY1FzOHc0xqLgYzHMpMXinWHL93gmFJeQ8MWIA+vpjNB?= =?us-ascii?Q?EIl1tF1oSUJNW9yAFZlFtEyAT1D/7/djef6zEdOi7CtRPKsrIwAKWOcIbIb+?= =?us-ascii?Q?JkNNAwJRjsq5ueve/EMIst8H8Ga5xKy2OK/P4+YN9sEys+wVO8KnVl64jVx8?= =?us-ascii?Q?scuyLHZ9FS0aJnq78fUGYoFwbKCjkJ0MSInTa/88WG5lFIxkzNE5PKOhseX6?= =?us-ascii?Q?83CzwriF+UizFfOvFBnS5UDV3crBa9m8LhaoFCklELphvXZD83E3q8ZGHo6I?= =?us-ascii?Q?l+cvcbAzbNfWawQdDKt1vV8toWWYCx2MlbWPteR4EEJezzMTV0v8KVf+nS67?= =?us-ascii?Q?TbnQJt3DMLVjX8BWJFtD1zKzxMJsYoq/KJR53ULUpbVJMmToBi0edcE2Ai/j?= =?us-ascii?Q?vVaqJz6Jmots/cfQr0OESaPY7GpghX1WH5Hh/pGrjXcgyoWrq12LvYyHL8EM?= =?us-ascii?Q?ThKK0zTonKbtOOuNaWN9JM1KiTCeYbEhWQCzihGIm/4yrMcGnLln0QKucAoo?= =?us-ascii?Q?tVTF7LB2?= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: c11d73f5-b747-4034-f72b-08db5a6f7260 X-MS-Exchange-CrossTenant-AuthSource: IA0PR10MB7255.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 May 2023 02:51:31.0960 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: BaD0j4X9LJJthhwimDfMB1g/uj7mwuxc0DHkhI+Y9ksPAcbHTfUH19wvUu7KD+O1svqoxmVAPDaWMdwC0E5DGryqeRV7TV7Mxw0VXJLyjGA= X-MS-Exchange-Transport-CrossTenantHeadersStamped: CO6PR10MB5620 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.254,Aquarius:18.0.957,Hydra:6.0.573,FMLib:17.11.170.22 definitions=2023-05-21_18,2023-05-17_02,2023-02-09_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 spamscore=0 malwarescore=0 adultscore=0 mlxscore=0 bulkscore=0 suspectscore=0 mlxlogscore=999 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2304280000 definitions=main-2305220022 X-Proofpoint-GUID: 6QR61vn1TvxUasZqAf1xqZ45Xqbwinp4 X-Proofpoint-ORIG-GUID: 6QR61vn1TvxUasZqAf1xqZ45Xqbwinp4 Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" vhost_tasks also need to perform cleanup before exiting so this changes the check in get_signal to be more generic so both io thread and vhost tasks can do their cleanup. Signed-off-by: Mike Christie --- kernel/signal.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/kernel/signal.c b/kernel/signal.c index 3dc99b9aec7f..8050fe23c732 100644 --- a/kernel/signal.c +++ b/kernel/signal.c @@ -2869,11 +2869,11 @@ bool get_signal(struct ksignal *ksig) } =20 /* - * PF_IO_WORKER threads will catch and exit on fatal signals + * PF_USER_WORKER threads will catch and exit on fatal signals * themselves. They have cleanup that must be performed, so * we cannot call do_exit() on their behalf. */ - if (current->flags & PF_IO_WORKER) + if (current->flags & PF_USER_WORKER) goto out; =20 /* --=20 2.25.1 From nobody Sun Feb 8 00:26:55 2026 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 428E2C77B7C for ; Mon, 22 May 2023 02:52:04 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231430AbjEVCwC (ORCPT ); Sun, 21 May 2023 22:52:02 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:36604 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231400AbjEVCvv (ORCPT ); Sun, 21 May 2023 22:51:51 -0400 Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com [205.220.177.32]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 700D4A0 for ; Sun, 21 May 2023 19:51:50 -0700 (PDT) Received: from pps.filterd (m0246630.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 34LMJmCF027086; Mon, 22 May 2023 02:51:38 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=from : to : cc : subject : date : message-id : in-reply-to : references : content-transfer-encoding : content-type : mime-version; s=corp-2023-03-30; bh=ijkjgDBlrocZHMJHEqv+wHUnbT48ejMnmOLMUUhbyC8=; b=kzz5Eo+CC8I8rhJ5Iipo35BCDEKJSgb7Rg7riRPvNdDZqyzbYwvZ4tKgb29omglORU/J I/uZ3re8e77jQ15JwPTzQ6pgGO/n0nekn6LVRvaGzz0nv7f/pWgd1isSi5P+7y4KemG2 7LPYA0cGjkaFU1cLbbN5QKJI83kKi6eJkBi4ts1mWLLZ61jEmkHd4C6wnBwesGCBDWYX 60qB4aMu8nlBFO3W4W1mSuEFNjTN69CqGtcmSGA1ky6l24l/Ro0rkseEGSQRCzJl4VUf Nn8FAZUpKuMnKJ1sljB2CE7tukYxPC1clxnf+Q1m2wUQhQHD+Ckzu91U0gfeRBluBaDb cw== Received: from phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta03.appoci.oracle.com [138.1.37.129]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3qpp44hq79-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Mon, 22 May 2023 02:51:37 +0000 Received: from pps.filterd (phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 34LN3faN028764; Mon, 22 May 2023 02:51:36 GMT Received: from nam11-bn8-obe.outbound.protection.outlook.com (mail-bn8nam11lp2168.outbound.protection.outlook.com [104.47.58.168]) by phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 3qqk2p4dga-3 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Mon, 22 May 2023 02:51:36 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=PDtkO+d5GWHMWhg79e/Do93+5k8kqf6TBOD/fSufBU9rqctkyO3+98ep88ZKBN45dpms8eg6Z7O3gvAsshuAz7pdiijzGOTUxo7vpOTza0RBQGnFfKFuuq1NedJtJHzNX3a6Mo+MVoDbzFIYLDmYaQLItJ30nIQ5S/Y8jCbYGmhOlkACHwPqbzfzwtqPDI3AMDnBHC1hu24b/shvG+ptjwRmsOdGSd9Z52h+LbzXi4b3AiXmec1NFcaODZdTa58oNhLTeO8/MtiuqWrq6+CdxR6ypEO+0ubgTKvQuFwvGoMPDlco/JEzSxnWc6ZqUAIA3fMKeHJ+kJiY89ks0Qnyrg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=ijkjgDBlrocZHMJHEqv+wHUnbT48ejMnmOLMUUhbyC8=; b=aSGJK70eE7h7jv84BGVAyVU6qSua+Nxf7ds9CVIPMgAGDgF7uh23pI6kMcwMyazn41l5JCHE8FdzxftQFrZUlZJLNEPvKPRjvkw7W+FOJaOKw6z06Jsw7XFToxIuc7+SRXI1eMANBKuNVadoGqPWcYgMNT9fTno23pqNQnoYh05URH5u+veR3eMVLd66paWLHPl2zP7x34mOjiES3QPS/gejP6JJMQVv5OxADoWuHjMfRLUonBlZMY0fqBZia1kv+nBW2Q0Jgbtx5ZPJYlU7K7Ns5kRuvjvhvuItAA77nnFrKLIbvPC1YxQJrpEbxsND3pepWBtufcKlKCuFXUQHvw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ijkjgDBlrocZHMJHEqv+wHUnbT48ejMnmOLMUUhbyC8=; b=U8HKcJnG9N5Ll6CUU/2FqhheKlBTqmrK6v96StrtuMy/gA5oF6NMLk+E/VM4xT3nJdDf5POXtH1rtyaHrSg79PdyoNCH8sOS1KG7/dnmVjGZXWL7xincDyn5+e8Z/P7+Sn/tsTKG1bKSarvSlpOlmLONHeROcX9tdbJggXcrJrU= Received: from IA0PR10MB7255.namprd10.prod.outlook.com (2603:10b6:208:40c::10) by CO6PR10MB5620.namprd10.prod.outlook.com (2603:10b6:303:14b::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6411.28; Mon, 22 May 2023 02:51:32 +0000 Received: from IA0PR10MB7255.namprd10.prod.outlook.com ([fe80::6f12:fcdf:da87:2bfe]) by IA0PR10MB7255.namprd10.prod.outlook.com ([fe80::6f12:fcdf:da87:2bfe%7]) with mapi id 15.20.6411.028; Mon, 22 May 2023 02:51:32 +0000 From: Mike Christie To: oleg@redhat.com, linux@leemhuis.info, nicolas.dichtel@6wind.com, axboe@kernel.dk, ebiederm@xmission.com, torvalds@linux-foundation.org, linux-kernel@vger.kernel.org, virtualization@lists.linux-foundation.org, mst@redhat.com, sgarzare@redhat.com, jasowang@redhat.com, stefanha@redhat.com, brauner@kernel.org Cc: Mike Christie Subject: [PATCH 3/3] fork, vhost: Use CLONE_THREAD to fix freezer/ps regression Date: Sun, 21 May 2023 21:51:24 -0500 Message-Id: <20230522025124.5863-4-michael.christie@oracle.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230522025124.5863-1-michael.christie@oracle.com> References: <20230522025124.5863-1-michael.christie@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: CH2PR14CA0007.namprd14.prod.outlook.com (2603:10b6:610:60::17) To IA0PR10MB7255.namprd10.prod.outlook.com (2603:10b6:208:40c::10) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: IA0PR10MB7255:EE_|CO6PR10MB5620:EE_ X-MS-Office365-Filtering-Correlation-Id: b7d4cb17-79d4-4948-7d8b-08db5a6f7362 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: frTPgAOgT8bLtuRaMf0Ab/KKmzh62aBsJb5N5uxpGMVkzCdnljo4j0yR6sxhD3RL3Dcx3BEpPB788qt+fYJ6c061cFMtG5vjRa+gvthAexNSqwLKt6Q0hOXditx74K/Fx/K+XGR87E4T6M0adc8YXPaPlY/a79ZviAP+bO2zok1GjpGltjw03F6z+pqDOc0q3Ez8Vh9S1CGRhW+TZduZTY165nq1TgVb4iwrcKTttjOjAGwzdTQQX1qN6WCojv2gFxl06UoFuU+laOstyI+VFdHzHe/xKaEkoQhKcBtIZetl0hdnBvVt10fUy9gri9txkTNhuQrPXlEhOSFR3oFHSSzXqjrH8KeZ6aA7S2fyp6KCG1lZC4mwRmqhT3DUtVKHMwOwy8hqHytlEJRgZs3BiNNxk+YVHqAwI6S0lJPtK6qQGSgquwGRPnznvOLOPWNuYYlqYlUeAGbnNkh8fHDjM2IrV0esywP91WVmzFHOaaZm95zo4+sc3NYDirjPuo0iXuN+fSdGTO65yARMYj0FglhXiGLtmvfsU9sWKc8lZZO6VZn8W9KQBIABhojOHFvGsE+cGqxIH64r9TYJw8pzSgBcnzhPV7a5ZY9xlXouo1M= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:IA0PR10MB7255.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(39860400002)(396003)(346002)(376002)(366004)(136003)(451199021)(921005)(38100700002)(8676002)(8936002)(7416002)(5660300002)(6512007)(6506007)(1076003)(26005)(186003)(2906002)(2616005)(36756003)(83380400001)(107886003)(86362001)(316002)(6666004)(478600001)(66556008)(66476007)(4326008)(66946007)(41300700001)(6486002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?wpt324eoDtRPqHdtx7z1H6Brvy2HRomKJDhtYMFkBCjhNMTfz8fov2XMI+Jc?= =?us-ascii?Q?tfC7fG/Djyxq8ORcopEKjAC7srKaFLnGJTYu0UJljZ68GGycxI1Ox35x8nyJ?= =?us-ascii?Q?KaJx/8vJ4DY1BbeBdjo+CkFqMDwV23O0mzB+hBPLv3gVa8aDb/+iGnuktbk7?= =?us-ascii?Q?jbcbwJpnSYw4iG2EJUSKNf6SexgeMv8x6Tc2DH/OEGwzzeTHA29iVuWBzuUC?= =?us-ascii?Q?M2OH4x4MTUHHXuYCuBn3bLIrCNrIUnvKSFc+OZKQml5piydkpNxSj7NDp0Ei?= =?us-ascii?Q?C/KgJljniq4obbwB5apSPO+PhsLgTdti1YRige122POGj68EHp1VRJuQVN9Q?= =?us-ascii?Q?Xjo7I/wqYIm5voOp0wfygLHKUx23fGXV/9VbqGm0zMMWFuA1qDBjYDtjs/9h?= =?us-ascii?Q?7UUXHtDHbu/yh1VFdADI24ZVGfjgXUNrBVomoDWDT8+bon9KSpPHwLMExewN?= =?us-ascii?Q?5XCiY3mpxGtgGDZh+RRACBd2vMmmM04Aq8a0iPVlSmecuqDJOamqeKc1M5vd?= =?us-ascii?Q?EJlaw9duwk2dGp45EEN4j7tmXWZJ7y1lllGgC3Jfb9MXsSKuX1+7PbzAAfrk?= =?us-ascii?Q?oIJqXVYmDOOmiIvTLY41lrZZIxHAoO4M0WMcC1M1OesLNW4dmdMyfzgmQA/k?= =?us-ascii?Q?C0QVCN1N55ZhPOtTtfWlX9XADglgJXYPN/QqeTnDO8IK68WiWnCBVR57l39w?= =?us-ascii?Q?7QTx7x4T2W1Gjj/8sNeIDD/EvvjYcnu99cQv/XRuDdb3K9VZPuUtMJ8cZN3G?= =?us-ascii?Q?N+JXwRxteM+NV86F9FqW9ueAJrhYfD452eSYt3HW0ttlR4IQpVHlJAG1XXel?= =?us-ascii?Q?gTLXZhpqXjpRKi+ZedqGA/iREnVv7n37Bz3aq2O0gyaM2QG2M1Vtagk4JQgW?= =?us-ascii?Q?+VbL1AJgrRFs2usphlelLpWsMZChaPjc4K5chzhFZG2P049bY/bjbPKHqEOU?= =?us-ascii?Q?oakdwpJ9RKQ514dApWFI+YiPSP2qeEDXrm0bIJGnjph2gshN+vW0pFZd/fu6?= =?us-ascii?Q?frhbCXQhdXUIcuaCkP/Toaobccr6gXl78/Tp3xZZIRfcf84JOfbSXKYcgnVH?= =?us-ascii?Q?T7J1gIBNgffId4YMh4Npzf9t9PdZGHqUdX1EgH07Udv6F191srVF3/GCM304?= =?us-ascii?Q?agBOGPEWhWY2/pG++9Yaip8puEVCWz62hRFBPqEnGdrP3RyneDM6TvdD3pPR?= =?us-ascii?Q?1gin5DH2OXR1khv1DoCsE/2Hd+23IeE9E5Yb1sjpH/hOI55XkUtuD6EgSyRz?= =?us-ascii?Q?0Rxwik9aPP5DtupzMYudlp1y0osJkFMH6HT9HBa+F+RKkEYJZ52Y7HWVqRFg?= =?us-ascii?Q?gPSjLeg5dqX9g/B/9cDl0y7yXsOaVOSykUcQGExx2emeTvNaB9jv5E668IRj?= =?us-ascii?Q?Pg0m0aIBarwPaQ2nX0HeNKTR+wIiDqfkgCJ0yBVcUKDRiZ3JNB9hHLTzvuTl?= =?us-ascii?Q?ae6d56jrspDxsERIowXYN/WoNuE+V42DZn8XWCx7b3rtfcE/7ZBz4XdCGGfE?= =?us-ascii?Q?2YMwa5Zv6pf1JQOxkx4/25aF3QJi/CSU5oyKdrqcdQvS3SW5tMOKPsGqSQoI?= =?us-ascii?Q?O70QTzKxEvVfAPTnavt6NNyx45F2TVZXRwE4dDH7v4kL13TFUsrEy1Td94Ae?= =?us-ascii?Q?PQ=3D=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: =?us-ascii?Q?tFpxXG9FOAM0WSuIP7RwqoWvdlGUHtTCGJpE8C2YYNUXWPisUR6soDqhx0lu?= =?us-ascii?Q?g4XssJmRHqpzA7YxGELmYtz5s2nIgXVW0m9o3Xmw2WJUw9vdpZi/wnmlJzva?= =?us-ascii?Q?VC4mbA9xbLcfnjX+z00/j6nex8bj/U1DDLxcwh/K667XZBct7otivKQYrpQY?= =?us-ascii?Q?wsn9pOpxcVY50a0zgykDNplMuvEh1zAJkxtIq7jLwJ+iZ98ZM69edJBXcpYD?= =?us-ascii?Q?5q8wr8rGXYbZKmUism4uj0pK8fOhhK3fBm7kXsDUvXJfZjIV8QwGbYGZkg80?= =?us-ascii?Q?r5mKEj/fiBsf2nHl5Lh4Obbdy/06bZZMhxjNAoCIl8ZFkRYTF0+0oHDuny38?= =?us-ascii?Q?tVNBcGuCCWnnOKt7n0aIrD+h8og2RPSdqsd+QMpOLsTeG53wh1q7hWpHT9Lf?= =?us-ascii?Q?nVYHYJvS9n6jzgQKuDvbSzhJnaYj7MFVI40AjSA4tDkAV/4eH/5EZwPzZttD?= =?us-ascii?Q?PpWv+CdrFDF2+YSsDcd0XqWHEaT+NOgSiA8HgMvjJvLQAqHAC2TnvheBSK5t?= =?us-ascii?Q?hilTJXFwGP/rcejNudvX/hseKMFJzLOo9y9A7xRIhTMuC71J6/I20Eff0LuW?= =?us-ascii?Q?sx/pFCmBiCv+vqq46KshdL9UyLk/JfrUsPVT+kTv/zG/KITu2wpEGge7S6u6?= =?us-ascii?Q?E412G6vXlDsIHnyQsgExxrtR59SqkdNKqUsaZBg+Iou+ipYrt1Ibr5WH/am7?= =?us-ascii?Q?msFanLY1DFL3H89yhR6IFFbqSVOTnUhHoY+WfjSJ2DE1q1WkF63dVVMdJ5lf?= =?us-ascii?Q?43WledC6RF1iVTEnovXh92IJ9VlJhR3NREf0mJJnjQlqEYeQh91cIHPid0xJ?= =?us-ascii?Q?iqhIRNJoAJUdwGPNuGyyEGXYHr5ogl6/MUgVLUMD7LMzv80u/904TWj5qwlW?= =?us-ascii?Q?ZcMnSRdJ5nnnnftia0XycRDAai7I1kGrWbj7V1f8mFXUc2/1mIV6ELpSHfny?= =?us-ascii?Q?CNGxqhvqOmAvXa+UapOsFDs3QSYLOiOYGHng9ewt+v4qhxWUwTryKoDnqZZr?= =?us-ascii?Q?1JDW7Yu4snOtgRi2qsBe5aGb8bHoBZkmLo8o37iT1A+5zKYZeOYqHWnqY8PT?= =?us-ascii?Q?+/syLTFj?= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: b7d4cb17-79d4-4948-7d8b-08db5a6f7362 X-MS-Exchange-CrossTenant-AuthSource: IA0PR10MB7255.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 May 2023 02:51:32.8068 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 0qprVmQgHAQ+9ypZb81ycBgDl4qalQAHM8g2Itmcvi3tUYdW1MsKDLP/I8Ovy8MfsGWTZjrnw3dCNILxDnXqQ0SAyY1Mv9Kj4VxFVRJIiW8= X-MS-Exchange-Transport-CrossTenantHeadersStamped: CO6PR10MB5620 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.254,Aquarius:18.0.957,Hydra:6.0.573,FMLib:17.11.170.22 definitions=2023-05-21_18,2023-05-17_02,2023-02-09_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 spamscore=0 malwarescore=0 adultscore=0 mlxscore=0 bulkscore=0 suspectscore=0 mlxlogscore=999 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2304280000 definitions=main-2305220022 X-Proofpoint-GUID: PXD3Gu8djwdr2-27Q1SgyzfwCK2FY3yX X-Proofpoint-ORIG-GUID: PXD3Gu8djwdr2-27Q1SgyzfwCK2FY3yX Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" When switching from kthreads to vhost_tasks two bugs were added: 1. The vhost worker tasks's now show up as processes so scripts doing ps or ps a would not incorrectly detect the vhost task as another process. 2. kthreads disabled freeze by setting PF_NOFREEZE, but vhost tasks's didn't disable or add support for them. To fix both bugs, this switches the vhost task to be thread in the process that does the VHOST_SET_OWNER ioctl, and has vhost_worker call get_signal to support SIGKILL/SIGSTOP and freeze signals. Note that SIGKILL/STOP support is required because CLONE_THREAD requires CLONE_SIGHAND which requires those 2 signals to be suppported. This a modified version of patch originally written by Linus which handles his review comment to himself to rename ignore_signals to block_signals to better represent what it now does. And it includes a change to vhost_worker() to support SIGSTOP/KILL and freeze, and it drops the wait use per Oleg's review comment that it's no longer needed when using CLONE_THREAD. Fixes: 6e890c5d5021 ("vhost: use vhost_tasks for worker threads") Signed-off-by: Mike Christie --- drivers/vhost/vhost.c | 17 ++++++++++++++++- include/linux/sched/task.h | 2 +- kernel/fork.c | 12 +++--------- kernel/signal.c | 1 + kernel/vhost_task.c | 16 ++++------------ 5 files changed, 25 insertions(+), 23 deletions(-) diff --git a/drivers/vhost/vhost.c b/drivers/vhost/vhost.c index a92af08e7864..bf83e9340e40 100644 --- a/drivers/vhost/vhost.c +++ b/drivers/vhost/vhost.c @@ -338,6 +338,7 @@ static int vhost_worker(void *data) struct vhost_worker *worker =3D data; struct vhost_work *work, *work_next; struct llist_node *node; + bool dead =3D false; =20 for (;;) { /* mb paired w/ kthread_stop */ @@ -349,8 +350,22 @@ static int vhost_worker(void *data) } =20 node =3D llist_del_all(&worker->work_list); - if (!node) + if (!node) { schedule(); + /* + * When we get a SIGKILL our release function will + * be called. That will stop new IOs from being queued + * and check for outstanding cmd responses. It will then + * call vhost_task_stop to tell us to return and exit. + */ + if (!dead && signal_pending(current)) { + struct ksignal ksig; + + dead =3D get_signal(&ksig); + if (dead) + clear_thread_flag(TIF_SIGPENDING); + } + } =20 node =3D llist_reverse_order(node); /* make sure flag is seen after deletion */ diff --git a/include/linux/sched/task.h b/include/linux/sched/task.h index 537cbf9a2ade..249a5ece9def 100644 --- a/include/linux/sched/task.h +++ b/include/linux/sched/task.h @@ -29,7 +29,7 @@ struct kernel_clone_args { u32 io_thread:1; u32 user_worker:1; u32 no_files:1; - u32 ignore_signals:1; + u32 block_signals:1; unsigned long stack; unsigned long stack_size; unsigned long tls; diff --git a/kernel/fork.c b/kernel/fork.c index ed4e01daccaa..9e04ab5c3946 100644 --- a/kernel/fork.c +++ b/kernel/fork.c @@ -2338,14 +2338,10 @@ __latent_entropy struct task_struct *copy_process( p->flags |=3D PF_KTHREAD; if (args->user_worker) p->flags |=3D PF_USER_WORKER; - if (args->io_thread) { - /* - * Mark us an IO worker, and block any signal that isn't - * fatal or STOP - */ + if (args->io_thread) p->flags |=3D PF_IO_WORKER; + if (args->block_signals) siginitsetinv(&p->blocked, sigmask(SIGKILL)|sigmask(SIGSTOP)); - } =20 if (args->name) strscpy_pad(p->comm, args->name, sizeof(p->comm)); @@ -2517,9 +2513,6 @@ __latent_entropy struct task_struct *copy_process( if (retval) goto bad_fork_cleanup_io; =20 - if (args->ignore_signals) - ignore_signals(p); - stackleak_task_init(p); =20 if (pid !=3D &init_struct_pid) { @@ -2861,6 +2854,7 @@ struct task_struct *create_io_thread(int (*fn)(void *= ), void *arg, int node) .fn_arg =3D arg, .io_thread =3D 1, .user_worker =3D 1, + .block_signals =3D 1, }; =20 return copy_process(NULL, 0, node, &args); diff --git a/kernel/signal.c b/kernel/signal.c index 8050fe23c732..a0f00a078cbb 100644 --- a/kernel/signal.c +++ b/kernel/signal.c @@ -2891,6 +2891,7 @@ bool get_signal(struct ksignal *ksig) =20 return ksig->sig > 0; } +EXPORT_SYMBOL_GPL(get_signal); =20 /** * signal_delivered - called after signal delivery to update blocked signa= ls diff --git a/kernel/vhost_task.c b/kernel/vhost_task.c index b7cbd66f889e..7a2d7d9fe772 100644 --- a/kernel/vhost_task.c +++ b/kernel/vhost_task.c @@ -31,22 +31,13 @@ static int vhost_task_fn(void *data) */ void vhost_task_stop(struct vhost_task *vtsk) { - pid_t pid =3D vtsk->task->pid; - set_bit(VHOST_TASK_FLAGS_STOP, &vtsk->flags); wake_up_process(vtsk->task); /* * Make sure vhost_task_fn is no longer accessing the vhost_task before - * freeing it below. If userspace crashed or exited without closing, - * then the vhost_task->task could already be marked dead so - * kernel_wait will return early. + * freeing it below. */ wait_for_completion(&vtsk->exited); - /* - * If we are just closing/removing a device and the parent process is - * not exiting then reap the task. - */ - kernel_wait4(pid, NULL, __WCLONE, NULL); kfree(vtsk); } EXPORT_SYMBOL_GPL(vhost_task_stop); @@ -75,13 +66,14 @@ struct vhost_task *vhost_task_create(int (*fn)(void *),= void *arg, const char *name) { struct kernel_clone_args args =3D { - .flags =3D CLONE_FS | CLONE_UNTRACED | CLONE_VM, + .flags =3D CLONE_FS | CLONE_UNTRACED | CLONE_VM | + CLONE_THREAD | CLONE_SIGHAND, .exit_signal =3D 0, .fn =3D vhost_task_fn, .name =3D name, .user_worker =3D 1, .no_files =3D 1, - .ignore_signals =3D 1, + .block_signals =3D 1, }; struct vhost_task *vtsk; struct task_struct *tsk; --=20 2.25.1