aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sys/arm/include/stack.h3
-rw-r--r--sys/arm64/include/stack.h3
-rw-r--r--sys/powerpc/include/stack.h3
-rw-r--r--sys/riscv/include/stack.h3
4 files changed, 8 insertions, 4 deletions
diff --git a/sys/arm/include/stack.h b/sys/arm/include/stack.h
index e8d130517be5..748ef35a444e 100644
--- a/sys/arm/include/stack.h
+++ b/sys/arm/include/stack.h
@@ -78,7 +78,8 @@ static __inline bool
kstack_contains(struct thread *td, vm_offset_t va, size_t len)
{
return (va >= td->td_kstack && va + len >= va &&
- va + len <= td->td_kstack + td->td_kstack_pages * PAGE_SIZE);
+ va + len <= td->td_kstack + td->td_kstack_pages * PAGE_SIZE -
+ sizeof(struct pcb));
}
#endif /* _SYS_PROC_H_ */
diff --git a/sys/arm64/include/stack.h b/sys/arm64/include/stack.h
index 4c4c41bf9516..58fb2cf0e8a5 100644
--- a/sys/arm64/include/stack.h
+++ b/sys/arm64/include/stack.h
@@ -53,7 +53,8 @@ static __inline bool
kstack_contains(struct thread *td, vm_offset_t va, size_t len)
{
return (va >= td->td_kstack && va + len >= va &&
- va + len <= td->td_kstack + td->td_kstack_pages * PAGE_SIZE);
+ va + len <= td->td_kstack + td->td_kstack_pages * PAGE_SIZE -
+ sizeof(struct pcb));
}
#endif /* _SYS_PROC_H_ */
diff --git a/sys/powerpc/include/stack.h b/sys/powerpc/include/stack.h
index 953afd6f0aa4..53ea0fc3bc54 100644
--- a/sys/powerpc/include/stack.h
+++ b/sys/powerpc/include/stack.h
@@ -48,7 +48,8 @@ static __inline bool
kstack_contains(struct thread *td, vm_offset_t va, size_t len)
{
return (va >= td->td_kstack && va + len >= va &&
- va + len <= td->td_kstack + td->td_kstack_pages * PAGE_SIZE);
+ va + len <= td->td_kstack + td->td_kstack_pages * PAGE_SIZE -
+ sizeof(struct pcb));
}
#endif /* _SYS_PROC_H_ */
diff --git a/sys/riscv/include/stack.h b/sys/riscv/include/stack.h
index 566081c3ebd0..1f6907742b6a 100644
--- a/sys/riscv/include/stack.h
+++ b/sys/riscv/include/stack.h
@@ -63,7 +63,8 @@ static __inline bool
kstack_contains(struct thread *td, vm_offset_t va, size_t len)
{
return (va >= td->td_kstack && va + len >= va &&
- va + len <= td->td_kstack + td->td_kstack_pages * PAGE_SIZE);
+ va + len <= td->td_kstack + td->td_kstack_pages * PAGE_SIZE -
+ sizeof(struct pcb));
}
#endif /* _SYS_PROC_H_ */