From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-ed1-f51.google.com (mail-ed1-f51.google.com [209.85.208.51]) (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 D101C359A66 for ; Fri, 21 Aug 2026 03:25:46 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.208.51 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1787282748; cv=none; b=LBKHrd4LLfqKD9G/4owCbeHQLQIq7wjy11sVGXupL6FD+551f6I0lpYPi7NPqk1cCC8XDFq4oRGguIzznCTk1JojJVGXwWCrLO/5PqdJhFOJ3N3t0Q104NlfhYY6sgmrnvzBHfbF4MjjAXqATpOHXP/oeX2wT7ns4bDYUgAqnk4= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1787282748; c=relaxed/simple; bh=rTKRF6vf9ERjKXH2kWeSUEnOuoEvK9n2OVJj1+dwk5Y=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version; b=MMPB1HVmms1ELJxeO1Np8Nb20ECCCMAXEVj/RwEX/cJxIaz3evGwcBuVcQ/RWczsH+8tTpZYMrZ0WVv0DGiESsoOjxu2z1ft8sMOvIgUoKslLmaI5BnHPc6MfZx4rF5Ot5ZSLTv/TwuRqeGJBHvakc6p/LbWaYJjFF5+xf17OUE= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=mswin.me; spf=none smtp.mailfrom=mswin.me; dkim=pass (2048-bit key) header.d=mswin-me.20251104.gappssmtp.com header.i=@mswin-me.20251104.gappssmtp.com header.b=OJ/0mm8N; arc=none smtp.client-ip=209.85.208.51 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=mswin.me Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=mswin.me Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=mswin-me.20251104.gappssmtp.com header.i=@mswin-me.20251104.gappssmtp.com header.b="OJ/0mm8N" Received: by mail-ed1-f51.google.com with SMTP id 4fb4d7f45d1cf-6a374bea882so1245983a12.1 for ; Thu, 20 Aug 2026 20:25:46 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=mswin-me.20251104.gappssmtp.com; s=20251104; t=1787282745; x=1787887545; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to:content-type; bh=xBrYAs25F1BMwhNxYWXrzzIRZUTRoKOsBihavlqCIAc=; b=OJ/0mm8N7QawBJb3JhgM6HN7n6j3q19dTqoKGXWHe/Za4dJOaZCdrJM5Q1cBKPKakL Wls2lFcEfgraXHCPSPGFI3xuKrrlsGigWgdvavmsaKIszRCojTjtsbCVg5lJ5O+IrekL I8sWgIirubW83HuMVgQjbZB0upcFjYiQfhavZolTTAtGQ6Nxsdl8ObUinNzTtq4CgJ5G I1ZkwCHL4yAY41G97Sgms+NkXDXlEr3SRU2wcCHQ0gDdv/gi3kIrqTHNQGrVOqm3m9fg KxFMUtXKHRIrbKYs75RW4ilHzu4OjPyTDGIAXFe8zxrb1EzUNEJUqPNX3hSgXLzYirgy /0DA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1787282745; x=1787887545; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to:content-type; bh=xBrYAs25F1BMwhNxYWXrzzIRZUTRoKOsBihavlqCIAc=; b=f78RjfTN1Kww22VXnsAznRHKZUeXS1e62AVb+vO68flChyuVneENtA0vGuE642Yohf 1WgvCF4Ld2xTedfQeDKVwJs32NgwubaFP2LPIuwkT7/4N7QNGDXQvL0YLXJcXtDL69Gz dkldzQ+cyVujgBEYlwL4ZWmcOsDADAmNaF5h3sOcxG4Rlb7gcbUPPt9q0HqeaJyjfaSF B2vHJIVcw+JgKQTD7TDp8Pfxa1RQQonkw86EltRvTphSveLP+r7NhjBzyT/XXD+ckrLt yWAEQqDa3mvUwEl4XPkwwM7VMoceEgtcIuuYUvTnoc+XesBvtYCmU15bV4TD02OsC3bf vpqg== X-Forwarded-Encrypted: i=1; AHgh+RooDp0xDlnS5W90PnvTRKdiTcG+7/DbVM/19Iq8pveHuC26dIx4IlhL/g3Lb3JHP7+Ey/KLZoo9KGxgn5E=@vger.kernel.org X-Gm-Message-State: AFuF++lUrnRBaiU1oHdtq14ZqvXY5RCTe7Dj0xOg234L1fhACsQcVk40 2x0OeP6WYuFqROa4QME/QWmymd/90BrLhR46sHbXJSvVgyb/KpjAtzwA6NyGK6Y7E/6fc73DLSG pvAQxJwyz+PWzpcs= X-Gm-Gg: AR+sD10iPmMUDW9mFAGrcVVxCbCbgFOCkEz9OBO10ZuuVkjw0MQC/9o2u+wPmfNm5sj s3clDRddx7sBpWG7DDoovvGsLr4Eg81YSApwWrFsOd8ihwvKqD0E47bVLVv2+80HYfT+GlL6Fq7 fq08c/7ZBfReWJlNrjMUPoVpPSJro42iB8yQ2v7OMFPYHxmV415K4ITntonVnEWoSkCcV5m+8oz GX4Ps/b37EqRflf/5rgeOty6aODifrMx67EqVSlzZ4qNRq3kb1QtoW8lskX9VFMYMNBTbIwz4hx ap5NMiyUZdNlAY1FteoVyVpaM58YnFg2pyRP6/PH57uceTX7MKDhUSAqWxJmQG5jtSzp+pMAmaW Ts2ouBSWu2noGJRu/HSeJA1poRXthDcVbLgit9pt21kg4KxSoTN5IHMBTJg9SH82ohSYM2zVuXj ox3Ey4nj56NdCbL1j0wsMt/wUQyEzIKty+HBEFSAm7Dw66TcLeO4Q3Z320rGuu+/meKZycpMECM n9t X-Received: by 2002:a05:6402:1ecb:b0:6a1:f95b:8ced with SMTP id 4fb4d7f45d1cf-6a42f153920mr3334475a12.4.1787282744913; Thu, 20 Aug 2026 20:25:44 -0700 (PDT) Received: from zephyr.int.serkovo.ru ([85.17.200.167]) by smtp.gmail.com with ESMTPSA id 4fb4d7f45d1cf-6a3ff177b1esm4217194a12.29.2026.08.20.20.25.42 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 20 Aug 2026 20:25:43 -0700 (PDT) From: Roman Linev To: Bjorn Andersson , Konrad Dybcio , Rob Herring , Krzysztof Kozlowski , Conor Dooley Cc: =?UTF-8?q?Barnab=C3=A1s=20Cz=C3=A9m=C3=A1n?= , linux-arm-msm@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Roman Linev Subject: [PATCH] arm64: dts: qcom: sm6125-xiaomi-laurel-sprout: reserve firmware-owned DRAM Date: Fri, 21 Aug 2026 06:25:41 +0300 Message-ID: <20260821032541.1856299-1-admin@mswin.me> X-Mailer: git-send-email 2.55.0 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit sm6125.dtsi sizes reserved_mem1@46200000 at 0x2d00000 (45 MiB), so it ends at 0x48f00000. On laurel-sprout the firmware owns 0x4900000 (73 MiB) at that base: the downstream device tree overrides the SoC region with removed_region@46200000 { reg = <0 0x46200000 0 0x4900000>; }; which ends exactly at 0x4ab00000, where mainline places camera_mem. The 28 MiB between 0x48f00000 and 0x4ab00000 is therefore firmware-owned on this board while mainline leaves it as free System RAM and hands it to the page allocator. On Qualcomm a "removed_region" is XPU-protected, so this is not a matter of reading stale data: the region is not the kernel's to allocate. The observed symptom is hard lockups under sustained buffered reads, where page-cache pressure eventually reaches the disputed range. Before this change the device wedged at a rate of roughly one lockup per 59 MiB of buffered reads from the SD card, reproducibly enough to fire on demand. With the region reserved, the same workload has run 691 GiB of buffered reads with zero lockups. Reserve the delta as a board-level region abutting camera_mem rather than resizing the SoC-level reserved_mem1, since other SM6125 boards may legitimately have a different split; sm6125-xiaomi-ginkgo, for instance, has its own corrected reserved-memory layout. Signed-off-by: Roman Linev --- .../boot/dts/qcom/sm6125-xiaomi-laurel-sprout.dts | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/arch/arm64/boot/dts/qcom/sm6125-xiaomi-laurel-sprout.dts b/arch/arm64/boot/dts/qcom/sm6125-xiaomi-laurel-sprout.dts index 139f2b401..a6ee6ee80 100644 --- a/arch/arm64/boot/dts/qcom/sm6125-xiaomi-laurel-sprout.dts +++ b/arch/arm64/boot/dts/qcom/sm6125-xiaomi-laurel-sprout.dts @@ -37,6 +37,20 @@ framebuffer0: framebuffer@5c000000 { }; reserved-memory { + /* + * The SoC dtsi sizes reserved_mem1 at 0x2d00000 (45 MiB), ending + * at 0x48f00000. This device's firmware owns 0x4900000 (73 MiB) + * there -- downstream laurel_sprout carves out + * removed_region@46200000 with that size, ending exactly at + * camera_mem's 0x4ab00000. The 28 MiB in between is XPU-owned + * on this board and mainline currently hands it to the buddy + * allocator. + */ + reserved_mem1_laurel: memory@48f00000 { + reg = <0x0 0x48f00000 0x0 0x1c00000>; + no-map; + }; + debug_mem: debug@ffb00000 { reg = <0x0 0xffb00000 0x0 0xc0000>; no-map; -- 2.55.0