On 5/18/22 16:33, David Hildenbrand wrote:
On 16.05.22 16:21, Pierre Morel wrote:
On 5/12/22 12:01, David Hildenbrand wrote:
I think we prefer something like u16 when copying to user space.
but then userspace also has to expect a u16, right?
Yep.
Yes but in fact, inspired by previous discussion I had on the VFIO
interface, that is the reason why I did prefer an int.
It is much simpler than a u16 and the definition of a bit.
Despite a bit in a u16 is what the s3990 achitecture proposes I thought
we could make it easier on the KVM/QEMU interface.
But if the discussion stops here, I will do as you both propose change
to u16 in KVM and userland and add the documentation for the interface.
In general, we pass via the ABI fixed-sized values -- u8, u16, u32, u64
... instead of int. Simply because sizeof(int) is in theory variable
(e.g., 32bit vs 64bit).
Take a look at arch/s390/include/uapi/asm/kvm.h and you won't find any
usage of int or bool.
Having that said, I'll let the maintainers decide. Using e.g., u8 is
just the natural thing to do on a Linux ABI, but we don't really support
32 bit ... maybe we'll support 128bit at one point? ;)
OK then I use u16 with a flag in case we get something in the utilities
which is related to the topology in the future.
Thanks,
Pierre
--
Pierre Morel
IBM Lab Boeblingen