Received: by 2002:a05:6a10:8c0a:0:0:0:0 with SMTP id go10csp2679503pxb; Tue, 9 Mar 2021 08:19:53 -0800 (PST) X-Google-Smtp-Source: ABdhPJyoPwwDPJ6Z8b2rcB0zRqWlR4bhdNLbsSWCfqcZuhbZ7KfrbvaBS2ybXlgHt+Lkm48XjL/O X-Received: by 2002:a50:ef11:: with SMTP id m17mr5004681eds.151.1615306793378; Tue, 09 Mar 2021 08:19:53 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1615306793; cv=none; d=google.com; s=arc-20160816; b=GERFRT19ymRUc4HQtJ5PEj4ycG5+bif60H0ahvvEDtoyalL6kd9MfMJiO9Oz+MZoH3 FaR3JcUX5GyPFHsX7AcSikzrqovlz+R22vCpYY8oq/wBN1SFvZolUywXK6+AzNxXTY21 4Q4PQ3QJq6jHZG4vOPJHCa/amUg6bdZj6+JW78fbqtXS45uR2WhYRACJcX348F6TbZhg 2WWkCYPTYSCVf1xmSXCvzpmu3/0Ofm/D1JE6gQLiT4FarOJMksxx/EJ7s9buTSdTLNHx ACxEJx2L75NtN46+hPxA78JBUx6SjVTkwH2rOngELLUjSEKDUEAx77C1Ev1xDEDTei1z kqPQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:content-language :in-reply-to:mime-version:date:message-id:organization:from :references:cc:to:subject; bh=n7diHslsuJkLxRkBPoSSrgUi3bB58wtnTRYwXM6lPnA=; b=wYGtYIdfJ9c24BQfRVyUKtL3Q1yZvAGVzJbIS0avYWv3MHBnzXMmrk7YSJHvap5LWA ArCLE4kR7wNVr9DB3WRUh4QL5c+4Y5x2d5yYsq2uPisIryyIo0GZpQ0GSIZW16E6njp6 oe8Bb6A9ms1vtspkx/YvGrHCFK+2CqE3sy2spvqgJqgEwxjgeOJ5UGYp0VPKAevz0QDv R2oTUXxlgmRl7DLACKnPJMMSfw0s4mYI6BwtjkYPBEF+Gjadn23hEL+Jssv7qk7ptPvc 2/ZQwNQvWBuVbPHO4npzK75dats35RBuvuQrZSUR25zjc0ayrvur4d7pBWoIOIFNCllk Dhkw== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id dg23si9783068edb.519.2021.03.09.08.19.29; Tue, 09 Mar 2021 08:19:53 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231684AbhCIQSb (ORCPT + 99 others); Tue, 9 Mar 2021 11:18:31 -0500 Received: from mx1.riseup.net ([198.252.153.129]:43378 "EHLO mx1.riseup.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231283AbhCIQSU (ORCPT ); Tue, 9 Mar 2021 11:18:20 -0500 Received: from fews2.riseup.net (fews2-pn.riseup.net [10.0.1.84]) (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits)) (Client CN "*.riseup.net", Issuer "Sectigo RSA Domain Validation Secure Server CA" (not verified)) by mx1.riseup.net (Postfix) with ESMTPS id 4Dw0kN2jtnzDq9Y; Tue, 9 Mar 2021 08:18:20 -0800 (PST) X-Riseup-User-ID: B3B763BB19D1706ED9FB4E7D01A5E306F0BD0569ED4B8C90687CA45D32DC6042 Received: from [127.0.0.1] (localhost [127.0.0.1]) by fews2.riseup.net (Postfix) with ESMTPSA id 4Dw0kM4zN0z1xmR; Tue, 9 Mar 2021 08:18:19 -0800 (PST) Subject: Re: patch: do_wait: make PIDTYPE_PID case O(1) instead of O(n) To: Oleg Nesterov Cc: Andrew Morton , "Eric W. Biederman" , Christian Brauner , linux-kernel@vger.kernel.org References: <20210309085641.GB25222@redhat.com> From: Jim Newsome Organization: The Tor Project Message-ID: <383ff3ab-ef13-1c6e-7794-ecfffc6044d4@torproject.org> Date: Tue, 9 Mar 2021 10:18:18 -0600 MIME-Version: 1.0 In-Reply-To: <20210309085641.GB25222@redhat.com> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Thanks for the quick review! On 3/9/21 02:56, Oleg Nesterov wrote: > I'd suggest to put this PIDTYPE_PID code into the new function. Done > No, you don't need rcu lock, tasklist_lock is sufficient Done > This is wrong, you forgot to drop tasklist_lock. Done >> + real_parent = !target->real_parent ? target->parent : >> + target->real_parent; > > Hmm, I don't understand the line above... perhaps it connects to the > question below. I'd mistakenly thought `real_parent` was NULL if the target wasn't being traced (or was being traced by the real parent). It looks like indeed this should always be set, though. > Afaics, parent/real_parent can't be NULL if pid_task() succeeds. Done > Please redo and send V2 ;) Sent with subject "[PATCH v2] do_wait: make PIDTYPE_PID case O(1) instead of O(n)"