kvm tools, bios: Introduce bioscall specificator

We are to be sure how arguments are passed from
bios assembler code to C code. Just for sure.

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
Signed-off-by: Pekka Enberg <penberg@kernel.org>
This commit is contained in:
Cyrill Gorcunov
2015-06-01 16:39:41 +01:00
committed by Will Deacon
parent fbfe68b74e
commit 97a2dda645
3 changed files with 8 additions and 2 deletions
+1 -1
View File
@@ -77,7 +77,7 @@ ENTRY(bios_int15)
pushl %ebx
pushl %eax
movl %esp, %eax
movl %esp, %eax # it's bioscall case
call e820_query_map
popl %eax
+1 -1
View File
@@ -18,7 +18,7 @@ static inline uint8_t rdfs8(unsigned long addr)
return v;
}
void e820_query_map(struct e820_query *query)
bioscall void e820_query_map(struct e820_query *query)
{
uint8_t map_size;
uint16_t fs_seg;
+6
View File
@@ -62,4 +62,10 @@
#define BIOS_NEXT_IRQ_ADDR(addr, size) \
ALIGN((addr + size + 1), 16)
/*
* When interfere with assembler code we need to be sure how
* arguments are passed in real mode.
*/
#define bioscall __attribute__((regparm(3)))
#endif /* BIOS_H_ */