summaryrefslogtreecommitdiffstats
path: root/sys/amd64/amd64/apic_vector.S
diff options
context:
space:
mode:
authorpeter <peter@FreeBSD.org>2002-08-23 21:45:59 +0000
committerpeter <peter@FreeBSD.org>2002-08-23 21:45:59 +0000
commitd2bcc5e4b169c8d19c372077c033e912971323d9 (patch)
tree05aac5faa2ce516afb968be400678e6680fea76b /sys/amd64/amd64/apic_vector.S
parent056b90d6f9e4f3183c0e030b4261240fa88d0534 (diff)
downloadFreeBSD-src-d2bcc5e4b169c8d19c372077c033e912971323d9.zip
FreeBSD-src-d2bcc5e4b169c8d19c372077c033e912971323d9.tar.gz
Ok, somebody please shoot me. The asm I wrote for the ranged IPI shootdown
was wrong. It only ever invalidated one page due to me getting the loop terminator wrong. This explains the DISABLE_PG_G effect on SMP.
Diffstat (limited to 'sys/amd64/amd64/apic_vector.S')
-rw-r--r--sys/amd64/amd64/apic_vector.S2
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/amd64/amd64/apic_vector.S b/sys/amd64/amd64/apic_vector.S
index 569ed50..f8e0321 100644
--- a/sys/amd64/amd64/apic_vector.S
+++ b/sys/amd64/amd64/apic_vector.S
@@ -351,7 +351,7 @@ Xinvlrng:
movl smp_tlb_addr2, %eax
1: invlpg (%edx) /* invalidate single page */
addl $PAGE_SIZE, %edx
- cmpl %edx, %eax
+ cmpl %eax, %edx
jb 1b
movl $0, lapic+LA_EOI /* End Of Interrupt to APIC */
OpenPOWER on IntegriCloud