Message ID | 20220526203140.339120-1-darcari@redhat.com (mailing list archive) |
---|---|
State | Accepted, archived |
Headers | show |
Series | platform/x86/intel: Fix pmt_crashlog array reference | expand |
On Thu, 2022-05-26 at 16:31 -0400, David Arcari wrote: > The probe function pmt_crashlog_probe() may incorrectly reference > the 'priv->entry array' as it uses 'i' to reference the array instead > of 'priv->num_entries' as it should. This is similar to the problem > that was addressed in pmt_telemetry_probe via commit 2cdfa0c20d58 > ("platform/x86/intel: Fix 'rmmod pmt_telemetry' panic"). > > Cc: "David E. Box" <david.e.box@linux.intel.com> > Cc: Hans de Goede <hdegoede@redhat.com> > Cc: Mark Gross <markgross@kernel.org> > Cc: linux-kernel@vger.kernel.org > Signed-off-by: David Arcari <darcari@redhat.com> > --- > drivers/platform/x86/intel/pmt/crashlog.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/platform/x86/intel/pmt/crashlog.c > b/drivers/platform/x86/intel/pmt/crashlog.c > index 34daf9df168b..ace1239bc0a0 100644 > --- a/drivers/platform/x86/intel/pmt/crashlog.c > +++ b/drivers/platform/x86/intel/pmt/crashlog.c > @@ -282,7 +282,7 @@ static int pmt_crashlog_probe(struct auxiliary_device > *auxdev, > 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; > > ret = intel_pmt_dev_create(entry, &pmt_crashlog_ns, > intel_vsec_dev, i); > if (ret < 0) Reviewed-by: David E. Box <david.e.box@linux.intel.com> Thanks
Hi, On 5/26/22 22:31, David Arcari wrote: > The probe function pmt_crashlog_probe() may incorrectly reference > the 'priv->entry array' as it uses 'i' to reference the array instead > of 'priv->num_entries' as it should. This is similar to the problem > that was addressed in pmt_telemetry_probe via commit 2cdfa0c20d58 > ("platform/x86/intel: Fix 'rmmod pmt_telemetry' panic"). > > Cc: "David E. Box" <david.e.box@linux.intel.com> > Cc: Hans de Goede <hdegoede@redhat.com> > Cc: Mark Gross <markgross@kernel.org> > Cc: linux-kernel@vger.kernel.org > Signed-off-by: David Arcari <darcari@redhat.com> Thank you for your patch, I've applied this patch to my review-hans branch: https://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86.git/log/?h=review-hans Note it will show up in my review-hans branch once I've pushed my local branch there, which might take a while. Once I've run some tests on this branch the patches there will be added to the platform-drivers-x86/for-next branch and eventually will be included in the pdx86 pull-request to Linus for the next merge-window. Regards, Hans > --- > drivers/platform/x86/intel/pmt/crashlog.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/platform/x86/intel/pmt/crashlog.c b/drivers/platform/x86/intel/pmt/crashlog.c > index 34daf9df168b..ace1239bc0a0 100644 > --- a/drivers/platform/x86/intel/pmt/crashlog.c > +++ b/drivers/platform/x86/intel/pmt/crashlog.c > @@ -282,7 +282,7 @@ static int pmt_crashlog_probe(struct auxiliary_device *auxdev, > 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; > > ret = intel_pmt_dev_create(entry, &pmt_crashlog_ns, intel_vsec_dev, i); > if (ret < 0)
diff --git a/drivers/platform/x86/intel/pmt/crashlog.c b/drivers/platform/x86/intel/pmt/crashlog.c index 34daf9df168b..ace1239bc0a0 100644 --- a/drivers/platform/x86/intel/pmt/crashlog.c +++ b/drivers/platform/x86/intel/pmt/crashlog.c @@ -282,7 +282,7 @@ static int pmt_crashlog_probe(struct auxiliary_device *auxdev, 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; ret = intel_pmt_dev_create(entry, &pmt_crashlog_ns, intel_vsec_dev, i); if (ret < 0)
The probe function pmt_crashlog_probe() may incorrectly reference the 'priv->entry array' as it uses 'i' to reference the array instead of 'priv->num_entries' as it should. This is similar to the problem that was addressed in pmt_telemetry_probe via commit 2cdfa0c20d58 ("platform/x86/intel: Fix 'rmmod pmt_telemetry' panic"). Cc: "David E. Box" <david.e.box@linux.intel.com> Cc: Hans de Goede <hdegoede@redhat.com> Cc: Mark Gross <markgross@kernel.org> Cc: linux-kernel@vger.kernel.org Signed-off-by: David Arcari <darcari@redhat.com> --- drivers/platform/x86/intel/pmt/crashlog.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)