From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.9]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 02B853D25BC for ; Wed, 27 May 2026 11:28:09 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=198.175.65.9 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1779881292; cv=none; b=MCCLTIDke1/8iW+Hmiia4yh8GE8UiLfZLFgRkXF7eWsFkVQea0zZOL6jryzVOslLhYpjdkxJXoCu792ImZrQBY9WitzixqR/EH7J1UTDtuWdjGo0ObdIzwgu/eQtMm13mKmMJGyoo1bDxphl5E54bb4nFu7G/uT0Rahj9x9TU5U= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1779881292; c=relaxed/simple; bh=dzzu7FShNiJj22rvjDqqW9GR1djV+A4osNPY2Bx+qa8=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version; b=HJH9tTx8zBXd8Ga+PsP6kU1gLS39FixJTyPBt8KKLNroMMvJcUazFOl61VRisWEqCQ1ErlB33K+LBap1JfoMAG/CrAZjQRyLJltU/4u/TT57KEmYPb/DRbuMRH9UA3KtaFn9cXKexFa5UCMxdEkPmA8D6InU7Mhdqnn/fSgAewk= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=intel.com; spf=pass smtp.mailfrom=intel.com; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b=lR3c7pzv; arc=none smtp.client-ip=198.175.65.9 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=intel.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=intel.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b="lR3c7pzv" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1779881290; x=1811417290; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=dzzu7FShNiJj22rvjDqqW9GR1djV+A4osNPY2Bx+qa8=; b=lR3c7pzvUhxWu1CSFrO/ukHkKFBedWCyGf6dgtEIid1C8ETgJMEi7Plz C6mSyiZAxkOG02vfRhpzXfiBrTFEL/csyNr7UDJ2bY+vMSbGZiEwpcAEX tqzoBsojNceb8KR0vSo/D9Zl2AC44OQhgp044HZNCNkNAS/FgObacewM5 Hq146sz/xZqlDQMgP78G1xCPWbNbnV1sWoLrYa8pjT20t0MZ9l8H5iNU/ x/eET6LQ7mqotdCkVZsg7mcOGpO8qgB4u5y68sgkhQbpnP3SvDZZNelhB hH7H05lzx8ZjI5xsdWFl275C875btywunO+DxmbQ8vxVDnEphMHn1b0Lj g==; X-CSE-ConnectionGUID: bSPIb6q1STKOWlrBquiRuw== X-CSE-MsgGUID: PUUBI0BeQU2y5JMIxkyDkQ== X-IronPort-AV: E=McAfee;i="6800,10657,11798"; a="103381701" X-IronPort-AV: E=Sophos;i="6.24,171,1774335600"; d="scan'208";a="103381701" Received: from orviesa003.jf.intel.com ([10.64.159.143]) by orvoesa101.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 27 May 2026 04:28:09 -0700 X-CSE-ConnectionGUID: Uf59pBOwRk+hHBuJegiW6Q== X-CSE-MsgGUID: D7RpiZTaRFWhM9q2XuFMtg== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.24,171,1774335600"; d="scan'208";a="246238567" Received: from smoticic-mobl1.ger.corp.intel.com (HELO ahunter6-desk) ([10.245.244.228]) by ORVIESA003-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 27 May 2026 04:28:08 -0700 From: Adrian Hunter To: alexandre.belloni@bootlin.com Cc: Frank.Li@nxp.com, linux-i3c@lists.infradead.org, linux-kernel@vger.kernel.org Subject: [PATCH 0/7] i3c: Fix IBI race, address handling, and reconcile DAA Date: Wed, 27 May 2026 14:27:51 +0300 Message-ID: <20260527112758.38530-1-adrian.hunter@intel.com> X-Mailer: git-send-email 2.51.0 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Organization: Intel Finland Oy, Registered Address: c/o Alberga Business Park, 6 krs, Bertel Jungin Aukio 5, 02600 Espoo, Business Identity Code: 0357606 - 4, Domiciled in Helsinki Content-Transfer-Encoding: 8bit Hi Patches 1-2 fix a use-after-free race in the MIPI I3C HCI driver's IBI handling and make IBI teardown resilient to DISEC failures. Patches 3-7 fix address management issues in the I3C core and HCI driver that arise when Dynamic Address Assignment (DAA) does not complete cleanly, culminating in a reconciliation step that detects and resolves inconsistencies between assigned address slots and registered devices. Patches are based on top of: [PATCH V2 0/8] i3c: Hot-Join improvements and MIPI HCI Hot-Join support https://lore.kernel.org/linux-i3c/20260518115520.98335-1-adrian.hunter@intel.com/T which, in turn, applies on top of: [PATCH V4 00/17] i3c: mipi-i3c-hci: DMA abort, recovery and related improvements https://lore.kernel.org/linux-i3c/20260515162621.57719-1-adrian.hunter@intel.com/ Adrian Hunter (7): i3c: mipi-i3c-hci: Fix race in i3c_hci_addr_to_dev() i3c: mipi-i3c-hci: Ignore DISEC failures when disabling IBIs i3c: master: Prevent reuse of dynamic address on device add failure i3c: mipi-i3c-hci: Tolerate i3c_master_add_i3c_dev_locked() failures in DAA i3c: master: Make i3c_master_add_i3c_dev_locked() return void i3c: master: Move DAA API functions after i3c_master_add_i3c_dev_locked() i3c: master: Reconcile dynamic addresses after DAA drivers/i3c/master.c | 268 +++++++++++++++++++++---------- drivers/i3c/master/mipi-i3c-hci/cmd_v1.c | 4 +- drivers/i3c/master/mipi-i3c-hci/cmd_v2.c | 4 +- drivers/i3c/master/mipi-i3c-hci/core.c | 33 +++- drivers/i3c/master/mipi-i3c-hci/hci.h | 1 + drivers/i3c/master/mipi-i3c-hci/ibi.h | 13 +- include/linux/i3c/master.h | 3 +- 7 files changed, 224 insertions(+), 102 deletions(-) Regards Adrian