Received: by 2002:a5d:9c59:0:0:0:0:0 with SMTP id 25csp2413064iof; Wed, 8 Jun 2022 04:35:04 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxpVuQ+bt+Lz+ZGkzQFvtHhZBEzET9UjIwf8R16Sfe33PFW9xeL2oRAQ7ivpUHFGAJTtYiM X-Received: by 2002:a05:6a00:1c8c:b0:51c:4b1e:61b3 with SMTP id y12-20020a056a001c8c00b0051c4b1e61b3mr5511948pfw.65.1654688104721; Wed, 08 Jun 2022 04:35:04 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1654688104; cv=none; d=google.com; s=arc-20160816; b=i458gRIsWjZvQrzokEKTAuLUU5WqzEnsXYfCWaC/+6dLS38r/an347JwOtuQDWftOd rpIutonllKfU+RVVV0IfW4OREk8ocMpbPrI4dQYCp839RVtgI1+uS8SGBUxuRi/QfjkW m3nS6A5Bd5aQPx4TXEz5RJdaiLl7UfBNLwGLgp45oqrfgL0ThGOHTAxlNJBD1aDCr0oh N4SiXU+MmUPeXfg4DdHVR0B3NQaJeS1MltxA1wWP/OIWo2C4z0BhHLdZy2H0jcyDfU/w U3+tTmCCTSogCL3JzDOssVj8dGC62yydlpfY1Xbpb0dxBzPPIHcPDV2gQwyx4lJs6oqu t6AA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:subject:message-id:date:from:in-reply-to :references:mime-version:dkim-signature; bh=AnvhaBz06tLqpDFkO1LB/SToNqbpQX12JMnOhAi2FvU=; b=AUiNdMKlzXxzF6iG52xQpNGQS7BL9bjJakIe+3yMq8ZWycDglGYiS1S2ND4z9Y9xIC rSt+7bGky8+N/HlBi5OOuWkyiYK4/kaU9mqRqcYDDLTBbA6zdMl5VE3N74dzx8M1553x JmPjAIE1EdNgg/7y4O2FvhXBejB1MIefgl+2AxhIxPGnJ9KjHc6rM3monfDueczYSd9Y ZOaQsv9mzhTAw9pGdMxXcmqvYNnYGmIbGxTrL348hsWgNgIp6+saKEzn2KtUKpY6hbmv bUBsqrJ9xsqXG4FjuMNbEzGyeJI0pMrebhv8dp/0AYpGw3tq1X1i0wbsb074Vp9Ktis+ NPRQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20210112 header.b=lgCPy087; spf=softfail (google.com: domain of transitioning linux-kernel-owner@vger.kernel.org does not designate 23.128.96.19 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 lindbergh.monkeyblade.net (lindbergh.monkeyblade.net. [23.128.96.19]) by mx.google.com with ESMTPS id np9-20020a17090b4c4900b001e26f73d372si34876693pjb.58.2022.06.08.04.35.04 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 08 Jun 2022 04:35:04 -0700 (PDT) Received-SPF: softfail (google.com: domain of transitioning linux-kernel-owner@vger.kernel.org does not designate 23.128.96.19 as permitted sender) client-ip=23.128.96.19; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20210112 header.b=lgCPy087; spf=softfail (google.com: domain of transitioning linux-kernel-owner@vger.kernel.org does not designate 23.128.96.19 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by lindbergh.monkeyblade.net (Postfix) with ESMTP id C8DC814FC80; Wed, 8 Jun 2022 03:59:43 -0700 (PDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S237809AbiFHK73 (ORCPT + 99 others); Wed, 8 Jun 2022 06:59:29 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:56572 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S237724AbiFHK70 (ORCPT ); Wed, 8 Jun 2022 06:59:26 -0400 Received: from mail-ed1-x533.google.com (mail-ed1-x533.google.com [IPv6:2a00:1450:4864:20::533]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 28B2CCE07; Wed, 8 Jun 2022 03:59:25 -0700 (PDT) Received: by mail-ed1-x533.google.com with SMTP id c2so26518911edf.5; Wed, 08 Jun 2022 03:59:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=AnvhaBz06tLqpDFkO1LB/SToNqbpQX12JMnOhAi2FvU=; b=lgCPy087oTNF+EaAjQOJV5gkK5p/TcltUniSAPU9McjdUoBL4X33kbh3fn+oU+8nSq 40l348mJH+rDrLTZPJ67957NPpWGzLtgAgCx4MakMH9dhjiFJ9caT9Pc1sZof14L3amM Gs1ADAxsN79MKH3RzjG3lz7LU7y5+dlFgrJECQ60wabMd4ey8Bt4+tTyRWT3/0PqLMhd SaJJYlblQy7ZTmdJuoZJ3kn+pve9c7I7O+gPHtkcUMXtrpl4rfNhMpN01kVXBpkr98pL +G00qDUlQ97Acvjs24Z9gljLCyPDdO2KdzS76bzNmHOuurXz1lW0GhHGbIJW1UviTPVU t8og== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=AnvhaBz06tLqpDFkO1LB/SToNqbpQX12JMnOhAi2FvU=; b=s3SerdIdv0wLvBSQLWAdaXah4a4EYBFtbb44NKy4nq8nRV/5ztY2bliJF/Zth6mcO7 IQRe6IIvF4EFxU3eIOLjSo75emk9tj47JmsH03k+X8Qk3h9VWrz4tdT1eCJ6IcB4QkKP 7mQh2uF/SmIpXyKujBFYzdjyQ5Jjui2eSb3mQP3rAWDsPrWJwk1By41mMhI5beYtppyt N1POP73a6R4gi8SDG+HOd8Kv3I8mI6wTEQOIkjHw1pXDERqA7w8gmDCubX9AYjuJCKzW BMGrvc2RYxeiBmo03++iqGnQbWas02cCwhS9NRjIut5LJoUsNle05lrg9InvRDZqWUtC 0F5w== X-Gm-Message-State: AOAM530dyIeNXu3I9EDHtv55vKSsK2Tu5sTNfys0MRR3NpM/gEYplcs2 UN4fsbmvqaUD4BJXFuoCgArHmF2N0X5mj7ivrPU= X-Received: by 2002:aa7:c396:0:b0:42d:8b86:a8dc with SMTP id k22-20020aa7c396000000b0042d8b86a8dcmr37816609edq.54.1654685963734; Wed, 08 Jun 2022 03:59:23 -0700 (PDT) MIME-Version: 1.0 References: <20220608011712.2371-1-xiaohuizhang@ruc.edu.cn> In-Reply-To: <20220608011712.2371-1-xiaohuizhang@ruc.edu.cn> From: Andy Shevchenko Date: Wed, 8 Jun 2022 12:58:47 +0200 Message-ID: Subject: Re: [PATCH 1/1] platform/x86/intel: Fix uninitialized entry in pmt_crashlog_probe To: Xiaohui Zhang Cc: "David E . Box" , Hans de Goede , Mark Gross , Platform Driver , Linux Kernel Mailing List Content-Type: text/plain; charset="UTF-8" X-Spam-Status: No, score=-1.7 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,RDNS_NONE, SPF_HELO_NONE,T_SCC_BODY_TEXT_LINE autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, Jun 8, 2022 at 9:45 AM Xiaohui Zhang wrote: > > Similar to the handling of pmt_telem_probe in commit 2cdfa0c20d58 > ("platform/x86/intel: Fix 'rmmod pmt_telemetry' panic"), we thought > a patch might be needed here as well. > > The probe function, pmt_crashlog_probe(), adds an entry for devices even if > they have not been initialized. This results in the array of initialized > devices containing both initialized and uninitialized entries. This > causes a panic in the remove function, pmt_crashlog_remove() which expects > the array to only contain initialized entries. > > Only use an entry when a device is initialized. ... > auxiliary_set_drvdata(auxdev, priv); > > for (i = 0; i < intel_vsec_dev->num_resources; i++) { > - struct intel_pmt_entry *entry = &priv->entry[i].entry; > + struct intel_pmt_entry *entry = &priv->entry[priv->num_entries].entry; This requires more explanation, what do the entry and the i mean in the below call? Why is using the same entry over all resources fine? num_entries as an index is pointing out of bounds, is that what was really expected (first free entry?)? > ret = intel_pmt_dev_create(entry, &pmt_crashlog_ns, intel_vsec_dev, i); > if (ret < 0) -- With Best Regards, Andy Shevchenko