Date: Thu, 30 Jul 2015 16:17:44 +0000 (UTC) From: Andrew Turner <andrew@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r286080 - head/sys/arm64/arm64 Message-ID: <201507301617.t6UGHiBh012200@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: andrew Date: Thu Jul 30 16:17:44 2015 New Revision: 286080 URL: https://svnweb.freebsd.org/changeset/base/286080 Log: Add enough of pmap_page_set_memattr to run gstat. It still needs to split the DMAP 1G pages so we set the attributes only on the specified page. Obtained from: ABT Systems Ltd Sponsored by: The FreeBSD Foundation Modified: head/sys/arm64/arm64/pmap.c Modified: head/sys/arm64/arm64/pmap.c ============================================================================== --- head/sys/arm64/arm64/pmap.c Thu Jul 30 16:06:13 2015 (r286079) +++ head/sys/arm64/arm64/pmap.c Thu Jul 30 16:17:44 2015 (r286080) @@ -2971,7 +2971,17 @@ void pmap_page_set_memattr(vm_page_t m, vm_memattr_t ma) { - panic("ARM64TODO: pmap_page_set_memattr"); + m->md.pv_memattr = ma; + + /* + * ARM64TODO: Implement the below (from the amd64 pmap) + * If "m" is a normal page, update its direct mapping. This update + * can be relied upon to perform any cache operations that are + * required for data coherence. + */ + if ((m->flags & PG_FICTITIOUS) == 0 && + PHYS_IN_DMAP(VM_PAGE_TO_PHYS(m))) + panic("ARM64TODO: pmap_page_set_memattr"); } /*
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201507301617.t6UGHiBh012200>