mirror of
https://github.com/ipxe/ipxe
synced 2025-12-20 12:00:19 +03:00
[uaccess] Replace real_to_user() with real_to_virt()
Remove the intermediate concept of a user pointer from real address conversion, leaving real_to_virt() as the directly implemented function. Signed-off-by: Michael Brown <mcb30@ipxe.org>
This commit is contained in:
@@ -49,7 +49,7 @@ static int bios_find_smbios2 ( struct smbios *smbios ) {
|
||||
int rc;
|
||||
|
||||
/* Scan through BIOS segment to find SMBIOS 32-bit entry point */
|
||||
if ( ( rc = find_smbios_entry ( real_to_user ( BIOS_SEG, 0 ), 0x10000,
|
||||
if ( ( rc = find_smbios_entry ( real_to_virt ( BIOS_SEG, 0 ), 0x10000,
|
||||
&entry ) ) != 0 )
|
||||
return rc;
|
||||
|
||||
@@ -73,7 +73,7 @@ static int bios_find_smbios3 ( struct smbios *smbios ) {
|
||||
int rc;
|
||||
|
||||
/* Scan through BIOS segment to find SMBIOS 64-bit entry point */
|
||||
if ( ( rc = find_smbios3_entry ( real_to_user ( BIOS_SEG, 0 ), 0x10000,
|
||||
if ( ( rc = find_smbios3_entry ( real_to_virt ( BIOS_SEG, 0 ), 0x10000,
|
||||
&entry ) ) != 0 )
|
||||
return rc;
|
||||
|
||||
|
||||
@@ -549,7 +549,7 @@ static int int13_rw_sectors ( struct san_device *sandev,
|
||||
lba = ( ( ( ( cylinder * int13->heads ) + head )
|
||||
* int13->sectors_per_track ) + sector - 1 );
|
||||
count = ix86->regs.al;
|
||||
buffer = real_to_user ( ix86->segs.es, ix86->regs.bx );
|
||||
buffer = real_to_virt ( ix86->segs.es, ix86->regs.bx );
|
||||
|
||||
DBGC2 ( sandev->drive, "C/H/S %d/%d/%d = LBA %08lx <-> %04x:%04x "
|
||||
"(count %d)\n", cylinder, head, sector, lba, ix86->segs.es,
|
||||
@@ -747,7 +747,7 @@ static int int13_extended_rw ( struct san_device *sandev,
|
||||
DBGC2 ( sandev->drive, "%08llx",
|
||||
( ( unsigned long long ) addr.buffer_phys ) );
|
||||
} else {
|
||||
buffer = real_to_user ( addr.buffer.segment,
|
||||
buffer = real_to_virt ( addr.buffer.segment,
|
||||
addr.buffer.offset );
|
||||
DBGC2 ( sandev->drive, "%04x:%04x", addr.buffer.segment,
|
||||
addr.buffer.offset );
|
||||
|
||||
@@ -106,7 +106,7 @@ static userptr_t rsdp_find_rsdt ( void ) {
|
||||
/* Search EBDA */
|
||||
get_real ( ebda_seg, BDA_SEG, BDA_EBDA );
|
||||
if ( ebda_seg < RSDP_EBDA_END_SEG ) {
|
||||
ebda = real_to_user ( ebda_seg, 0 );
|
||||
ebda = real_to_virt ( ebda_seg, 0 );
|
||||
ebda_len = ( ( RSDP_EBDA_END_SEG - ebda_seg ) * 16 );
|
||||
rsdt = rsdp_find_rsdt_range ( ebda, ebda_len );
|
||||
if ( rsdt )
|
||||
|
||||
@@ -243,7 +243,7 @@ static int vesafb_mode_list ( uint16_t **mode_numbers ) {
|
||||
controller->video_mode_ptr.offset );
|
||||
|
||||
/* Calculate length of mode list */
|
||||
video_mode_ptr = real_to_user ( controller->video_mode_ptr.segment,
|
||||
video_mode_ptr = real_to_virt ( controller->video_mode_ptr.segment,
|
||||
controller->video_mode_ptr.offset );
|
||||
len = 0;
|
||||
do {
|
||||
|
||||
Reference in New Issue
Block a user