From nobody Sun Feb 8 05:54:57 2026 Received: from mail-pl1-f202.google.com (mail-pl1-f202.google.com [209.85.214.202]) (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 F20A41F8EEF for ; Wed, 2 Apr 2025 23:34:53 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.202 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1743636895; cv=none; b=EE/hvLb7mwV97jqu9eGWVr4kcb6QKXiAXwePJCTAoey+Qipej/N/86/di8oKee1UJxTQbWO/KxkqIzrk91DO1+uUFKzszF2xI5/2VUR++8qJiL75M0lpZMhb72YK8Z6bP+/zeKWp4IurOKEhHHB1Gs/v6eYS/dALoqLsvMEos3g= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1743636895; c=relaxed/simple; bh=OAknLtJvsu5Z8il1CGx/QAgW0sT8q2LX/C14tT3L9I4=; h=Date:In-Reply-To:Mime-Version:References:Message-ID:Subject:From: To:Cc:Content-Type; b=Ul224rQKxJnnSwo/UhEEiV9GrFRpzGPHHL75hQkzGZk7gzwR6KVp/dDU6Xv/ECsGnfYMY4uqW4om44bxMuAicNtrY8JQPrPhLFPegItdJyo7ze06xToCfZa+gOOPBMzZlkObO1d+7biQLwOyLvVuSsUF27iGPzQ6fo5nVHkYQIA= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com; spf=pass smtp.mailfrom=flex--willmcvicker.bounces.google.com; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b=bZPnea8z; arc=none smtp.client-ip=209.85.214.202 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=flex--willmcvicker.bounces.google.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b="bZPnea8z" Received: by mail-pl1-f202.google.com with SMTP id d9443c01a7336-2240a7aceeaso3598785ad.0 for ; Wed, 02 Apr 2025 16:34:53 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1743636893; x=1744241693; darn=vger.kernel.org; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:from:to:cc:subject:date:message-id:reply-to; bh=Z3woyidQeaVM0OgW9Tejczk+jE7A6Ip+4MgT+pOFZpA=; b=bZPnea8zr75mLFe+j9B/womVxTLhEW9DKjHxo6Ekq2cIR20A6Hu8p86FU4ZLCkb5Hm Qze9JTkvO7Vvgo8p/5t/1XkN7cesYwXtAzyK4YHiyDI/qH9+7EUeQ81Tqw1HS125kbxy eIo55nqEgek57o1FpPrLpKC8iNKMAkKy5UsugoFVJt3mJDVCh+ZBLWVP7JngFotgKbMC JC43EuWN4TPc3IQuTxpBzAlb9RLnSu5tUV7+9PV7wHbSrUysV6UtRLsMqZ/vI7UHrvkD 4Ylv2h5C2lQflDw4Um0/d1yviGlxoAqRPjmeWReOSsvVOSE01Tl2u/uYhXYTFRyFvVqE JyRg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1743636893; x=1744241693; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=Z3woyidQeaVM0OgW9Tejczk+jE7A6Ip+4MgT+pOFZpA=; b=sLx2rZwCwhzZ+XLzvAVA3SSD2Mu9ntR5EMKUGIwiHeDRsIVCq7U+zcGls5qMehkwBm UXkKTtfa1Bq3+mvwsdVYjCz84ADbjmEjKb93nKm50Y/FY9zFnuevka6500DjmRg9RIFx hwutihLkX8Hgvy1guDFPJMQUudXsskuUUZdyDQHBHa6kiZldTIL8lFgUYOnEjCjQ+MFL ayASHiGCKkbqhE96WAG1Xwh+S5cs5f7wj0lm1ZBit1m1cWy8lGdqMF9uOaIm2dveJG4W IXotRVDrmo2c+o12B1wkN23wousEWbXLgjQ7SKLHIl4XBV5ObkkKNCPI+xWnZQ3rIDpp UZkQ== X-Forwarded-Encrypted: i=1; AJvYcCVEB5E6wUev8xAEs+Qx7iSHcS0JPH9XFfzaiJi1z30G++RJhfsvce6MD3KgOMV6rfKHQhz/kogXTgU8yHQ=@vger.kernel.org X-Gm-Message-State: AOJu0Yx+t67cQ+R4aOh6XWLDGkTejaY4YJTc8DDWRXxXHgHS9g/hc9E6 m8nhB1XRdFT8dQUbbSbj4C3exArTLp3tKDd77o5xz3qB9b5TYJxezbceO8KRAIDIrNMidh3kn7q m7631zjOkMYEiShLSILo/M5ZMyg== X-Google-Smtp-Source: AGHT+IGiCVuhnR8Hm4ls6yhYVA+bAhMO7b7R8+FdaaPf0Sw6oW8BjVfyrFlY1Hg1Xa0Er5xFqEgThNby8zWx1wNh1Eo= X-Received: from pfjd22.prod.google.com ([2002:a05:6a00:2456:b0:736:9c55:9272]) (user=willmcvicker job=prod-delivery.src-stubby-dispatcher) by 2002:a17:902:cf0f:b0:220:fe51:1aab with SMTP id d9443c01a7336-22977e0fa71mr9553365ad.38.1743636893194; Wed, 02 Apr 2025 16:34:53 -0700 (PDT) Date: Wed, 2 Apr 2025 16:33:56 -0700 In-Reply-To: <20250402233407.2452429-1-willmcvicker@google.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: Mime-Version: 1.0 References: <20250402233407.2452429-1-willmcvicker@google.com> X-Mailer: git-send-email 2.49.0.472.ge94155a9ec-goog Message-ID: <20250402233407.2452429-6-willmcvicker@google.com> Subject: [PATCH v2 5/7] clocksource/drivers/exynos_mct: Fix uninitialized irq name warning From: Will McVicker To: Catalin Marinas , Will Deacon , Peter Griffin , "=?UTF-8?q?Andr=C3=A9=20Draszik?=" , Tudor Ambarus , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Alim Akhtar , Daniel Lezcano , Thomas Gleixner , Saravana Kannan , Krzysztof Kozlowski Cc: Will McVicker , Donghoon Yu , Hosung Kim , kernel-team@android.com, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, Youngmin Nam , linux-samsung-soc@vger.kernel.org, devicetree@vger.kernel.org Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" The Exynos MCT driver doesn't set the clocksource name until the CPU hotplug state is setup which happens after the IRQs are requested. This results in an empty IRQ name which leads to the below warning at proc_create() time. When this happens, the userdata partition fails to mount and the device gets stuck in an endless loop printing the error: root '/dev/disk/by-partlabel/userdata' doesn't exist or does not contain = a /dev. To fix this, we just need to initialize the name before requesting the IRQs. Warning from Pixel 6 kernel log: [ T430] name len 0 [ T430] WARNING: CPU: 6 PID: 430 at fs/proc/generic.c:407 __proc_create+0x= 258/0x2b4 [ T430] Modules linked in: dwc3_exynos(E+) [ T430] ufs_exynos(E+) phy_exynos_ufs(E) [ T430] phy_exynos5_usbdrd(E) exynos_usi(E+) exynos_mct(E+) s3c2410_wdt(E) [ T430] arm_dsu_pmu(E) simplefb(E) [ T430] CPU: 6 UID: 0 PID: 430 Comm: (udev-worker) Tainted: ... 6.14.0-next-20250331-4k-00008-g59adf909e40e #1 ... [ T430] Tainted: [W]=3DWARN, [E]=3DUNSIGNED_MODULE [ T430] Hardware name: Raven (DT) [...] [ T430] Call trace: [ T430] __proc_create+0x258/0x2b4 (P) [ T430] proc_mkdir+0x40/0xa0 [ T430] register_handler_proc+0x118/0x140 [ T430] __setup_irq+0x460/0x6d0 [ T430] request_threaded_irq+0xcc/0x1b0 [ T430] mct_init_dt+0x244/0x604 [exynos_mct ...] [ T430] mct_init_spi+0x18/0x34 [exynos_mct ...] [ T430] exynos4_mct_probe+0x30/0x4c [exynos_mct ...] [ T430] platform_probe+0x6c/0xe4 [ T430] really_probe+0xf4/0x38c [...] [ T430] driver_register+0x6c/0x140 [ T430] __platform_driver_register+0x28/0x38 [ T430] exynos4_mct_driver_init+0x24/0xfe8 [exynos_mct ...] [ T430] do_one_initcall+0x84/0x3c0 [ T430] do_init_module+0x58/0x208 [ T430] load_module+0x1de0/0x2500 [ T430] init_module_from_file+0x8c/0xdc Signed-off-by: Will McVicker Reviewed-by: Peter Griffin --- drivers/clocksource/exynos_mct.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/drivers/clocksource/exynos_mct.c b/drivers/clocksource/exynos_= mct.c index a5ef7d64b1c2..62febeb4e1de 100644 --- a/drivers/clocksource/exynos_mct.c +++ b/drivers/clocksource/exynos_mct.c @@ -465,8 +465,6 @@ static int exynos4_mct_starting_cpu(unsigned int cpu) per_cpu_ptr(&percpu_mct_tick, cpu); struct clock_event_device *evt =3D &mevt->evt; =20 - snprintf(mevt->name, sizeof(mevt->name), "mct_tick%d", cpu); - evt->name =3D mevt->name; evt->cpumask =3D cpumask_of(cpu); evt->set_next_event =3D exynos4_tick_set_next_event; @@ -567,6 +565,14 @@ static int __init exynos4_timer_interrupts(struct devi= ce_node *np, for (i =3D MCT_L0_IRQ; i < nr_irqs; i++) mct_irqs[i] =3D irq_of_parse_and_map(np, i); =20 + for_each_possible_cpu(cpu) { + struct mct_clock_event_device *mevt =3D + per_cpu_ptr(&percpu_mct_tick, cpu); + + snprintf(mevt->name, sizeof(mevt->name), "mct_tick%d", + cpu); + } + if (mct_int_type =3D=3D MCT_INT_PPI) { =20 err =3D request_percpu_irq(mct_irqs[MCT_L0_IRQ], --=20 2.49.0.472.ge94155a9ec-goog