Received: by 2002:ac0:a5a7:0:0:0:0:0 with SMTP id m36-v6csp6031882imm; Mon, 23 Jul 2018 10:11:09 -0700 (PDT) X-Google-Smtp-Source: AAOMgpf19asp3bbdwpu+e/Rb/Pv7itI0pElqEUZ7hvzqu0tNuzgEjeg1Ozu1u8rJRWIt7GydxKyJ X-Received: by 2002:a63:a5c:: with SMTP id z28-v6mr12917320pgk.209.1532365869873; Mon, 23 Jul 2018 10:11:09 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1532365869; cv=none; d=google.com; s=arc-20160816; b=o33eTzEDq1Desn3mmSkzMuin70nzW0VRvzQW5tA5O56N1krn93XtaN4hDWIJgPPe2u D10DFAtLktYVVyK3ro791Is942v1YcmxEKXI5/tkePMK9pf76BGntPQOvIoopfwcF8De roYE8HJnQZIauOSkFNpp3/64M9y2d3gVYT+OEuIytn200v8MTrGKFkvjI5G2YVsS5ZrK 2ev8+hmbZlCbIROR6+PTtZRzAkoA7JgG7TckJdzxgtKgYCOKXlA/2RhAg/o9TjyXuobv k8Y6UgYgUH0Wm3V+FIxG5k6JJNvyw9mLhcLrREowSwehuHZXDByUYbgKH2sCqh6FKPNe nSkw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:user-agent:in-reply-to :content-disposition:mime-version:references:message-id:subject:cc :to:from:date:dkim-signature:arc-authentication-results; bh=buXFvWz+Fi1QxQd+KPIni3OW4250LC2k6tiaUSOWRJo=; b=w7QhAPLDCRb82EHbCu1Ccv/0Pg4E57s8UkPxsTm4ZJfI/e1Mp7NWVFi2tCwTGEFwKA aGraHGv/nympFxWvrsteKGaXs/6TgSJkYXOGZeLy/qJEIg99XHH+JxGpuDgOZl5Ikmx5 eOtSFJxG0BBgyBGec8l/GUhN3SvYBtqLe1jN/hs74KvAoEz9wC5/h8/yYZHaQukuMgUg eVKLH1JegV626gauer8WHzs6yF4AkOCJC6LDtEyxd5OR7v/QMBCr/GLoayF3KxEXWv4E 1DZBeodNMLuGsPXPr6kmPcVidsnCJfsCUzV/bfvpRTzmK5nEi2GHK5hJ6ycf8Q6PKCu/ Njlg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=OQFwawk+; 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 l26-v6si9039039pfj.188.2018.07.23.10.10.55; Mon, 23 Jul 2018 10:11:09 -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=@gmail.com header.s=20161025 header.b=OQFwawk+; 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 S2388791AbeGWSL0 (ORCPT + 99 others); Mon, 23 Jul 2018 14:11:26 -0400 Received: from mail-pg1-f193.google.com ([209.85.215.193]:36608 "EHLO mail-pg1-f193.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2388628AbeGWSL0 (ORCPT ); Mon, 23 Jul 2018 14:11:26 -0400 Received: by mail-pg1-f193.google.com with SMTP id s7-v6so828948pgv.3 for ; Mon, 23 Jul 2018 10:09:16 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=date:from:to:cc:subject:message-id:references:mime-version :content-disposition:in-reply-to:user-agent; bh=buXFvWz+Fi1QxQd+KPIni3OW4250LC2k6tiaUSOWRJo=; b=OQFwawk+8wdmEtAv6X1WXM63vbzTytrrGrCqvHbArae4HZ8GqOhF73K9U+NbufjgMq o36PNGI59UXiQ2Ta2RFCgnpCIfh6AW8c2feUqtlRdiWM3T40PJcMA3ze7i48KF8xVVg4 oOkaVkjSxcYMFtiM/dUNP/1JXSUsJADooVj5tPLRHklu6TnWNL+3P/KQQfZ2Jxv51ujl zDAt817gf5VybXAktAw65+7P3M6dAxVUUr19IMwhTV/YGkQrYg5exWgfFBj8HeBx1Mza SzCVTHYdLpg4DJiFQT10nniZ/Vbc+DABGDRsbWQ8hwgp430Ni5wsnbp0DTUuxjN5+o7s P8Kg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to:user-agent; bh=buXFvWz+Fi1QxQd+KPIni3OW4250LC2k6tiaUSOWRJo=; b=O1EI0LFv68589zNu1ujqMub5WpRPkXlxpAia2/vHWXHi/y1Vr2TN0psL0aMcwdRduE F2uNi0gv6+znpQ3B2Snikg6mIyvyOH2OrsykGh/sah/rk1EL+WSfMvcESQRd+5ycS8Dv e0l1Cb4zT5YL9IhRbCEqwe4ieDGyUPB0jijpPBgfeHOqyGCFZJoabro4jiO5eCuQ9IOg ygxfwlu35fkdGRNdexnYzaqSrcXtttdchcMY01y1J6d9seVO2em/OZXO2PcuZ/QhHidl OxNLZEETJyLr4oCGl2PIRUVWWsqwjxOQOrXIV2x/fRP1Hcx0SDoHjHME+ZGL6sbH0dpB XnQA== X-Gm-Message-State: AOUpUlGNcOJ76kWlbK/OgRoolDRKtUC7BogUi9T/4onSnSmDXbqi3l/X UZDeVuOytpHfDZFjdgjNzE8A5jlQ X-Received: by 2002:a63:1d22:: with SMTP id d34-v6mr13030198pgd.133.1532365756214; Mon, 23 Jul 2018 10:09:16 -0700 (PDT) Received: from dtor-ws ([2620:0:1000:1511:8de6:27a8:ed13:2ef5]) by smtp.gmail.com with ESMTPSA id j191-v6sm15804253pfc.136.2018.07.23.10.09.14 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Mon, 23 Jul 2018 10:09:15 -0700 (PDT) Date: Mon, 23 Jul 2018 10:09:13 -0700 From: Dmitry Torokhov To: Anton Vasilyev Cc: Greg Kroah-Hartman , Guenter Roeck , Samuel Holland , Pan Bian , linux-kernel@vger.kernel.org, ldv-project@linuxtesting.org Subject: Re: [PATCH] firmware: vpd: Fix section enabled flag on vpd_section_destroy Message-ID: <20180723170913.GA100814@dtor-ws> References: <20180723164857.24460-1-vasilyev@ispras.ru> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20180723164857.24460-1-vasilyev@ispras.ru> User-Agent: Mutt/1.9.2 (2017-12-15) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, Jul 23, 2018 at 07:48:57PM +0300, Anton Vasilyev wrote: > static struct ro_vpd and rw_vpd are initialized by vpd_sections_init() > in vpd_probe() based on header's ro and rw sizes. > In vpd_remove() vpd_section_destroy() performs deinitialization based > on enabled flag, which is set to true by vpd_sections_init(). > This leads to call of vpd_section_destroy() on already destroyed section > for probe-release-probe-release sequence if first probe performs > ro_vpd initialization and second probe does not initialize it. > > The patch adds changing enabled flag on vpd_section_destroy. > > Found by Linux Driver Verification project (linuxtesting.org). > > Signed-off-by: Anton Vasilyev Good find. Reviewed-by: Dmitry Torokhov > --- > drivers/firmware/google/vpd.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/drivers/firmware/google/vpd.c b/drivers/firmware/google/vpd.c > index e9db895916c3..5347c17c7108 100644 > --- a/drivers/firmware/google/vpd.c > +++ b/drivers/firmware/google/vpd.c > @@ -246,6 +246,7 @@ static int vpd_section_destroy(struct vpd_section *sec) > sysfs_remove_bin_file(vpd_kobj, &sec->bin_attr); > kfree(sec->raw_name); > memunmap(sec->baseaddr); > + sec->enabled = false; > } > > return 0; > -- > 2.18.0 > Thanks. -- Dmitry