x86/fred: Reserve space for the FRED stack frame
When using FRED, reserve space at the top of the stack frame, just like i386 does. Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com> Signed-off-by: Xin Li <xin3.li@intel.com> Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Signed-off-by: Borislav Petkov (AMD) <bp@alien8.de> Tested-by: Shan Kang <shan.kang@intel.com> Link: https://lore.kernel.org/r/20231205105030.8698-17-xin3.li@intel.com
This commit is contained in:
parent
32b09c2303
commit
65c9cc9e2c
@ -31,7 +31,9 @@
|
|||||||
* In vm86 mode, the hardware frame is much longer still, so add 16
|
* In vm86 mode, the hardware frame is much longer still, so add 16
|
||||||
* bytes to make room for the real-mode segments.
|
* bytes to make room for the real-mode segments.
|
||||||
*
|
*
|
||||||
* x86_64 has a fixed-length stack frame.
|
* x86-64 has a fixed-length stack frame, but it depends on whether
|
||||||
|
* or not FRED is enabled. Future versions of FRED might make this
|
||||||
|
* dynamic, but for now it is always 2 words longer.
|
||||||
*/
|
*/
|
||||||
#ifdef CONFIG_X86_32
|
#ifdef CONFIG_X86_32
|
||||||
# ifdef CONFIG_VM86
|
# ifdef CONFIG_VM86
|
||||||
@ -39,8 +41,12 @@
|
|||||||
# else
|
# else
|
||||||
# define TOP_OF_KERNEL_STACK_PADDING 8
|
# define TOP_OF_KERNEL_STACK_PADDING 8
|
||||||
# endif
|
# endif
|
||||||
#else
|
#else /* x86-64 */
|
||||||
# define TOP_OF_KERNEL_STACK_PADDING 0
|
# ifdef CONFIG_X86_FRED
|
||||||
|
# define TOP_OF_KERNEL_STACK_PADDING (2 * 8)
|
||||||
|
# else
|
||||||
|
# define TOP_OF_KERNEL_STACK_PADDING 0
|
||||||
|
# endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
Loading…
Reference in New Issue
Block a user