From nobody Tue Apr 7 07:09:07 2026 Received: from mail-wr1-f52.google.com (mail-wr1-f52.google.com [209.85.221.52]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id B54223750D9 for ; Sun, 15 Mar 2026 17:17:00 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.221.52 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773595022; cv=none; b=dpqe6T4IbbYCrT43Z5pgvQcMVUeWxktD2yfr0feJaGZu30PssrYJh4tUzqaF+ORJUdxIEIlTnoj18bTKi4eMqI1MsjI0YgX6RP+I9D2rle0PUJS/NYNotW6dZdQxKNynVbnnGDKk5Q5yJpZzBFAfN2ckzce51lZseCC5aHnFhLA= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773595022; c=relaxed/simple; bh=X32PXM6CIYzypQR5TwfD7Jn/cbq77OlrCWR99DHxUpQ=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=VcbDVsngojzJm/2byi+Gz7u/6K7ZKsTLrWFMDi0+r+NdC6s4jJd3imB+Srs6LVDwY6s4Qdlp5nyJCVpuBQu6V2huXqAp5YRD5Eyw9TqFgb2OptsSV8BgHvhDVff4chbW7umjzsIYsZaO+AiIoGG7tJwoCnYabNjh+LLNu/9O2Hk= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=bkP3s57m; arc=none smtp.client-ip=209.85.221.52 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="bkP3s57m" Received: by mail-wr1-f52.google.com with SMTP id ffacd0b85a97d-43b44c0bcdbso53031f8f.1 for ; Sun, 15 Mar 2026 10:17:00 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1773595019; x=1774199819; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=ubQ1v6PBsq99cAcF2yrnS1WsB85d1f/acmJVUU/lg1s=; b=bkP3s57mdv06Q8pGVWI4sO1FcTTW0j4zh+8kzK4R0Kpp+g8bHG1yntDaZr+QWoE5BZ +CtFml9JkkNytDIZEJqKa4MeJ3m4zFKaZt0klCzfeZaEo1KCiakxbgaV2NoKjnXU7otn rr+SYvK4ssEnc1oxI0xCByyWzzsTFU41my6/fvn0ZdD5hhoQe1sSv1jsT58Bf0ByHtj+ WvL2wSTQ27qYrzk1BjsVr9PCQvp0NF/1ESdZsOUxwR0KjvVwLsvfIGDUdPgSiOVVkEzn MupnbYA45bC946+Fh0djNXW66NMPP/1gYgk+JFKeCz4keggXKP0N9sdY99ByzigsffOF Rx+g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1773595019; x=1774199819; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=ubQ1v6PBsq99cAcF2yrnS1WsB85d1f/acmJVUU/lg1s=; b=DXg6X6UeboeI+GikS5eB+icq7BLNwJS2hdYCib4TWwQVpucuvRt5KEPYLcrVktIu7M sBXytZNYvUlCKoauqzoPNDnI5KcaOms5v/An1as4vssoBmqThzf2AS5w4F+SEnWEOSY/ pWCuQFocdkN5vMiWUKR40DwRelDHPYmn1s5hxCjiT2G8KHf2H/heG52HDsVirZSS2YSN TFZkai67TLvSbfPXDPXgwCjG8Pn384W4XKiuC/c5YDdKx+HKusy3qDiYxGUsXsJfvcek GqM0AyI5AboShTOPJQQq5BXTsZwYipZHT2YwAjLSk3y8hlgfKBuYtqmMmtHewZ2H6KSf AkQg== X-Forwarded-Encrypted: i=1; AJvYcCWnA5UVy/tvHeQfxF6hJudkTXAkWa3Asx2Z8MmDkdx0nWzsyAE148GgQ/jqrJrCYr5UzAARHKZOJ+nNokU=@vger.kernel.org X-Gm-Message-State: AOJu0YywZ2GVmuObHpfeyacR0P8eXIFwNHcedWZlMO88YcxmeZY5qhDT 2bmwkMxEBzR7q/v+08gJCViEaZ99DBWJDyVefdDqtfaXrj8zp8OT0vBE X-Gm-Gg: ATEYQzzCYPejxk/Ur9sy1EN10zhQgepbonB8Tj7ZVNk3Ngmbg1+HE4WU5NgacpuMtV+ lhSeZYEnOZiOynRxKpXza7LAqrrKmL6lrDy6R6J4lvIygyPfGVwKOxJp5dCJpu2JaD5OzWg3vVL IvuJLyAbxAWQydDd59vBwqvX8q1WzuXtsGCgW4xWfxdzRQGidIfyqzfRtDsrZITZ5JW2390VY+H lkeuWiYyl/uIZUF8xhqU+Sdox9T76GM5TW3j5VmlUzw5GA2irbKD/lJcoOIbuEXBYLpG8jC3yAH nv7g+wq8pq9dB1lyBh/8y9oiQ5oBIxyb4sW2OA6m1oI0R51ZuL38GaT+daRGvDFpEa1wvEO38ZE 4ni1rJ7LZG2GDo2LBtLjn/CnGdPckRE/DA8EhobCoc6cbEOC5+KwJ3L0xp7gXz9ITVgm16bwiJa qc6fWstxb6vWhdAtHucrfInzAJ7v2/ghoqKw== X-Received: by 2002:a05:6000:200f:b0:439:b59e:5e65 with SMTP id ffacd0b85a97d-43a04d79252mr18547646f8f.6.1773595018822; Sun, 15 Mar 2026 10:16:58 -0700 (PDT) Received: from debian.lan ([171.22.84.130]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-439fe21b631sm40536429f8f.27.2026.03.15.10.16.57 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 15 Mar 2026 10:16:58 -0700 (PDT) From: Adrian Garcia Cicuelo X-Google-Original-From: Adrian Garcia Cicuelo To: Ulf Hansson , Adrian Hunter , Andreas Hindborg , Jens Axboe , Miri Korenblit Cc: Miguel Ojeda , Haibo Chen , Frank Li , Sascha Hauer , Boqun Feng , linux-mmc@vger.kernel.org, imx@lists.linux.dev, linux-arm-kernel@lists.infradead.org, linux-block@vger.kernel.org, rust-for-linux@vger.kernel.org, linux-wireless@vger.kernel.org, linux-kernel@vger.kernel.org, Adrian Garcia Cicuelo Subject: [PATCH v2 1/3] mmc: sdhci-esdhc-imx: consolidate imx25/35 data and add Kingston CID Date: Sun, 15 Mar 2026 18:16:50 +0100 Message-ID: <20260315171652.269020-2-adriangarciacicuelo@gmail.com> X-Mailer: git-send-email 2.47.3 In-Reply-To: <20260315171652.269020-1-adriangarciacicuelo@gmail.com> References: <20260315171652.269020-1-adriangarciacicuelo@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Consolidate esdhc_imx25 and esdhc_imx35 soc data into a single shared struct since they share the same flags. This reduces redundancy. Also add the CID_MANFID_KINGSTON definition to quirks.h for centralized management. Signed-off-by: Adrian Garcia Cicuelo --- drivers/mmc/core/quirks.h | 4 ++++ drivers/mmc/host/sdhci-esdhc-imx.c | 12 ++++-------- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/drivers/mmc/core/quirks.h b/drivers/mmc/core/quirks.h index c417ed34c..d736bb4be 100644 --- a/drivers/mmc/core/quirks.h +++ b/drivers/mmc/core/quirks.h @@ -15,6 +15,10 @@ =20 #include "card.h" =20 +#ifndef CID_MANFID_KINGSTON +#define CID_MANFID_KINGSTON 0x70 +#endif + static const struct mmc_fixup __maybe_unused mmc_sd_fixups[] =3D { /* * Kingston Canvas Go! Plus microSD cards never finish SD cache flush. diff --git a/drivers/mmc/host/sdhci-esdhc-imx.c b/drivers/mmc/host/sdhci-es= dhc-imx.c index a7a5df673..9cfa26722 100644 --- a/drivers/mmc/host/sdhci-esdhc-imx.c +++ b/drivers/mmc/host/sdhci-esdhc-imx.c @@ -256,11 +256,7 @@ struct esdhc_soc_data { u32 quirks; }; =20 -static const struct esdhc_soc_data esdhc_imx25_data =3D { - .flags =3D ESDHC_FLAG_ERR004536, -}; - -static const struct esdhc_soc_data esdhc_imx35_data =3D { +static const struct esdhc_soc_data esdhc_imx25_35_data =3D { .flags =3D ESDHC_FLAG_ERR004536, }; =20 @@ -391,8 +387,8 @@ struct pltfm_imx_data { }; =20 static const struct of_device_id imx_esdhc_dt_ids[] =3D { - { .compatible =3D "fsl,imx25-esdhc", .data =3D &esdhc_imx25_data, }, - { .compatible =3D "fsl,imx35-esdhc", .data =3D &esdhc_imx35_data, }, + { .compatible =3D "fsl,imx25-esdhc", .data =3D &esdhc_imx25_35_data, }, + { .compatible =3D "fsl,imx35-esdhc", .data =3D &esdhc_imx25_35_data, }, { .compatible =3D "fsl,imx51-esdhc", .data =3D &esdhc_imx51_data, }, { .compatible =3D "fsl,imx53-esdhc", .data =3D &esdhc_imx53_data, }, { .compatible =3D "fsl,imx6sx-usdhc", .data =3D &usdhc_imx6sx_data, }, @@ -414,7 +410,7 @@ MODULE_DEVICE_TABLE(of, imx_esdhc_dt_ids); =20 static inline int is_imx25_esdhc(struct pltfm_imx_data *data) { - return data->socdata =3D=3D &esdhc_imx25_data; + return data->socdata =3D=3D &esdhc_imx25_35_data; } =20 static inline int is_imx53_esdhc(struct pltfm_imx_data *data) --=20 2.47.3 From nobody Tue Apr 7 07:09:07 2026 Received: from mail-wr1-f52.google.com (mail-wr1-f52.google.com [209.85.221.52]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 496913750BD for ; Sun, 15 Mar 2026 17:17:02 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.221.52 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773595024; cv=none; b=tZLrqoNrDl28EKvqub7E1J5sWU/dzX3i025JAxE3DdxT4XGC5LO22XsP23qyyrDF+ofXALgPUp6aTNUNlxDxCCktgMbyxykw2onOME9DWiPjAN+r9wy3NH6C7VHyrsbOubPRp7us5K9gcslsCNaWRu56Ab+rXHtKTUEHU9WH3QI= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773595024; c=relaxed/simple; bh=iKpFG0Av0hoqoOlPYCyOzyzjoAeTHTDVQHbGXDPimao=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=Mk2ffY6TQycVg7BC3KjQxzckFPhaZpGR8KnqsjHwRlcK11E1U4qeKgW74LAY6aScjkK69+pJ5/Ll0YYgxfg0oUzwKE+nETivXhx2FNGPgvkLaNURJn1gbIun3Byx7zhifaNc1olFK8jcLHhg6wTrVgHeiChRr+ZiHfWUnZ5qJ0U= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=ArBu8oJU; arc=none smtp.client-ip=209.85.221.52 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="ArBu8oJU" Received: by mail-wr1-f52.google.com with SMTP id ffacd0b85a97d-43b3d9d0695so557341f8f.0 for ; Sun, 15 Mar 2026 10:17:02 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1773595021; x=1774199821; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=QBcY1jNO230ersIPOAT9WM1qbuR7iZiog4/B3vVvee0=; b=ArBu8oJUDEqbx6ubRa5lF3ZLeuJit//fOBLBhSwho5ZlzK2T+NoiV56GqNLs/wDk1X wFwOMS+HMJ9wTUcao8Fjdk3ArwEt0qNXw3vgDUT5u4AbV32v9mVJeCqKJrgfpJl85B+F myvJeqvd3DLVoWCTfoHq+eWvzmiZKdBx7YZ+6TIyaTcETv9t01yqqJ4RWq1SRvWa+pin b47SLEr0dtVMZCM/kE8jAZie43cFU2cI110Sv2Xj2c1wk3zB8PbwYGDe/1XF/SVjkcEu 2/CvSRjSM87n4952zIBSFwIeVusVrUKFp+zpM4W8d2kBBwHw8PVnbn5F07glXX1pUV8T Eh0A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1773595021; x=1774199821; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=QBcY1jNO230ersIPOAT9WM1qbuR7iZiog4/B3vVvee0=; b=eA84N2O/ZtfecSghcTtylBdMhnW4LHSyqmEiw3mx+TCN9OEfiZRhE5mF0lRuD6iFkP GjAWw/IjsyFp/+cOoz2XKwLCa7zMxm+iYz2O8VL6viCKQddn+OR3fd8VYJnrebDEAo4U qPWiCxYXxHLSHma/S4LDiPfQBIszi/CGxgGg1+C9YXdBz6Y53kAaM1y54lRuVSM3gEUB 1ojLWLeijl0OiVZqZ8bhcxDrt3FKxGM5JE6ErNovV5q4MH/ufiw2r62r+khIYv0ofExn 5xERhbevztQFExTwGBn2m70OUyyGz308/uo8KW4Ge6j3tWxEsdlyZgRqtrYeugOgFPRa 99Dg== X-Forwarded-Encrypted: i=1; AJvYcCUf2LMLvk/x/QkaPtcosSqOBgKIsQcQPCtQCmjyqc+Y2PeoSamGio5Rh51QYe+30UjRHP/1U4X4+xnawqA=@vger.kernel.org X-Gm-Message-State: AOJu0YxdhnRJRGZ42qrS7BherlOkacTNVoemL89sLI4mq6UmLBbCn00n gIds5uuVvrnAtL1BqUqsiUQ3Evo/ao2HhJcYKV9OyPQpJW8F/Z4PkqJX0FT7VCJG4f9m5g== X-Gm-Gg: ATEYQzzd+vLoFhUXzZwOmjBxQCs8rkAWT1qrLlvfxwTNQ6IH6GPKfyEHhLsr6TmXPCz y4uMLt6YiqXkIfT90ngisiM90HG7bcKrk00PUvPHefDl+05oIIxD6MCkv2e2CytNJym9erpIijf qffpNu1hetDGGUGgiLBkKLBxVkfNLDTHatlnIkvsRMjH6lOCyeH4rAZdqMWt1saMQxBbRLUci/C a4vQGAnVoZhxpRc0YUx66pmI/TfQB2vr4lphge31G05CggHlIv2gclff7+hszi7Q0Ak9KQ1Dnja Y69MA4XbkPRzVVki4eFb4jxl/TuqVGoWIjGWGFONknwWsteQ1hoqmsI40SB21hs9Ijm8anm1Oky J74c6KyE+hOcUixTKdSSrd/lk9uNDQUO7qeeYzLYpAnyzTPefUeRzdQ1zjZWC4u4RJdrecGRcIF A/8/ax6E0VFcx7XugcNi28ROrCd194aS5yPw== X-Received: by 2002:a05:6000:40ce:b0:439:d74d:a686 with SMTP id ffacd0b85a97d-439fe1ae6b7mr26631100f8f.28.1773595020567; Sun, 15 Mar 2026 10:17:00 -0700 (PDT) Received: from debian.lan ([171.22.84.130]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-439fe21b631sm40536429f8f.27.2026.03.15.10.16.59 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 15 Mar 2026 10:17:00 -0700 (PDT) From: Adrian Garcia Cicuelo X-Google-Original-From: Adrian Garcia Cicuelo To: Ulf Hansson , Adrian Hunter , Andreas Hindborg , Jens Axboe , Miri Korenblit Cc: Miguel Ojeda , Haibo Chen , Frank Li , Sascha Hauer , Boqun Feng , linux-mmc@vger.kernel.org, imx@lists.linux.dev, linux-arm-kernel@lists.infradead.org, linux-block@vger.kernel.org, rust-for-linux@vger.kernel.org, linux-wireless@vger.kernel.org, linux-kernel@vger.kernel.org, Adrian Garcia Cicuelo Subject: [PATCH v2 2/3] rust: block: rnull: update to Pin> for PinInit Date: Sun, 15 Mar 2026 18:16:51 +0100 Message-ID: <20260315171652.269020-3-adriangarciacicuelo@gmail.com> X-Mailer: git-send-email 2.47.3 In-Reply-To: <20260315171652.269020-1-adriangarciacicuelo@gmail.com> References: <20260315171652.269020-1-adriangarciacicuelo@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Update the Rust rnull driver to use Pin> for queue data allocation. This aligns the driver with the latest PinInit zero-copy initialization abstractions in kernel 7.0 and fixes a type mismatch with GenDiskBuilder::build(). Signed-off-by: Adrian Garcia Cicuelo --- drivers/block/rnull/rnull.rs | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/drivers/block/rnull/rnull.rs b/drivers/block/rnull/rnull.rs index 0ca8715fe..23df23936 100644 --- a/drivers/block/rnull/rnull.rs +++ b/drivers/block/rnull/rnull.rs @@ -54,7 +54,7 @@ fn new( ) -> Result> { let tagset =3D Arc::pin_init(TagSet::new(1, 256, 1), GFP_KERNEL)?; =20 - let queue_data =3D Box::new(QueueData { irq_mode }, GFP_KERNEL)?; + let queue_data =3D Box::pin_init(QueueData { irq_mode }, GFP_KERNE= L)?; =20 gen_disk::GenDiskBuilder::new() .capacity_sectors(capacity_mib << (20 - block::SECTOR_SHIFT)) @@ -65,16 +65,21 @@ fn new( } } =20 +#[pin_data] struct QueueData { irq_mode: IRQMode, } =20 #[vtable] impl Operations for NullBlkDevice { - type QueueData =3D KBox; + type QueueData =3D Pin>; =20 #[inline(always)] - fn queue_rq(queue_data: &QueueData, rq: ARef>, _is_l= ast: bool) -> Result { + fn queue_rq( + queue_data: Pin<&QueueData>, + rq: ARef>, + _is_last: bool, + ) -> Result { match queue_data.irq_mode { IRQMode::None =3D> mq::Request::end_ok(rq) .map_err(|_e| kernel::error::code::EIO) @@ -87,7 +92,7 @@ fn queue_rq(queue_data: &QueueData, rq: ARef>, _is_last: bool) Ok(()) } =20 - fn commit_rqs(_queue_data: &QueueData) {} + fn commit_rqs(_queue_data: Pin<&QueueData>) {} =20 fn complete(rq: ARef>) { mq::Request::end_ok(rq) --=20 2.47.3 From nobody Tue Apr 7 07:09:07 2026 Received: from mail-wr1-f44.google.com (mail-wr1-f44.google.com [209.85.221.44]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 2A66C375F63 for ; Sun, 15 Mar 2026 17:17:04 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.221.44 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773595025; cv=none; b=Gp1XgUhnRUQDY3wtq3D//3mYlXU2pGoQlMB2mccUZMtppYGNHnWtR7UFux7JCvpICNCKUk7WpbSL77MpGweZTGHmOX/Cfj2jcZbPCNLV8EOsBNX4tiCYFUmiAqBc3h9BXFlIoDPNaYP3rxnzsd5kDsD9f3sS5hOOlK9mIAq1N0s= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773595025; c=relaxed/simple; bh=xR1aQtJyjOGsb3F8bKi8GxD9ZWQvMlCBKAMwTQealv0=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=jIIppemsr0YoF+akEeZzsNrHWPsenBG2FTQ58/saxUVr777knU0YZF0FLBbsPjxmJRoyOJqPjQTScpcjGDoQVBz/Q4T36m0bTVjzVWr+Pq2iSmsggFJ0QbJrcphzcaOQB7X6gWqOVCjO2qZlftKnDUUXk9VLTLqhvAYHAtDAUW0= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=LGDd2s0M; arc=none smtp.client-ip=209.85.221.44 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="LGDd2s0M" Received: by mail-wr1-f44.google.com with SMTP id ffacd0b85a97d-439b7c2788dso2349776f8f.1 for ; Sun, 15 Mar 2026 10:17:03 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1773595022; x=1774199822; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=2eNrBLnJJHbmPI7WkNJ6vq9A1HMj64DfR2iaRW7E89k=; b=LGDd2s0MRWWVzXiLUlhscGY31hZPYrH4KObYvbpf2p9Ur+gOzA6ep5+r+WLKV8QH9/ +/4S8qNW/piz9OVtsNFhHEK+QQNbGl7USWoD43ej62kuooI1hxOWuwzxxVphv4bNfxHQ lXO4IOJsrITQRmID1rAQyjekPiuqPqSvwc5T4DDj6fRl9Xtzu1hn1XkIPKQ+mg0l1olG beUUL3G+Tx4LMx1AcTr9YqTznBOAY1nZOpvJ4bwqjGLTvaS4eftDMgtwuDsQsNNh5R5s iMDqrGuK+zeWy65nDQLF/OuD9rYse0Giq148n9HjONRPABWI8T8LuwY+JGv5+WGrL3Zr RUCg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1773595022; x=1774199822; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=2eNrBLnJJHbmPI7WkNJ6vq9A1HMj64DfR2iaRW7E89k=; b=gFnRUvd1SWJXUsFsYUphmnWQdlH12d4VEvaqPpvhADPjupfQt7fxVCgVg0yidWW1+a XqvZ26kYKZ3Y5kXIkUeNjraZJYxgNj0hBEPUAMPY07ez2rmuoCW6Ui4Tt8bnhNboGKav tyUd4XN37qlV7HlCOwZSr+wkunocd8nWRm8EBjVx8FRiyFgyfqRZArHJLXQxrPQrvVXb R0y5VN6KAyUHjbzYGbump4aKgjDxEcEluMyYcem4t9zKWpBbWKUNKOgGtAdpEooQeVBj 1HV/FbeujZhKzFp0u4SFDW9eZeh9wHlZJRqSe9Na1NZ2wBWGvgR/oZCFJI5DJILNgq/q oYdw== X-Forwarded-Encrypted: i=1; AJvYcCVHu+SlYvb2efR10IQh8c1v80KkLmxUGM+xEg30bdhQLUXNPhpgFNtvtCOfFzAzoBO/DwU5m716tMVVR5g=@vger.kernel.org X-Gm-Message-State: AOJu0YwwuwnzU76jp2BE2qkGoQOgzvNqichO4rA+HzchtpOK4OvJlya1 4Yg4TJ6JYcIN1t6hC/NL39YLAXWbd+DBBfaU3Ofwm6HHNUQoo5tDzVNq X-Gm-Gg: ATEYQzxzLAJNpWcughAP4g9T50fkt2tZXKLdP2LFxDLI6nmCHiptAFfrllkBabZpFoe 3UScV1F707d4dG02OhfYRfHYYBQ9Wa0E8EK+lo3/A+P6gktWViyfzpB25cAe8l4n5LUlUoVQvI3 AWo083qta1epcMqtcTSZrEqND+7EwxceEu8+WwCr//mSV6IYDHSYtnPCpJ8HMKDuGQZNRG/zzKl ggRiAxvGjXk/VJG1CxMSZHFz8M9B9a82dFeMOsqQjgFhZKw4T+WW72BLHO+8o/Em/f6UjIkM8gl 2KY0OaMGjAj+Vb5hrJTFY3rxYAZHQe+KyPzI20UW6uZootPDXq4ZXiq/sLKJcPzLBKX5zOyhASn 5jOzO2ffal3X4jwTTrvjF6XBK+oo6tDTbhuzrwJPNJ5C8Rr7bUuHLRcEhKMhy/xuaGwM75TWPjm vhcr193Ei7EWKj8fUqdwavBioZ5lx7UP3ogQ== X-Received: by 2002:a5d:5849:0:b0:439:af0e:57a8 with SMTP id ffacd0b85a97d-43a04db7edfmr19896954f8f.33.1773595022342; Sun, 15 Mar 2026 10:17:02 -0700 (PDT) Received: from debian.lan ([171.22.84.130]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-439fe21b631sm40536429f8f.27.2026.03.15.10.17.00 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 15 Mar 2026 10:17:01 -0700 (PDT) From: Adrian Garcia Cicuelo X-Google-Original-From: Adrian Garcia Cicuelo To: Ulf Hansson , Adrian Hunter , Andreas Hindborg , Jens Axboe , Miri Korenblit Cc: Miguel Ojeda , Haibo Chen , Frank Li , Sascha Hauer , Boqun Feng , linux-mmc@vger.kernel.org, imx@lists.linux.dev, linux-arm-kernel@lists.infradead.org, linux-block@vger.kernel.org, rust-for-linux@vger.kernel.org, linux-wireless@vger.kernel.org, linux-kernel@vger.kernel.org, Adrian Garcia Cicuelo Subject: [PATCH v2 3/3] wifi: iwlwifi: pcie: optimize MSI-X interrupt affinity Date: Sun, 15 Mar 2026 18:16:52 +0100 Message-ID: <20260315171652.269020-4-adriangarciacicuelo@gmail.com> X-Mailer: git-send-email 2.47.3 In-Reply-To: <20260315171652.269020-1-adriangarciacicuelo@gmail.com> References: <20260315171652.269020-1-adriangarciacicuelo@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Implement a balanced RSS queue distribution by skipping CPU0 for high-rate MSI-X interrupts when multiple CPUs are online. This reduces contention with system housekeeping tasks on the boot core and improves overall throughput. Signed-off-by: Adrian Garcia Cicuelo --- drivers/net/wireless/intel/iwlwifi/pcie/gen1_2/trans.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/drivers/net/wireless/intel/iwlwifi/pcie/gen1_2/trans.c b/drive= rs/net/wireless/intel/iwlwifi/pcie/gen1_2/trans.c index 4560d92d7..87149f29e 100644 --- a/drivers/net/wireless/intel/iwlwifi/pcie/gen1_2/trans.c +++ b/drivers/net/wireless/intel/iwlwifi/pcie/gen1_2/trans.c @@ -1683,7 +1683,17 @@ static void iwl_pcie_irq_set_affinity(struct iwl_tra= ns *trans, * Get the cpu prior to the place to search * (i.e. return will be > i - 1). */ + /* + * Balanced distribution: skip CPU0 for high-rate RSS queues + * to avoid contention with system housekeeping. + */ cpu =3D cpumask_next(i - offset, cpu_online_mask); + if (cpu >=3D nr_cpu_ids) + cpu =3D cpumask_first(cpu_online_mask); + + if (cpu =3D=3D 0 && num_online_cpus() > 1) + cpu =3D cpumask_next(0, cpu_online_mask); + cpumask_set_cpu(cpu, &trans_pcie->affinity_mask[i]); ret =3D irq_set_affinity_hint(trans_pcie->msix_entries[i].vector, &trans_pcie->affinity_mask[i]); --=20 2.47.3