summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authormarcel <marcel@FreeBSD.org>2011-11-17 15:51:03 +0000
committermarcel <marcel@FreeBSD.org>2011-11-17 15:51:03 +0000
commit6d664ed7cbbb34ea38e5554bd1d083a96079c572 (patch)
tree95acb16bcf644033677bfcfe659ec01a535e8a97
parentef4c84e32bd0feba0a4aa485c44c23db1bc24293 (diff)
downloadFreeBSD-src-6d664ed7cbbb34ea38e5554bd1d083a96079c572.zip
FreeBSD-src-6d664ed7cbbb34ea38e5554bd1d083a96079c572.tar.gz
Wire the kernel text RWX, rather than RX. We're not quite ready
for having kernel text non-writable, because we still need to apply relocations. On top of that, the PBVM page table has all pages marked as RWX, so it's an inconsistency to begin with.
-rw-r--r--sys/boot/ia64/common/exec.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/boot/ia64/common/exec.c b/sys/boot/ia64/common/exec.c
index 65886fa..b721f97 100644
--- a/sys/boot/ia64/common/exec.c
+++ b/sys/boot/ia64/common/exec.c
@@ -187,7 +187,7 @@ mmu_setup_paged(struct bootinfo *bi)
pa = ia64_va2pa(ia64_text_start, &ia64_text_size);
ia64_text_size = sz; /* XXX */
shft = sz2shft(ia64_text_start, ia64_text_size);
- shft = mmu_wire(ia64_text_start, (uintptr_t)pa, shft, PTE_AR_RX);
+ shft = mmu_wire(ia64_text_start, (uintptr_t)pa, shft, PTE_AR_RWX);
ia64_copyin(&shft, (uintptr_t)&bi->bi_text_mapped, 4);
/* Wire as much of the data segment as well. */
OpenPOWER on IntegriCloud