Received: by 2002:a25:7ec1:0:0:0:0:0 with SMTP id z184csp3851634ybc; Thu, 21 Nov 2019 15:00:36 -0800 (PST) X-Google-Smtp-Source: APXvYqybFRjttg52wwgXvWu9iHoBsFuo3hiwjUvs0KnWJRgVyvlm1ei1xpwsG+qgi4RpnKTuWEPl X-Received: by 2002:a17:906:1fd5:: with SMTP id e21mr16444525ejt.320.1574377236268; Thu, 21 Nov 2019 15:00:36 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1574377236; cv=none; d=google.com; s=arc-20160816; b=f1pbjEMCKnjtRmaCFJDMeWybg6E6LK4QVtgs4sHTx6YBq4aPcOl93I7qSY8C6DTK8f TyqUlquceUWxKvtWcy8AUxSzLkzF1CYcvJLJBT2p9J/CktTf+fj/O+H3PUxVL7GUziyV b6hkmJO87BYaZsWxJI2xtJE2+K2dGXj04YzIDAdi97VmvpSlsg37gMcCGdjPt2WqiX0O 95HL1ZgRPZYCcY7QjojmXbWehU9E1ot9O7I92G+A6iQo3ij+sj8NmxrTPFHxkDsHusKY IL7C+saZphSmGeS5aLYQDcarA5xnfRpORA8E58Kn967iKmKkDCMtSDUmKUgF20QlGH65 6JHQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:dkim-signature; bh=uN4hyE3BsXplYJBM6a2D+eSFwcm1JgVbWlkvWiQItuM=; b=sl/Qoed4sX65X1Y+36fwfwI8CiC6zIm79DJeMCLK1O2p/0bd/L9T0LaO6x+9G6T/37 vyETnjftG/kgaDS/hEX5gs4wyMGYiBfnBNAXH6++wVjJ3YjICyXYtIrF9sAS1OuXwb5e CpA3ejKGvO4BhNAir+Uy0C2/jJbgEtGGZeqw3vZbQZwqzetvJiD69tEqB8kAGveglIOk uFNoVfExwHq4xI7au1WeQsTE2QCF8MRxqVY6Y1x4bUtiS7NrWUt7GVxSoJx0S0ziWd01 THAH1idHxHUNeKvaohEbuzan9J95XXVxTEzMhH3xsC6zlKRTAN2b3ijTVryzqzOA3XdX 18ZA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=GNXYPv+M; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id r18si1026270eja.211.2019.11.21.15.00.11; Thu, 21 Nov 2019 15:00:36 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=GNXYPv+M; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726664AbfKUW6f (ORCPT + 99 others); Thu, 21 Nov 2019 17:58:35 -0500 Received: from mail-io1-f67.google.com ([209.85.166.67]:40147 "EHLO mail-io1-f67.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726038AbfKUW6f (ORCPT ); Thu, 21 Nov 2019 17:58:35 -0500 Received: by mail-io1-f67.google.com with SMTP id b26so3620076ion.7; Thu, 21 Nov 2019 14:58:33 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=uN4hyE3BsXplYJBM6a2D+eSFwcm1JgVbWlkvWiQItuM=; b=GNXYPv+MoZ6ufzCOmzmZ3FbAGuNxZFHtzj2f+mLFc4MuUsi8YJcOkyliGl2bInzAI/ e4Zy5nUd8r4M/WJuXHH69WsI5BOApmhlhe4xbO1CkywTpGBJvqAzk5kzq+IGGuq+HbPF CVGiIgsEzJNLWPQbB7z904ZoBU9uwh3kvmd0TjuMX3Gx1s+8e7Nps9W2iWA0lNaS/c88 5B7REKcrpUQLMjkze2sYAD9dL0OHLNGUlcd34h7NHg9gVsCVES3P+6tciTQCSy8DuC23 oKWi/dTAt+M5cVXwpI8DInfw8Iznpdpz5JLa23QtpB8QGgoHb+XzGfrmyOtXJyITE9tE /dwg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=uN4hyE3BsXplYJBM6a2D+eSFwcm1JgVbWlkvWiQItuM=; b=tflF5XoMxZOPv6EiYQWSla8GvLGizFjnICYeY3ZBL32FbzRocSnPG828X4l1JQyd4R qb7nXMJTyqU5cAL/xtrexo0mLXS5b8PzeFqm+6HfuuUf8gTGSyp4Z8zldySb8qewWvHY Ee0K6zb+VLHLgg5te9MhYXKo2HqSMRbD+3KJak5YHqi1kuAVsBO7PFGv5RZJuJWQbACf LeHxKESNJ41XPp2kcBS+hZi3036lZmDWR4KOplQVjYQr+Q05sTCkt/XVinXzze+TKMiH zSBsB5QaF5dZwNa1sLGWk1J/R5VMGniswiq+K4dis3rhEON3CWf2Ewn8ybG84dNpTKZR 7UCQ== X-Gm-Message-State: APjAAAUTB3xtsAypHmO1xZrLfxTZmIY0krPLT1jcYSxFbsWBO8+b3y7k ROdnqThtHrPWlaJ6J7KF4nLuoJcXkh4/96O8FyY= X-Received: by 2002:a02:6a02:: with SMTP id l2mr2823388jac.89.1574377112589; Thu, 21 Nov 2019 14:58:32 -0800 (PST) MIME-Version: 1.0 References: <20191120054728.0979695C0FE4@us180.sjc.aristanetworks.com> In-Reply-To: <20191120054728.0979695C0FE4@us180.sjc.aristanetworks.com> From: Dmitry Safonov <0x7f454c46@gmail.com> Date: Thu, 21 Nov 2019 22:58:21 +0000 Message-ID: Subject: Re: [PATCH] ACPI: only free map once in osl.c To: Francesco Ruggeri Cc: lenb@kernel.org, "Rafael J. Wysocki" , open list , linux-acpi@vger.kernel.org Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, 20 Nov 2019 at 05:50, Francesco Ruggeri wrote: > > acpi_os_map_cleanup checks map->refcount outside of acpi_ioremap_lock > before freeing the map. This creates a race condition the can result > in the map being freed more than once. > A panic can be caused by running > > for ((i=0; i<10; i++)) > do > for ((j=0; j<100000; j++)) > do > cat /sys/firmware/acpi/tables/data/BERT >/dev/null > done & > done > > This patch makes sure that only the process that drops the reference > to 0 does the freeing. > > Fixes: b7c1fadd6c2e ("ACPI: Do not use krefs under a mutex in osl.c") > Signed-off-by: Francesco Ruggeri Reviewed-by: Dmitry Safonov <0x7f454c46@gmail.com> Thanks, Dmitry