Received: by 2002:a05:6a10:16a7:0:0:0:0 with SMTP id gp39csp1369554pxb; Fri, 20 Nov 2020 07:56:39 -0800 (PST) X-Google-Smtp-Source: ABdhPJyXO6tN4MI2M4MpP8Qe0X8f185p7NPYmtpL1T4f/S1/uqVapyaVVM2+42RC3a3F5t/3pGr1 X-Received: by 2002:a17:906:374b:: with SMTP id e11mr32413476ejc.339.1605887799548; Fri, 20 Nov 2020 07:56:39 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1605887799; cv=none; d=google.com; s=arc-20160816; b=JJmBS2buA7sribfu89dur4Yx6VHX1FD7xBJSgRamRnyzxd5bPQbmrjUTpI1/FFDIC3 clIXV6VhZuWoZHkDO1z2cbXjtkv3uAMOSW39ANIPJJRpZDEE0QZb5pg4DOtzmcq1XQk/ pWzfcGLYniqFadEeIDdp8PXKcTbjXK4d/rr/g3gsWXXduesheY0oUX54iGo5R6jujV5u A39eKPu/vEOQXV4i03dvq6xGPudVeA6a5vfmpi/FGHENMst0GnSfSMHNF27C5n0shSOj p0jVI6tkNThpne2oHXyT2f6nAhZhnbOenGSgF5HjWm2mSfnFPgCEOj3qbG3VJpBFpsJS csBQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:mime-version:message-id:date:in-reply-to:subject :cc:to:from:user-agent:references; bh=F4riPyS1A2xR2IiAU08TLWH1Y915I9pPHHDto+Kex7U=; b=ATTuwSX6VvTMEDSeqt2ta09vFEhH8CV5Gnx4mnDODNodGnMgWMOeOm4P1hazLI5t8c pt3ovBat5xe4gfW0zy3hNb47RjQfMH9ZyjM6afHvjyrjvpBxMPlp9kQoMtxZRdYHos2F 0+I8hgouZFtRk9cZKQFNpoijV8DDUSlnfKEaNdUGGhT7XkMWzxV+54VuZzf38UwtLF1l gvG/b6mRx4DPLmYk2AfNl+DpNl8VkEam26jYEvHiVgNJgF7EjZnwxeuGWV7K15Ihccyq aW7cef34g+R3e2Q/InMKk5Aal/a94h0dY6ENjOXuL4Hw/el7Gx3I7P3WLUAcT+fVWERa 8x+g== 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; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=arm.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id ho13si1969951ejc.11.2020.11.20.07.56.15; Fri, 20 Nov 2020 07:56:39 -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; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=arm.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729913AbgKTPxy (ORCPT + 99 others); Fri, 20 Nov 2020 10:53:54 -0500 Received: from foss.arm.com ([217.140.110.172]:51500 "EHLO foss.arm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1729562AbgKTPxx (ORCPT ); Fri, 20 Nov 2020 10:53:53 -0500 Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 07B6111D4; Fri, 20 Nov 2020 07:53:53 -0800 (PST) Received: from e113632-lin (e113632-lin.cambridge.arm.com [10.1.194.46]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id C3BA93F70D; Fri, 20 Nov 2020 07:53:51 -0800 (PST) References: <20201118180030.22764-1-valentin.schneider@arm.com> <20201118180030.22764-2-valentin.schneider@arm.com> <613d0854-597e-6ed7-05ca-70310c7b887d@arm.com> User-agent: mu4e 0.9.17; emacs 26.3 From: Valentin Schneider To: James Morse Cc: linux-kernel@vger.kernel.org, x86@kernel.org, Fenghua Yu , Reinette Chatre , Thomas Gleixner , Ingo Molnar , Borislav Petkov , "H. Peter Anvin" Subject: Re: [PATCH 1/2] x86/intel_rdt: Check monitor group vs control group membership earlier In-reply-to: <613d0854-597e-6ed7-05ca-70310c7b887d@arm.com> Date: Fri, 20 Nov 2020 15:53:49 +0000 Message-ID: MIME-Version: 1.0 Content-Type: text/plain Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi James, On 20/11/20 14:53, James Morse wrote: > Hi Valentin, > > On 18/11/2020 18:00, Valentin Schneider wrote: >> A task can only be moved between monitor groups if both groups belong to >> the same control group. This is checked fairly late however: by that time >> we already have appended a task_work() callback. > > (is that a problem? It's needed to do the kfree()) > > >> Check the validity of the move before getting anywhere near task_work >> callbacks. > > This saves the kzalloc()/task_work_add() if it wasn't going to be necessary. > Right, to hopefully better point it out: In such cases (invalid move), __rdtgroup_move_task() would trigger a move_myself() task_work callback without updating {closid, rmid}. Given nothing changed (barring concurrent updates), move_myself() won't do any useful work. The task_work_add() and associated alloc could thus be entirely avoided. > Reviewed-by: James Morse > Thanks! > > Thanks, > > James