[PATCH 5/16] hypervisor functions for Celleb

Christoph Hellwig hch at lst.de
Thu Nov 16 05:37:46 EST 2006


> +extern int64_t beat_errno;

Please don't use a global arrno variable.

> +static inline int64_t beat_allocate_memory(uint64_t __in0, uint64_t __in1, uint64_t __in2, uint64_t __in3,void** __out0,uint64_t* __out1) {
> +	register uint64_t __reg0 __asm__("r3");
> +	register uint64_t __reg1 __asm__("r4");
> +	register uint64_t __reg2 __asm__("r5");
> +	register uint64_t __reg3 __asm__("r6");
> +	register uint64_t __sn __asm__("r11") = (0UL);

No point in declaring this a register variable, gcc ignores the
specifier.  Is there any chance to not duplicate the inline assembly
for every single hypercall but have generic call with n arguments
helper, as for the phyp hvcalls?




More information about the Linuxppc-dev mailing list