Date: Mon, 19 Aug 2013 16:16:49 +0000 (UTC) From: Rafal Jaworowski <raj@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r254536 - in head/sys/arm: arm include Message-ID: <201308191616.r7JGGnDm030224@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: raj Date: Mon Aug 19 16:16:49 2013 New Revision: 254536 URL: http://svnweb.freebsd.org/changeset/base/254536 Log: Do not use pv_kva on ARMv6/v7 and save some space on each vm_page. It's only relevant for older ARM variants (with virtual cache). Submitted by: Zbigniew Bodek <zbb@semihalf.com> Reviewed by: gber Sponsored by: The FreeBSD Foundation, Semihalf Modified: head/sys/arm/arm/pmap-v6.c head/sys/arm/include/pmap.h Modified: head/sys/arm/arm/pmap-v6.c ============================================================================== --- head/sys/arm/arm/pmap-v6.c Mon Aug 19 15:58:39 2013 (r254535) +++ head/sys/arm/arm/pmap-v6.c Mon Aug 19 16:16:49 2013 (r254536) @@ -4365,6 +4365,6 @@ pmap_page_set_memattr(vm_page_t m, vm_me * uncacheable, being careful to sync caches and PTEs (and maybe * invalidate TLB?) for any current mapping it modifies. */ - if (m->md.pv_kva != 0 || TAILQ_FIRST(&m->md.pv_list) != NULL) + if (TAILQ_FIRST(&m->md.pv_list) != NULL) panic("Can't change memattr on page with existing mappings"); } Modified: head/sys/arm/include/pmap.h ============================================================================== --- head/sys/arm/include/pmap.h Mon Aug 19 15:58:39 2013 (r254535) +++ head/sys/arm/include/pmap.h Mon Aug 19 16:16:49 2013 (r254536) @@ -121,7 +121,9 @@ struct pv_chunk; struct md_page { int pvh_attrs; vm_memattr_t pv_memattr; +#if (ARM_MMU_V6 + ARM_MMU_V7) == 0 vm_offset_t pv_kva; /* first kernel VA mapping */ +#endif TAILQ_HEAD(,pv_entry) pv_list; };
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201308191616.r7JGGnDm030224>