#regzbot ^introduced 2139619bcad7ac44cc8f6f749089120594056613 Over at https://lore.kernel.org/linux-riscv/Yz80ewHKTPI5Rvuz@spud/T/#ebde47064434d4ca4807b4abb8eb39898c48a8de2 it is reported that 2139619bcad7ac44cc8f6f749089120594056613 regresses userspace (openjdk) on riscv64. This commit has already been released in v6.0 kernel upstream, but has also been included in the stable patch series all the way back to v4.19.y There is a proposed fix for this at https://lore.kernel.org/linux-riscv/20220915193702.2201018-1-abrestic@xxxxxxxxxxxx/ which has not yet been merged upstream or in stable series. Please review and merge above proposed fix, or please revert 2139619bcad7ac44cc8f6f749089120594056613 to stop the regression spreading to all the distributions. In Ubuntu this regression will be tracked as https://bugs.launchpad.net/bugs/+bug/1992484 -------- Forwarded Message -------- Subject: Re: [PATCH] riscv: mmap with PROT_WRITE but no PROT_READ is invalid Date: Thu, 6 Oct 2022 22:20:02 +0300 From: Eva Kotova <nyandarknessgirl@xxxxxxxxx> Reply-To: PH7PR14MB559464DBDD310E755F5B21E8CEDC9@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx To: coelacanthus@xxxxxxxxxxx CC: c141028@xxxxxxxxx, dramforever@xxxxxxxx, linux-riscv@xxxxxxxxxxxxxxxxxxx, palmer@xxxxxxxxxxx, xc-tan@xxxxxxxxxxx On Tue, 31 May 2022 00:56:52 PDT (-0700), coelacanthus@xxxxxxxxxxx wrote:
As mentioned in Table 4.5 in RISC-V spec Volume 2 Section 4.3, write but not read is "Reserved for future use.". For now, they are not valid. In the current code, -wx is marked as invalid, but -w- is not marked as invalid.
This patch breaks OpenJDK/Java on RISC-V, as it tries to create a w-only protective page: # # There is insufficient memory for the Java Runtime Environment to continue. # Native memory allocation (mmap) failed to map 4096 bytes for failed to allocate memory for PaX check. # An error report file with more information is saved as: # /root/hs_err_pid107.log I bisected to this commit since on Linux 5.19+ java no longer works. Perhaps some fallback should be implemented, to prevent userspace breakage. It is currently documented, that at least on i386 PROT_WRITE mappings imply PROT_READ (See man mmap(2) NOTES), this would be a good place to start. Best regards, Eva _______________________________________________ linux-riscv mailing list linux-riscv@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/linux-riscv
Attachment:
OpenPGP_signature
Description: OpenPGP digital signature