All of lore.kernel.org
 help / color / mirror / Atom feed
From: Rosen Penev <rosenp@gmail.com>
To: "Stuart Hayes" <stuart.w.hayes@gmail.com>,
	"Hans de Goede" <hansg@kernel.org>,
	"Ilpo Järvinen" <ilpo.jarvinen@linux.intel.com>,
	"Doug Warzecha" <Douglas_Warzecha@dell.com>,
	"Andrew Morton" <akpm@osdl.org>,
	"Andy Shevchenko" <andriy.shevchenko@linux.intel.com>
Cc: platform-driver-x86@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: [PATCH 0/5] platform/x86: dell: dcdbas: Fix SMI completion wait and buffer handling
Date: Fri, 13 Nov 2026 22:17:53 -0800	[thread overview]
Message-ID: <cover.1794633178.git.rosenp@gmail.com> (raw)

Fixes for dcdbas.

Patch 1 fixes the host control SMI wait for types 2 and 3, which the
compiler removed entirely because the status was a plain memory read.
Patches 2 and 3 fix the SMI buffer lifetime on unbind and module
removal. Patch 4 validates the firmware-provided WSMT buffer
description. Patch 5 converts the type 1 wait to
read_poll_timeout_atomic() as well.

These patches were developed with the help of an AI coding assistant
(Claude Opus 5.5): it reviewed the drivers, found the issues and drafted
the fixes and changelogs. I reviewed every change and I am responsible
for them.

All patches build cleanly with W=1.

Tested on a Dell Precision M4800 running v7.2.15, using the equivalent
backports built as out-of-tree modules:
the driver probes, and growing smi_data_buf_size and then unloading and
reloading dcdbas with dell-smbios on top is clean, with the buffer freed
on remove. The host control SMI (only used at power-off) and the WSMT
paths were not exercised.


Rosen Penev (5):
  platform/x86: dell: dcdbas: Actually wait for the host control SMI
  platform/x86: dell: dcdbas: Suppress bind attributes of the platform
    driver
  platform/x86: dell: dcdbas: Release the SMI buffer in remove
  platform/x86: dell: dcdbas: Validate the WSMT buffer description
  platform/x86: dell: dcdbas: Use read_poll_timeout_atomic() for the
    type 1 SMI

 drivers/platform/x86/dell/dcdbas.c | 80 ++++++++++++++++++------------
 drivers/platform/x86/dell/dcdbas.h |  1 -
 2 files changed, 49 insertions(+), 32 deletions(-)


base-commit: 2800868f63227c8237d70c41e70d441c919620d6
-- 
2.56.0


             reply	other threads:[~2026-11-14  6:18 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-11-14  6:17 Rosen Penev [this message]
2026-11-14  6:17 ` [PATCH 1/5] platform/x86: dell: dcdbas: Actually wait for the host control SMI Rosen Penev
2026-11-14  6:17 ` [PATCH 2/5] platform/x86: dell: dcdbas: Suppress bind attributes of the platform driver Rosen Penev
2026-11-14  6:17 ` [PATCH 3/5] platform/x86: dell: dcdbas: Release the SMI buffer in remove Rosen Penev
2026-11-14  6:17 ` [PATCH 4/5] platform/x86: dell: dcdbas: Validate the WSMT buffer description Rosen Penev
2026-11-14  6:17 ` [PATCH 5/5] platform/x86: dell: dcdbas: Use read_poll_timeout_atomic() for the type 1 SMI Rosen Penev

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=cover.1794633178.git.rosenp@gmail.com \
    --to=rosenp@gmail.com \
    --cc=Douglas_Warzecha@dell.com \
    --cc=akpm@osdl.org \
    --cc=andriy.shevchenko@linux.intel.com \
    --cc=hansg@kernel.org \
    --cc=ilpo.jarvinen@linux.intel.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=platform-driver-x86@vger.kernel.org \
    --cc=stuart.w.hayes@gmail.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.