mirror of https://github.com/ipxe/ipxe.git
[linux] Add stub phys_to_user() implementation
For symmetry with the stub user_to_phys() implementation, provide phys_to_user() with the same underlying assumption that virtual addresses are physical (since there is no way to know the real physical address when running as a Linux userspace executable). Signed-off-by: Michael Brown <mcb30@ipxe.org>pull/631/head
parent
27825e5557
commit
1e1b9593e6
|
@ -25,7 +25,7 @@ FILE_LICENCE ( GPL2_OR_LATER_OR_UBDL );
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Convert user buffer to physical address
|
* Convert user pointer to physical address
|
||||||
*
|
*
|
||||||
* @v userptr User pointer
|
* @v userptr User pointer
|
||||||
* @v offset Offset from user pointer
|
* @v offset Offset from user pointer
|
||||||
|
@ -46,6 +46,19 @@ UACCESS_INLINE ( linux, user_to_phys ) ( userptr_t userptr, off_t offset ) {
|
||||||
return ( userptr + offset );
|
return ( userptr + offset );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Convert physical address to user pointer
|
||||||
|
*
|
||||||
|
* @v phys_addr Physical address
|
||||||
|
* @ret userptr User pointer
|
||||||
|
*/
|
||||||
|
static inline __always_inline userptr_t
|
||||||
|
UACCESS_INLINE ( linux, phys_to_user ) ( physaddr_t phys_addr ) {
|
||||||
|
|
||||||
|
/* For symmetry with the stub user_to_phys() */
|
||||||
|
return phys_addr;
|
||||||
|
}
|
||||||
|
|
||||||
static inline __always_inline userptr_t
|
static inline __always_inline userptr_t
|
||||||
UACCESS_INLINE ( linux, virt_to_user ) ( volatile const void *addr ) {
|
UACCESS_INLINE ( linux, virt_to_user ) ( volatile const void *addr ) {
|
||||||
return trivial_virt_to_user ( addr );
|
return trivial_virt_to_user ( addr );
|
||||||
|
|
Loading…
Reference in New Issue