Remove unneeded vector_page_setprot() for __ARM_ARCH >= 6. A vector
page is always mapped in KVA space and so it's always writeable.
This commit is contained in:
parent
195ea683fb
commit
bcbc0ff17d
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=295696
@ -41,6 +41,7 @@ __FBSDID("$FreeBSD$");
|
||||
#include <sys/param.h>
|
||||
#include <sys/systm.h>
|
||||
|
||||
#include <machine/acle-compat.h>
|
||||
#include <machine/armreg.h>
|
||||
#include <machine/cpufunc.h>
|
||||
#include <machine/fiq.h>
|
||||
@ -73,13 +74,13 @@ fiq_installhandler(void *func, size_t size)
|
||||
{
|
||||
const uint32_t fiqvector = 7 * sizeof(uint32_t);
|
||||
|
||||
#if !defined(__ARM_FIQ_INDIRECT)
|
||||
#if __ARM_ARCH < 6 && !defined(__ARM_FIQ_INDIRECT)
|
||||
vector_page_setprot(VM_PROT_READ|VM_PROT_WRITE);
|
||||
#endif
|
||||
|
||||
memcpy((void *)(vector_page + fiqvector), func, size);
|
||||
|
||||
#if !defined(__ARM_FIQ_INDIRECT)
|
||||
#if __ARM_ARCH < 6 && !defined(__ARM_FIQ_INDIRECT)
|
||||
vector_page_setprot(VM_PROT_READ);
|
||||
#endif
|
||||
icache_sync((vm_offset_t) fiqvector, size);
|
||||
|
@ -6314,11 +6314,6 @@ pmap_fault(pmap_t pmap, vm_offset_t far, uint32_t fsr, int idx, bool usermode)
|
||||
return (KERN_FAILURE);
|
||||
}
|
||||
|
||||
/* !!!! REMOVE !!!! */
|
||||
void vector_page_setprot(int p)
|
||||
{
|
||||
}
|
||||
|
||||
#if defined(PMAP_DEBUG)
|
||||
/*
|
||||
* Reusing of KVA used in pmap_zero_page function !!!
|
||||
|
@ -243,11 +243,6 @@ void pmap_preboot_map_attr(vm_paddr_t, vm_offset_t, vm_size_t, vm_prot_t,
|
||||
*/
|
||||
#define PMAP_DOMAIN_KERNEL 0 /* The kernel uses domain #0 */
|
||||
|
||||
/*
|
||||
* sys/arm/arm/cpufunc.c
|
||||
*/
|
||||
void vector_page_setprot(int);
|
||||
|
||||
#endif /* _KERNEL */
|
||||
// -----------------------------------------------------------------------------
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user