All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Ilpo Järvinen" <ilpo.jarvinen@linux.intel.com>
To: "Michael J. Ruhl" <michael.j.ruhl@intel.com>
Cc: platform-driver-x86@vger.kernel.org,
	intel-xe@lists.freedesktop.org,
	 Hans de Goede <hdegoede@redhat.com>,
	lucas.demarchi@intel.com,  rodrigo.vivi@intel.com,
	thomas.hellstrom@linux.intel.com,  airlied@gmail.com,
	simona@ffwll.ch, david.e.box@linux.intel.com,
	 stable@vger.kernel.org
Subject: Re: [PATCH v4 01/10] platform/x86/intel/pmt: fix a crashlog NULL pointer access
Date: Wed, 11 Jun 2025 13:42:08 +0300 (EEST)	[thread overview]
Message-ID: <e4f3a1e0-5332-212d-6ad0-8a72dcaf554a@linux.intel.com> (raw)
In-Reply-To: <20250610211225.1085901-2-michael.j.ruhl@intel.com>

On Tue, 10 Jun 2025, Michael J. Ruhl wrote:

> Usage of the intel_pmt_read() for binary sysfs, requires a pcidev.  The
> current use of the endpoint value is only valid for telemetry endpoint
> usage.
> 
> Without the ep, the crashlog usage causes the following NULL pointer
> exception:
> 
> BUG: kernel NULL pointer dereference, address: 0000000000000000
> Oops: Oops: 0000 [#1] SMP NOPTI
> RIP: 0010:intel_pmt_read+0x3b/0x70 [pmt_class]
> Code:
> Call Trace:
>  <TASK>
>  ? sysfs_kf_bin_read+0xc0/0xe0
>  kernfs_fop_read_iter+0xac/0x1a0
>  vfs_read+0x26d/0x350
>  ksys_read+0x6b/0xe0
>  __x64_sys_read+0x1d/0x30
>  x64_sys_call+0x1bc8/0x1d70
>  do_syscall_64+0x6d/0x110
> 
> Augment the inte_pmt_entry to include the pcidev to allow for access to

intel_pmt_entry

> the pcidev and avoid the NULL pointer exception.
> 
> Fixes: 416eeb2e1fc7 ("platform/x86/intel/pmt: telemetry: Export API to read telemetry")
> Cc: <stable@vger.kernel.org>
> Signed-off-by: Michael J. Ruhl <michael.j.ruhl@intel.com>
> ---
>  drivers/platform/x86/intel/pmt/class.c | 3 ++-
>  drivers/platform/x86/intel/pmt/class.h | 1 +
>  2 files changed, 3 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/platform/x86/intel/pmt/class.c b/drivers/platform/x86/intel/pmt/class.c
> index 7233b654bbad..d046e8752173 100644
> --- a/drivers/platform/x86/intel/pmt/class.c
> +++ b/drivers/platform/x86/intel/pmt/class.c
> @@ -97,7 +97,7 @@ intel_pmt_read(struct file *filp, struct kobject *kobj,
>  	if (count > entry->size - off)
>  		count = entry->size - off;
>  
> -	count = pmt_telem_read_mmio(entry->ep->pcidev, entry->cb, entry->header.guid, buf,
> +	count = pmt_telem_read_mmio(entry->pcidev, entry->cb, entry->header.guid, buf,
>  				    entry->base, off, count);
>  
>  	return count;
> @@ -252,6 +252,7 @@ static int intel_pmt_populate_entry(struct intel_pmt_entry *entry,
>  		return -EINVAL;
>  	}
>  
> +	entry->pcidev = pci_dev;
>  	entry->guid = header->guid;
>  	entry->size = header->size;
>  	entry->cb = ivdev->priv_data;
> diff --git a/drivers/platform/x86/intel/pmt/class.h b/drivers/platform/x86/intel/pmt/class.h
> index b2006d57779d..f6ce80c4e051 100644
> --- a/drivers/platform/x86/intel/pmt/class.h
> +++ b/drivers/platform/x86/intel/pmt/class.h
> @@ -39,6 +39,7 @@ struct intel_pmt_header {
>  
>  struct intel_pmt_entry {
>  	struct telem_endpoint	*ep;
> +	struct pci_dev		*pcidev;
>  	struct intel_pmt_header	header;
>  	struct bin_attribute	pmt_bin_attr;
>  	struct kobject		*kobj;
> 

-- 
 i.


  parent reply	other threads:[~2025-06-11 10:42 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-06-10 21:12 [PATCH v4 00/10] Crashlog Type1 Version2 support Michael J. Ruhl
2025-06-10 21:12 ` [PATCH v4 01/10] platform/x86/intel/pmt: fix a crashlog NULL pointer access Michael J. Ruhl
2025-06-11  8:12   ` Upadhyay, Tejas
2025-06-11  8:12     ` Upadhyay, Tejas
2025-06-11 10:42   ` Ilpo Järvinen [this message]
2025-06-11 12:40     ` Ruhl, Michael J
2025-06-11 13:29       ` Ilpo Järvinen
2025-06-10 21:12 ` [PATCH v4 02/10] drm/xe: Correct BMG VSEC header sizing Michael J. Ruhl
2025-06-10 21:12 ` [PATCH v4 03/10] platform/x86/intel/pmt: white space cleanup Michael J. Ruhl
2025-06-10 21:12 ` [PATCH v4 04/10] platform/x86/intel/pmt: use guard(mutex) Michael J. Ruhl
2025-06-10 21:12 ` [PATCH v4 05/10] platform/x86/intel/pmt: re-order trigger logic Michael J. Ruhl
2025-06-11 10:46   ` Ilpo Järvinen
2025-06-10 21:12 ` [PATCH v4 06/10] platform/x86/intel/pmt: correct types Michael J. Ruhl
2025-06-11 10:46   ` Ilpo Järvinen
2025-06-10 21:12 ` [PATCH v4 07/10] platform/x86/intel/pmt: decouple sysfs and namespace Michael J. Ruhl
2025-06-10 21:12 ` [PATCH v4 08/10] platform/x86/intel/pmt: add register access helpers Michael J. Ruhl
2025-06-11 10:52   ` Ilpo Järvinen
2025-06-10 21:12 ` [PATCH v4 09/10] platform/x86/intel/pmt: use a version struct Michael J. Ruhl
2025-06-11 11:05   ` Ilpo Järvinen
2025-06-10 21:12 ` [PATCH v4 10/10] platform/x86/intel/pmt: support BMG crashlog Michael J. Ruhl
2025-06-10 21:18 ` ✓ CI.Patch_applied: success for Crashlog Type1 Version2 support (rev4) Patchwork
2025-06-10 21:19 ` ✓ CI.checkpatch: " Patchwork
2025-06-10 21:20 ` ✓ CI.KUnit: " Patchwork
2025-06-10 21:31 ` ✓ CI.Build: " Patchwork
2025-06-10 21:33 ` ✓ CI.Hooks: " Patchwork
2025-06-10 21:35 ` ✓ CI.checksparse: " Patchwork
2025-06-10 22:01 ` ✓ Xe.CI.BAT: " Patchwork
2025-06-11  4:00 ` ✗ Xe.CI.Full: failure " Patchwork
     [not found] <20250610144619.1079056-1-michael.j.ruhl@intel.com>
2025-06-10 14:46 ` [PATCH v4 01/10] platform/x86/intel/pmt: fix a crashlog NULL pointer access Michael J. Ruhl

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=e4f3a1e0-5332-212d-6ad0-8a72dcaf554a@linux.intel.com \
    --to=ilpo.jarvinen@linux.intel.com \
    --cc=airlied@gmail.com \
    --cc=david.e.box@linux.intel.com \
    --cc=hdegoede@redhat.com \
    --cc=intel-xe@lists.freedesktop.org \
    --cc=lucas.demarchi@intel.com \
    --cc=michael.j.ruhl@intel.com \
    --cc=platform-driver-x86@vger.kernel.org \
    --cc=rodrigo.vivi@intel.com \
    --cc=simona@ffwll.ch \
    --cc=stable@vger.kernel.org \
    --cc=thomas.hellstrom@linux.intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.