Re: [PATCH] uapi: fix linux/kfd_ioctl.h userspace compilation errors
From: Oded Gabbay
Date: Mon Nov 13 2017 - 11:12:12 EST
On Mon, Nov 13, 2017 at 2:35 AM, Dmitry V. Levin <ldv@xxxxxxxxxxxx> wrote:
> Consistently use types provided by <linux/types.h> via <drm/drm.h>
> to fix the following linux/kfd_ioctl.h userspace compilation errors:
>
> /usr/include/linux/kfd_ioctl.h:236:2: error: unknown type name 'uint64_t'
> uint64_t va_addr; /* to KFD */
> /usr/include/linux/kfd_ioctl.h:237:2: error: unknown type name 'uint32_t'
> uint32_t gpu_id; /* to KFD */
> /usr/include/linux/kfd_ioctl.h:238:2: error: unknown type name 'uint32_t'
> uint32_t pad;
> /usr/include/linux/kfd_ioctl.h:243:2: error: unknown type name 'uint64_t'
> uint64_t tile_config_ptr;
> /usr/include/linux/kfd_ioctl.h:245:2: error: unknown type name 'uint64_t'
> uint64_t macro_tile_config_ptr;
> /usr/include/linux/kfd_ioctl.h:249:2: error: unknown type name 'uint32_t'
> uint32_t num_tile_configs;
> /usr/include/linux/kfd_ioctl.h:253:2: error: unknown type name 'uint32_t'
> uint32_t num_macro_tile_configs;
> /usr/include/linux/kfd_ioctl.h:255:2: error: unknown type name 'uint32_t'
> uint32_t gpu_id; /* to KFD */
> /usr/include/linux/kfd_ioctl.h:256:2: error: unknown type name 'uint32_t'
> uint32_t gb_addr_config; /* from KFD */
> /usr/include/linux/kfd_ioctl.h:257:2: error: unknown type name 'uint32_t'
> uint32_t num_banks; /* from KFD */
> /usr/include/linux/kfd_ioctl.h:258:2: error: unknown type name 'uint32_t'
> uint32_t num_ranks; /* from KFD */
>
> Fixes: 6a1c9510694fe ("drm/amdkfd: Adding new IOCTL for scratch memory v2")
> Fixes: 5d71dbc3a5886 ("drm/amdkfd: Implement image tiling mode support v2")
> Signed-off-by: Dmitry V. Levin <ldv@xxxxxxxxxxxx>
> ---
> include/uapi/linux/kfd_ioctl.h | 22 +++++++++++-----------
> 1 file changed, 11 insertions(+), 11 deletions(-)
>
> diff --git a/include/uapi/linux/kfd_ioctl.h b/include/uapi/linux/kfd_ioctl.h
> index 26283fefdf5f..f7015aa12347 100644
> --- a/include/uapi/linux/kfd_ioctl.h
> +++ b/include/uapi/linux/kfd_ioctl.h
> @@ -233,29 +233,29 @@ struct kfd_ioctl_wait_events_args {
> };
>
> struct kfd_ioctl_set_scratch_backing_va_args {
> - uint64_t va_addr; /* to KFD */
> - uint32_t gpu_id; /* to KFD */
> - uint32_t pad;
> + __u64 va_addr; /* to KFD */
> + __u32 gpu_id; /* to KFD */
> + __u32 pad;
> };
>
> struct kfd_ioctl_get_tile_config_args {
> /* to KFD: pointer to tile array */
> - uint64_t tile_config_ptr;
> + __u64 tile_config_ptr;
> /* to KFD: pointer to macro tile array */
> - uint64_t macro_tile_config_ptr;
> + __u64 macro_tile_config_ptr;
> /* to KFD: array size allocated by user mode
> * from KFD: array size filled by kernel
> */
> - uint32_t num_tile_configs;
> + __u32 num_tile_configs;
> /* to KFD: array size allocated by user mode
> * from KFD: array size filled by kernel
> */
> - uint32_t num_macro_tile_configs;
> + __u32 num_macro_tile_configs;
>
> - uint32_t gpu_id; /* to KFD */
> - uint32_t gb_addr_config; /* from KFD */
> - uint32_t num_banks; /* from KFD */
> - uint32_t num_ranks; /* from KFD */
> + __u32 gpu_id; /* to KFD */
> + __u32 gb_addr_config; /* from KFD */
> + __u32 num_banks; /* from KFD */
> + __u32 num_ranks; /* from KFD */
> /* struct size can be extended later if needed
> * without breaking ABI compatibility
> */
> --
> ldv
Thanks!
Applied to -fixes
Oded