From owner-svn-src-head@freebsd.org Thu Jun 11 01:57:05 2020 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id D0787344929 for ; Thu, 11 Jun 2020 01:57:05 +0000 (UTC) (envelope-from marklmi@yahoo.com) Received: from sonic312-25.consmr.mail.gq1.yahoo.com (sonic312-25.consmr.mail.gq1.yahoo.com [98.137.69.206]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 49j6Rh5QgCz3b2x for ; Thu, 11 Jun 2020 01:57:04 +0000 (UTC) (envelope-from marklmi@yahoo.com) X-YMail-OSG: EcYWCd8VM1mhPmWkBvPeNWsfCnelVPAeJfxYido6r5Q_2soHJB4lG8t0wILngZk ye9pqxVUx9zwz09dyfJ3P9EYJGgc4ytH4BceyfHk4hwnAyyKxQWlM2yIg96z4D0F8a01rykHKiog KMLdIfZHurDZCWn_Pjsej.VOidxZfTQoy_1Bt6hk8rZ62bB2h41cus_xwAsVHv664fshMWlw0Qbq d8KtbdMdRbN3BolSLp6P1ZecRM212r7w_SEKqRbW3yoZ1HQnk8FHZsxJXjsDJYFmd4eA1ZhMTKpA ZnmZAepncte_uEMMLk2J.qtE.zOwiwTrlt2ZRBB_gNBy2pAw9YEYif2wq25ZfXJi9fSNKn0rLHfi s7H9Suy89bm8VmUSliw03WBBHipLMy0ozMXnV9qkG7wksCFvLSlWClwcqh.GHk6UCt9m5ODJ.VAV tntWg3cXR1zR6wiXtnz2ttSjUTZuM5lA2GYzfOTDeX2rN6F70YtXUhrSiRrEX4njbgO3uz0nxxKe BWSNcJbUD7r80K7oKtbVsOL8AcKAHiJ_f3_EhtXseajEk0OaTeM9jKoQXjglsI6d..LmdZKhZ7S4 4oVLU5QgRrL._176furakeDlbcIOKcPUSBJkf82HsuD5jLKLANz4qyBz8wS5e6S1qHGhP_46O.rG w3GnF1VWLXvvp3uNnDeRDddCxWib9KFJDatOALRf7whI2vu6yql8yBYQZwBE0hddqCRZyONQ8JDc x8BTvZWw.9FS.RF5hfm_EyucxbUS9YNEkPWUiz2iEtCyv5xtmhvT222pZsbB7JT1wv6h9S5zMY8x atG6MSvNDkzrWdZK7SX4PzJRvegFWoabyVG3KOdoH.z_1hSlz3dgFZI7v.fc4yePdIq.126N77Y2 VzmsaYm3azMxU3YppO1eiXCx5_0IpQ0WCmX42JGrA6XTUHQDz0Hf_0ATHakqWQ8ZJfE4IYVueD.L zmD__lR3va3Lbzy_dRQ61eHByN7PvntVjeXpcrcjMmdUVIYS4Fk7H_FPrJnpYFGnr3CuOMWdO9wL divaKmYUKDx36okSLvbsvGMb_JmJn08ueU6xtdcwAl6WqCKxA6Nlfh7QT.zmJFK14Ho2lTHcW70C sNXZhA5YFQjpLTz.Xzrj9HH278ZzTpmHpVhvgwAV7T3kMCpHgyScn9REMhJX89W0brsKcoBZuCGo pmhULcAv6pLS7NXyYtKl_Tnvke4LoJKehtBYe9Va.sLAnkn_bTtn7k33Utg_KJJuSkOy5T66d0uQ SPgTROrzIbUcCPaYBfmZc4VEp0B86uw2czQCX_Zdds0lmzLYdqE3MjhZJZRdgMOeyPZvTVQ2zRbH 40W83C7fag4tqceICToJATPPi5he3fidNPxh13roTdt70kCcZB4LnJKLCAs95BiK9SgTvtq4snzT 2zbv6Tl_osVCl6VH.VQ-- Received: from sonic.gate.mail.ne1.yahoo.com by sonic312.consmr.mail.gq1.yahoo.com with HTTP; Thu, 11 Jun 2020 01:57:01 +0000 Received: by smtp419.mail.ne1.yahoo.com (VZM Hermes SMTP Server) with ESMTPA ID 54c6ff5e13356fd16977b52c6a38d5c8; Thu, 11 Jun 2020 01:56:58 +0000 (UTC) Content-Type: text/plain; charset=us-ascii Mime-Version: 1.0 (Mac OS X Mail 13.4 \(3608.80.23.2.2\)) Subject: Re: svn commit: r360233 - in head: contrib/jemalloc . . . : This partially breaks a 2-socket 32-bit powerpc (old PowerMac G4) based on head -r360311 From: Mark Millard In-Reply-To: <20200513105632.06db9e21@titan.knownspace> Date: Wed, 10 Jun 2020 18:56:57 -0700 Cc: "vangyzen@freebsd.org" , svn-src-head@freebsd.org, FreeBSD Current , FreeBSD Hackers , FreeBSD PowerPC ML , Brandon Bergren Content-Transfer-Encoding: quoted-printable Message-Id: References: <8479DD58-44F6-446A-9CA5-D01F0F7C1B38@yahoo.com> <17ACDA02-D7EF-4F26-874A-BB3E935CD072@yahoo.com> <695E6836-F860-4557-B7DE-CC1EDB347F18@yahoo.com> <121B9B09-141B-4DC3-918B-1E7CFB99E779@yahoo.com> <8AAB0462-3FA8-490C-8D8D-7C15B1C9E2DE@yahoo.com> <18E62746-80DB-4195-977D-4FF32D0129EE@yahoo.com> <9562EEE4-62EF-4164-91C0-948CC0432984@yahoo.com> <9B68839B-AEC8-43EE-B3B6-B696A4A57DAE@yahoo.com> <359C9C7D-4106-42B5-AAB5-08EF995B8100@yahoo.com> <20200513105632.06db9e21@titan.knownspace> To: Justin Hibbits X-Mailer: Apple Mail (2.3608.80.23.2.2) X-Rspamd-Queue-Id: 49j6Rh5QgCz3b2x X-Spamd-Bar: --- X-Spamd-Result: default: False [-3.02 / 15.00]; TO_DN_EQ_ADDR_SOME(0.00)[]; TO_DN_SOME(0.00)[]; FREEMAIL_FROM(0.00)[yahoo.com]; MV_CASE(0.50)[]; R_SPF_ALLOW(-0.20)[+ptr:yahoo.com]; DKIM_TRACE(0.00)[yahoo.com:+]; DMARC_POLICY_ALLOW(-0.50)[yahoo.com,reject]; RCPT_COUNT_SEVEN(0.00)[7]; NEURAL_HAM_SHORT(-0.47)[-0.466]; FREEMAIL_TO(0.00)[gmail.com]; FROM_EQ_ENVFROM(0.00)[]; RCVD_TLS_LAST(0.00)[]; MIME_TRACE(0.00)[0:+]; FREEMAIL_ENVFROM(0.00)[yahoo.com]; ASN(0.00)[asn:36647, ipnet:98.137.64.0/21, country:US]; MID_RHS_MATCH_FROM(0.00)[]; DWL_DNSWL_NONE(0.00)[yahoo.com:dkim]; ARC_NA(0.00)[]; NEURAL_HAM_MEDIUM(-1.06)[-1.064]; R_DKIM_ALLOW(-0.20)[yahoo.com:s=s2048]; FROM_HAS_DN(0.00)[]; NEURAL_HAM_LONG(-0.99)[-0.985]; MIME_GOOD(-0.10)[text/plain]; TO_MATCH_ENVRCPT_SOME(0.00)[]; RCVD_IN_DNSWL_NONE(0.00)[98.137.69.206:from]; RWL_MAILSPIKE_POSSIBLE(0.00)[98.137.69.206:from]; RCVD_COUNT_TWO(0.00)[2] X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 11 Jun 2020 01:57:05 -0000 On 2020-May-13, at 08:56, Justin Hibbits wrote: > Hi Mark, Hello Justin. > On Wed, 13 May 2020 01:43:23 -0700 > Mark Millard wrote: >=20 >> [I'm adding a reference to an old arm64/aarch64 bug that had >> pages turning to zero, in case this 32-bit powerpc issue is >> somewhat analogous.] >>=20 >>> . . . > ... >> . . . >>=20 >> (Note: dsl-only.net closed down, so the E-mail >> address reference is no longer valid.) >>=20 >> Author: kib >> Date: Mon Apr 10 15:32:26 2017 >> New Revision: 316679 >> URL:=20 >> https://svnweb.freebsd.org/changeset/base/316679 >>=20 >>=20 >> Log: >> Do not lose dirty bits for removing PROT_WRITE on arm64. >>=20 >> Arm64 pmap interprets accessed writable ptes as modified, since >> ARMv8.0 does not track Dirty Bit Modifier in hardware. If writable >> bit is removed, page must be marked as dirty for MI VM. >>=20 >> This change is most important for COW, where fork caused losing >> content of the dirty pages which were not yet scanned by pagedaemon. >>=20 >> Reviewed by: alc, andrew >> Reported and tested by: Mark Millard >> PR: 217138, 217239 >> Sponsored by: The FreeBSD Foundation >> MFC after: 2 weeks >>=20 >> Modified: >> head/sys/arm64/arm64/pmap.c >>=20 >> Modified: head/sys/arm64/arm64/pmap.c >> = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D >> --- head/sys/arm64/arm64/pmap.c Mon Apr 10 12:35:58 >> 2017 (r316678) +++ head/sys/arm64/arm64/pmap.c Mon Apr >> 10 15:32:26 2017 (r316679) @@ -2481,6 +2481,11 @@ >> pmap_protect(pmap_t pmap, vm_offset_t sv sva +=3D L3_SIZE) { >> l3 =3D pmap_load(l3p); >> if (pmap_l3_valid(l3)) { >> + if ((l3 & ATTR_SW_MANAGED) && >> + pmap_page_dirty(l3)) { >> + >> vm_page_dirty(PHYS_TO_VM_PAGE(l3 & >> + ~ATTR_MASK)); >> + } >> pmap_set(l3p, ATTR_AP(ATTR_AP_RO)); >> PTE_SYNC(l3p); >> /* XXX: Use pmap_invalidate_range */ >>=20 >> . . . >>=20 >=20 > Thanks for this reference. I took a quick look at the 3 pmap > implementations we have (haven't check the new radix pmap yet), and it > looks like only mmu_oea.c (32-bit AIM pmap, for G3 and G4) is missing > vm_page_dirty() calls in its pmap_protect() implementation, analogous > to the change you posted right above. Given this, I think it's safe to > say that this missing piece is necessary. We'll work on a fix for > this; looking at moea64_protect(), there may be additional work needed > to support this as well, so it may take a few days. Ping? Any clue when the above might happen? I've been avoiding the old PowerMacs and leaving them at head -r360311 , pending an update that would avoid the kernel zeroing pages that it should not zero. But I've seen that you were busy with more modern contexts this last about a month. And, clearly, my own context has left pending (for much longer) other more involved activities (compared to just periodically updating to more recent FreeBSD vintages). =3D=3D=3D Mark Millard marklmi at yahoo.com ( dsl-only.net went away in early 2018-Mar)