From nobody Mon Apr 21 17:56:13 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZhCjR5MBxz5spKW for ; Mon, 21 Apr 2025 17:56:27 +0000 (UTC) (envelope-from jrtc27@jrtc27.com) Received: from mail-wr1-f41.google.com (mail-wr1-f41.google.com [209.85.221.41]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "WR4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZhCjP5pyMz3fM7 for ; Mon, 21 Apr 2025 17:56:25 +0000 (UTC) (envelope-from jrtc27@jrtc27.com) Authentication-Results: mx1.freebsd.org; dkim=none; dmarc=fail reason="SPF not aligned (relaxed), No valid DKIM" header.from=freebsd.org (policy=none); spf=pass (mx1.freebsd.org: domain of jrtc27@jrtc27.com designates 209.85.221.41 as permitted sender) smtp.mailfrom=jrtc27@jrtc27.com Received: by mail-wr1-f41.google.com with SMTP id ffacd0b85a97d-3995ff6b066so2217185f8f.3 for ; Mon, 21 Apr 2025 10:56:25 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1745258184; x=1745862984; h=to:references:message-id:content-transfer-encoding:cc:date :in-reply-to:from:subject:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=s4M6t9Hl7L9jwwu1bCPvW89nKVCxIUdgUyfrDRnkFrc=; b=jYqynZe7Jv8QTu3KxAxlp4rhkSS1L/8TSsoSHzZFFeF40d3JvzsJWqmtCVNd4XANH/ n1j1Nko28eOIlbuezDSwRoFjnDKfyEDJ9m+iyVmGyFB6fKhnZ0JrTPkbVfeS2SFpNtIe xI+/dgJSnuGrEwQj2dQmdkioJfuRoYHqdHtvuxcaFucOUW1kxL7Ov7iWqa9quJhQrfyy TMHrcKB+NAeIZngVYzsGDGVZKxEyCXJK7IJqcphqUE/473f5/K1xEuGy2geKplEdlEjv ASG6TbkSzzZe17lCA3PBuHFWeN2yU6DoUaR5bNyJVywWtMlXFK7gFIKzSqiAEQ/ticZ+ /+gg== X-Forwarded-Encrypted: i=1; AJvYcCWTAi3Xo/VoJcXhfqTgix4SUCaRBHi7s6tIF71mwrwt7VqQXVsnoP4Tg76cj3QG9C+fRf6vrNeDIwki7K3OJjb1SuTNTA==@freebsd.org X-Gm-Message-State: AOJu0Yw6uSHBrsytNlS+1hGQh6/dYJLp+D4cm/OE9QLwVAytZSa+ZFok LSn77aqkOVEmYck3Wgmsl7nqjzkCLqzF974EgCIC1pBappn/yzAiut40EsPlNo0= X-Gm-Gg: ASbGncuIJPVSlNcjX/mlOVrdYLzsmqA7ibiGnbjVfg0+s9YMtPsJoAJ6O1GXRFth6Of n4Rtzo/zd9koGAGWw8P3z9i33pln4sL+mVhjYQJSYQj0BQLNahhqLt2jopwyWKhmSg8I0I1vkts tWZ2j301/X4RkhcERMfIPgD1v5AkTDOFHTRCbL1PyJsfrCrGuhSosDemA8QvvoGb3XQQgxvjkG7 ctZnDhbD7SlNmBTgaiVnOYsTcrX5YI5Tp8lBa1xZ5teIwox8vxPfJMCB3WEOHnx7u+yGXtSWfrA hW9E0F7GUZxVKzJKh+I89YFbQpt66HHEsuoG5pGmFgBq8qiv/WFJr/Q= X-Google-Smtp-Source: AGHT+IHQiiP5btfExyIgWnU1OcAly0mt+ss60kJ2KdCzrdUwmGZwEQ9aMQC3ORD43i1DLiaddC43Zw== X-Received: by 2002:a05:6000:2405:b0:39a:c9ed:8555 with SMTP id ffacd0b85a97d-39efba52eb0mr9486521f8f.23.1745258184084; Mon, 21 Apr 2025 10:56:24 -0700 (PDT) Received: from smtpclient.apple ([131.111.5.201]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-39efa4332b2sm12707701f8f.30.2025.04.21.10.56.23 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Mon, 21 Apr 2025 10:56:23 -0700 (PDT) Content-Type: text/plain; charset=utf-8 List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3826.300.87.4.3\)) Subject: Re: git: f1e18f331923 - main - riscv: Exclude OpenSBI memory regions when booting with EFI From: Jessica Clarke In-Reply-To: <6F9CE6EB-8A7E-48D1-BDE5-AB7D930EC1DE@freebsd.org> Date: Mon, 21 Apr 2025 18:56:13 +0100 Cc: "src-committers@freebsd.org" , "dev-commits-src-all@freebsd.org" , "dev-commits-src-main@freebsd.org" Content-Transfer-Encoding: quoted-printable Message-Id: References: <202504161421.53GELphv059586@gitrepo.freebsd.org> <6F9CE6EB-8A7E-48D1-BDE5-AB7D930EC1DE@freebsd.org> To: =?utf-8?Q?Bojan_Novkovi=C4=87?= X-Mailer: Apple Mail (2.3826.300.87.4.3) X-Spamd-Result: default: False [0.60 / 15.00]; RBL_SENDERSCORE_REPUT_9(-1.00)[209.85.221.41:from]; NEURAL_SPAM_LONG(1.00)[1.000]; NEURAL_HAM_SHORT(-0.99)[-0.994]; NEURAL_SPAM_MEDIUM(0.99)[0.993]; MV_CASE(0.50)[]; FORGED_SENDER(0.30)[jrtc27@freebsd.org,jrtc27@jrtc27.com]; R_SPF_ALLOW(-0.20)[+ip4:209.85.128.0/17]; DMARC_POLICY_SOFTFAIL(0.10)[freebsd.org : SPF not aligned (relaxed), No valid DKIM,none]; MIME_GOOD(-0.10)[text/plain]; ARC_NA(0.00)[]; RCVD_TLS_LAST(0.00)[]; PREVIOUSLY_DELIVERED(0.00)[dev-commits-src-main@freebsd.org]; TO_DN_EQ_ADDR_SOME(0.00)[]; MIME_TRACE(0.00)[0:+]; FROM_NEQ_ENVFROM(0.00)[jrtc27@freebsd.org,jrtc27@jrtc27.com]; TO_DN_SOME(0.00)[]; RCPT_COUNT_THREE(0.00)[4]; FREEFALL_USER(0.00)[jrtc27]; TO_MATCH_ENVRCPT_SOME(0.00)[]; MID_RHS_MATCH_FROM(0.00)[]; R_DKIM_NA(0.00)[]; MLMMJ_DEST(0.00)[dev-commits-src-main@freebsd.org]; RCVD_COUNT_TWO(0.00)[2]; RWL_MAILSPIKE_POSSIBLE(0.00)[209.85.221.41:from]; RCVD_IN_DNSWL_NONE(0.00)[209.85.221.41:from]; RCVD_VIA_SMTP_AUTH(0.00)[]; ASN(0.00)[asn:15169, ipnet:209.85.128.0/17, country:US]; FROM_HAS_DN(0.00)[] X-Rspamd-Queue-Id: 4ZhCjP5pyMz3fM7 X-Spamd-Bar: / On 16 Apr 2025, at 15:30, Jessica Clarke wrote: >=20 > On 16 Apr 2025, at 15:21, Bojan Novkovi=C4=87 = wrote: >>=20 >> The branch main has been updated by bnovkov: >>=20 >> URL: = https://cgit.FreeBSD.org/src/commit/?id=3Df1e18f331923041980149fef46cdb273= 6e61debb >>=20 >> commit f1e18f331923041980149fef46cdb2736e61debb >> Author: Bojan Novkovi=C4=87 >> AuthorDate: 2025-04-15 16:28:05 +0000 >> Commit: Bojan Novkovi=C4=87 >> CommitDate: 2025-04-16 14:20:13 +0000 >>=20 >> riscv: Exclude OpenSBI memory regions when booting with EFI >>=20 >> OpenSBI uses the first PMP entry to prevent buggy supervisor >> software from overwriting the firmware [1]. However, this >> region may not be properly marked as reserved in the EFI map, = leading >> to an access violation exception whenever the kernel >> attempts to write to a page from that region. >>=20 >> Fix this by preemptively excluding first EFI memory map entry >> if it is marked as "BootServicesData". >>=20 >> [1] https://github.com/riscv-non-isa/riscv-sbi-doc/pull/37 >>=20 >> Reported by: tuexen >> Tested by: tuexen >> Fixes: a2e2178402af >> Reviewed by: imp, jrtc27 >=20 > No I didn=E2=80=99t, I left a comment saying I didn=E2=80=99t like the = concept. >=20 >> Differential Revision: https://reviews.freebsd.org/D49839 >> --- >> sys/riscv/riscv/machdep.c | 32 ++++++++++++++++++++++++++++++-- >> 1 file changed, 30 insertions(+), 2 deletions(-) >>=20 >> diff --git a/sys/riscv/riscv/machdep.c b/sys/riscv/riscv/machdep.c >> index 516dbde5ffaa..f253bc9a853b 100644 >> --- a/sys/riscv/riscv/machdep.c >> +++ b/sys/riscv/riscv/machdep.c >> @@ -541,6 +541,22 @@ fdt_physmem_exclude_region_cb(const struct = mem_region *mr, void *arg __unused) >> } >> #endif >>=20 >> +static void >> +efi_exclude_sbi_pmp_cb(struct efi_md *p, void *argp) >> +{ >> + bool *first =3D (bool *)argp; >> + >> + if (!*first) >> + return; >> + >> + *first =3D false; >> + if (p->md_type =3D=3D EFI_MD_TYPE_BS_DATA) { >> + physmem_exclude_region(p->md_phys, >> + min(p->md_pages * EFI_PAGE_SIZE, L2_SIZE), >> + EXFLAG_NOALLOC); >=20 > Doesn=E2=80=99t this need EXFLAG_NODUMP like the FDT case? Ping. Jess