Date: Mon, 23 Dec 2002 15:39:57 -0800 (PST) From: Jake Burkholder <jake@FreeBSD.org> To: cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sys/sparc64/include tlb.h vmparam.h src/sys/sparc64/sparc64 exception.S genassym.c pmap.c Message-ID: <200212232339.gBNNdvew017011@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
jake 2002/12/23 15:39:57 PST Modified files: sys/sparc64/include tlb.h vmparam.h sys/sparc64/sparc64 exception.S genassym.c pmap.c Log: - Change the way the direct mapped region is implemented to be generally useful for accessing more than 1 page of contiguous physical memory, and to use 4mb tlb entries instead of 8k. This requires that the system only use the direct mapped addresses when they have the same virtual colour as all other mappings of the same page, instead of being able to choose the colour and cachability of the mapping. - Adapt the physical page copying and zeroing functions to account for not being able to choose the colour or cachability of the direct mapped address. This adds a lot more cases to handle. Basically when a page has a different colour than its direct mapped address we have a choice between bypassing the data cache and using physical addresses directly, which requires a cache flush, or mapping it at the right colour, which requires a tlb flush. For now we choose to map the page and do the tlb flush. This will allows the direct mapped addresses to be used for more things that don't require normal pmap handling, including mapping the vm_page structures, the message buffer, temporary mappings for crash dumps, and will provide greater benefit for implementing uma_small_alloc, due to the much greater tlb coverage. Revision Changes Path 1.25 +12 -5 src/sys/sparc64/include/tlb.h 1.13 +72 -31 src/sys/sparc64/include/vmparam.h 1.54 +7 -18 src/sys/sparc64/sparc64/exception.S 1.44 +3 -3 src/sys/sparc64/sparc64/genassym.c 1.96 +125 -50 src/sys/sparc64/sparc64/pmap.c To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200212232339.gBNNdvew017011>