mirror of
https://github.com/ipxe/ipxe
synced 2026-02-02 19:57:34 +03:00
[riscv] Hold virtual address offset in the thread pointer register
iPXE does not make use of any thread-local storage. Use the otherwise
unused thread pointer register ("tp") to hold the current value of
the virtual address offset, rather than using a global variable.
This ensures that virt_offset can be made valid even during very early
initialisation (when iPXE may be executing directly from read-only
memory and so cannot update a global variable).
Signed-off-by: Michael Brown <mcb30@ipxe.org>
This commit is contained in:
15
src/include/bits/virt_offset.h
Normal file
15
src/include/bits/virt_offset.h
Normal file
@@ -0,0 +1,15 @@
|
||||
#ifndef _BITS_VIRT_OFFSET_H
|
||||
#define _BITS_VIRT_OFFSET_H
|
||||
|
||||
/** @file
|
||||
*
|
||||
* Dummy architecture-specific virtual address offset
|
||||
*
|
||||
* This file is included only if the architecture does not provide its
|
||||
* own version of this file.
|
||||
*
|
||||
*/
|
||||
|
||||
FILE_LICENCE ( GPL2_OR_LATER_OR_UBDL );
|
||||
|
||||
#endif /* _BITS_VIRT_OFFSET_H */
|
||||
Reference in New Issue
Block a user