Received: by 2002:ac0:a5a6:0:0:0:0:0 with SMTP id m35-v6csp3148460imm; Tue, 4 Sep 2018 16:42:30 -0700 (PDT) X-Google-Smtp-Source: ANB0VdZd0yMXNnALXZZTaf5n5RXIgLRAc0y8yNNhjUihvZPP39qn6n6tZHwpOqiwD82E4Hk67ta3 X-Received: by 2002:a63:4b1f:: with SMTP id y31-v6mr33121601pga.14.1536104550863; Tue, 04 Sep 2018 16:42:30 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1536104550; cv=none; d=google.com; s=arc-20160816; b=HrAgDD5mrDGRuVBKEgw0KIFWh25//Bu01wBQdhPWS7FufH4rAH4in6ERJVUTO8HroS zShKTMIKG43lkqOgX5WEdg5MDN5gzhvdsjHBqXUSHNAoJskYYVTtY5JZOYAh0pWOt7I/ XpZxdCQLiYttdAiLPjr6hoblIlEkBPe1tqZt7tgwZyaP8LkLv6sYfHtkOq7HohMAvzoa Jm6/O/3T0zTRrwS2n132Rbe80dk3D0W8QJs6SSigRnsQ2NpZ0tlpdo0Q8MJJ4XaZ3PU/ BkIfaUgUILkgEfbPlGLiWAdnRDdekhIkgQwBikHdCJ9rluoV3z9MJu6sa1yI4lS44S3d ta1w== 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 :references:in-reply-to:mime-version:dkim-signature; bh=l7cfVWEo+s72Cr+f/IYhNLNnmwH47pf9W7a9az82J0Y=; b=GfzGhLc9yCQbOdugX0VuA5GyTJR+6Kij8UfgyfwF7f4vTm5Xr2uJbvM6o0FhnJmSp6 VVwVJ+xiNL4nxgRjDsmAAQc+dH8qZo9l851qlzabr+cgqJD7fGXqsr+RTyqbWKxyG6Wn EAuXqlupB5umkcbEcmVUbycZUgupcbyyQgYIfbRUVOTmseLZfYGxxqY900+BWwLD0N7F tToiYtYSIhTDCWYet+6uL0Z2BLBVeTB5JQITvU+2qOGCNtYRUnmUKERkCjjkxNxD+g0L RJ4ztkKnEa+PkZlUHHdKXu4WaRpdpRTeiharkLAQ+p+PVvQZuknKCovMaidCHvWTcc52 Zeew== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@ettus-com.20150623.gappssmtp.com header.s=20150623 header.b=dD9x0giI; 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 Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id w26-v6si174715pgk.372.2018.09.04.16.42.15; Tue, 04 Sep 2018 16:42:30 -0700 (PDT) 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=@ettus-com.20150623.gappssmtp.com header.s=20150623 header.b=dD9x0giI; 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 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726054AbeIEEIf (ORCPT + 99 others); Wed, 5 Sep 2018 00:08:35 -0400 Received: from mail-yw1-f65.google.com ([209.85.161.65]:44690 "EHLO mail-yw1-f65.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725853AbeIEEIe (ORCPT ); Wed, 5 Sep 2018 00:08:34 -0400 Received: by mail-yw1-f65.google.com with SMTP id l9-v6so1943912ywc.11 for ; Tue, 04 Sep 2018 16:41:10 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ettus-com.20150623.gappssmtp.com; s=20150623; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=l7cfVWEo+s72Cr+f/IYhNLNnmwH47pf9W7a9az82J0Y=; b=dD9x0giIiUICFigz0dtpjAo0Z1+LJYljzzrINoo9BCg/Tlf/PzhqUnQIj05u+VDCM0 DtL5hm4yOKQ6KuUGCZxI9RKLvBh8GANRbCV4OZC92CSXwKCVykSMdW2Vh0bJfRzQ/4zj UaTK+GqQXQcXiLmzqMPKbY8TyrR42oAMnTfMJmKFbvO5rpjh4SHccAAPPEHOgiW1/fKp uVrzgvbw4jnnGmqY+DDvDGE0adFz5YdD2/R+2kN8ZuzBfVCQAoKsCWcfN3lfcPyTPZzW qO+ZgKFAWbdxVkrrFcCudVYZd6CkCJl06FWyFHmgXXkDHzgC0rJVjeou+MtjoiXO6pVf nBxw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=l7cfVWEo+s72Cr+f/IYhNLNnmwH47pf9W7a9az82J0Y=; b=E0JJTtqgGGKNOFRQvY2cLcs7beFFbJsmIbDJUWEyWunY+JYExLYkaWH20ywTkMWO/u j/R7/1oQaonGNUGfv5cQbl9EEI329ay353748Dn6cp2nxN88MQmsfOcZxDDWsDIcB7+A LSA5Vim5jEstT6msfI/NYqRKtdnUCW3BFshEMllo3fozhoZvzv6KuE2J1FzPhVCz/8AN lkv4MAWQSo1xDtqLCZP6TwaI7O8MeazY5/7lcwy5+K5HzI2nqGLsmp1kjUnEqPA46czG Vit+9fI8gb05OtEVKu7LRnU+LQ9TED5oDuznw7iPKpM0yM97vuxruELSJqm7zzKHkhXl T05Q== X-Gm-Message-State: APzg51DliwmFV9QeS8mNGLqx3lblGbc6aMHi/egBvcuExH+wnTp91Xca inIBvQSjAU6ZnuXwNwNp+Pma3P0WamsSLFbNvz4/8A== X-Received: by 2002:a0d:ef01:: with SMTP id y1-v6mr20209976ywe.498.1536104469894; Tue, 04 Sep 2018 16:41:09 -0700 (PDT) MIME-Version: 1.0 Received: by 2002:a0d:e106:0:0:0:0:0 with HTTP; Tue, 4 Sep 2018 16:41:09 -0700 (PDT) In-Reply-To: <20180904212237.3078-2-atull@kernel.org> References: <20180904212237.3078-1-atull@kernel.org> <20180904212237.3078-2-atull@kernel.org> From: Moritz Fischer Date: Tue, 4 Sep 2018 16:41:09 -0700 Message-ID: Subject: Re: [PATCH v2 1/8] fpga: do not access region struct after fpga_region_unregister To: Alan Tull Cc: Jonathan Corbet , Randy Dunlap , Linux Kernel Mailing List , linux-fpga@vger.kernel.org, Linux Doc Mailing List 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 Hi Alan, On Tue, Sep 4, 2018 at 2:22 PM, Alan Tull wrote: > A couple drivers were accessing the region struct after it had been > freed. Save off the pointer to the mgr before the region struct gets > freed. > > Signed-off-by: Alan Tull Acked-by: Moritz Fischer > --- > v2: no change in v2 of patchset > --- > drivers/fpga/dfl-fme-region.c | 4 +++- > drivers/fpga/of-fpga-region.c | 3 ++- > 2 files changed, 5 insertions(+), 2 deletions(-) > > diff --git a/drivers/fpga/dfl-fme-region.c b/drivers/fpga/dfl-fme-region.c > index 0b7e19c..51a5ac2 100644 > --- a/drivers/fpga/dfl-fme-region.c > +++ b/drivers/fpga/dfl-fme-region.c > @@ -14,6 +14,7 @@ > */ > > #include > +#include > #include > > #include "dfl-fme-pr.h" > @@ -66,9 +67,10 @@ static int fme_region_probe(struct platform_device *pdev) > static int fme_region_remove(struct platform_device *pdev) > { > struct fpga_region *region = dev_get_drvdata(&pdev->dev); > + struct fpga_manager *mgr = region->mgr; > > fpga_region_unregister(region); > - fpga_mgr_put(region->mgr); > + fpga_mgr_put(mgr); > > return 0; > } > diff --git a/drivers/fpga/of-fpga-region.c b/drivers/fpga/of-fpga-region.c > index 35fabb8..052a134 100644 > --- a/drivers/fpga/of-fpga-region.c > +++ b/drivers/fpga/of-fpga-region.c > @@ -437,9 +437,10 @@ static int of_fpga_region_probe(struct platform_device *pdev) > static int of_fpga_region_remove(struct platform_device *pdev) > { > struct fpga_region *region = platform_get_drvdata(pdev); > + struct fpga_manager *mgr = region->mgr; > > fpga_region_unregister(region); > - fpga_mgr_put(region->mgr); > + fpga_mgr_put(mgr); > > return 0; > } > -- > 2.7.4 > Thanks, Moritz