[PATCH 2/3] drm/amdkfd: reformat IOCTL definitions to drm-style

Christian König deathsimple at vodafone.de
Mon Dec 29 05:06:47 PST 2014


Am 29.12.2014 um 13:42 schrieb Oded Gabbay:
> This patch reformats the ioctl definitions in kfd_ioctl.h to be similar to the
> drm ioctls definition style.
>
> Signed-off-by: Oded Gabbay <oded.gabbay at amd.com>

You are aware that this is a kernel API breakage?

> ---
>   drivers/gpu/drm/amd/amdkfd/kfd_chardev.c | 15 +++++++------
>   include/uapi/linux/kfd_ioctl.h           | 37 +++++++++++++++++++-------------
>   2 files changed, 30 insertions(+), 22 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_chardev.c b/drivers/gpu/drm/amd/amdkfd/kfd_chardev.c
> index 5460ad2..390385f 100644
> --- a/drivers/gpu/drm/amd/amdkfd/kfd_chardev.c
> +++ b/drivers/gpu/drm/amd/amdkfd/kfd_chardev.c
> @@ -524,35 +524,36 @@ static long kfd_ioctl(struct file *filep, unsigned int cmd, unsigned long arg)
>   
>   
>   	switch (cmd) {
> -	case KFD_IOC_GET_VERSION:
> +	case AMDKFD_IOC_GET_VERSION:
>   		retcode = kfd_ioctl_get_version(filep, process, kdata);
>   		break;
> -	case KFD_IOC_CREATE_QUEUE:
> +
> +	case AMDKFD_IOC_CREATE_QUEUE:
>   		retcode = kfd_ioctl_create_queue(filep, process,
>   						kdata);
>   		break;
>   
> -	case KFD_IOC_DESTROY_QUEUE:
> +	case AMDKFD_IOC_DESTROY_QUEUE:
>   		retcode = kfd_ioctl_destroy_queue(filep, process,
>   						kdata);
>   		break;
>   
> -	case KFD_IOC_SET_MEMORY_POLICY:
> +	case AMDKFD_IOC_SET_MEMORY_POLICY:
>   		retcode = kfd_ioctl_set_memory_policy(filep, process,
>   						kdata);
>   		break;
>   
> -	case KFD_IOC_GET_CLOCK_COUNTERS:
> +	case AMDKFD_IOC_GET_CLOCK_COUNTERS:
>   		retcode = kfd_ioctl_get_clock_counters(filep, process,
>   						kdata);
>   		break;
>   
> -	case KFD_IOC_GET_PROCESS_APERTURES:
> +	case AMDKFD_IOC_GET_PROCESS_APERTURES:
>   		retcode = kfd_ioctl_get_process_apertures(filep, process,
>   						kdata);
>   		break;
>   
> -	case KFD_IOC_UPDATE_QUEUE:
> +	case AMDKFD_IOC_UPDATE_QUEUE:
>   		retcode = kfd_ioctl_update_queue(filep, process,
>   						kdata);
>   		break;
> diff --git a/include/uapi/linux/kfd_ioctl.h b/include/uapi/linux/kfd_ioctl.h
> index 7acef41..05b53f6 100644
> --- a/include/uapi/linux/kfd_ioctl.h
> +++ b/include/uapi/linux/kfd_ioctl.h
> @@ -128,27 +128,34 @@ struct kfd_ioctl_get_process_apertures_args {
>   	uint32_t pad;
>   };
>   
> -#define KFD_IOC_MAGIC 'K'
> +#define AMDKFD_IOCTL_BASE 'K'
> +#define AMDKFD_IO(nr)			_IO(AMDKFD_IOCTL_BASE, nr)
> +#define AMDKFD_IOR(nr, type)		_IOR(AMDKFD_IOCTL_BASE, nr, type)
> +#define AMDKFD_IOW(nr, type)		_IOW(AMDKFD_IOCTL_BASE, nr, type)
> +#define AMDKFD_IOWR(nr, type)		_IOWR(AMDKFD_IOCTL_BASE, nr, type)
>   
> -#define KFD_IOC_GET_VERSION \
> -		_IOR(KFD_IOC_MAGIC, 1, struct kfd_ioctl_get_version_args)
> +#define AMDKFD_IOC_GET_VERSION			\
> +		AMDKFD_IOR(0x01, struct kfd_ioctl_get_version_args)
>   
> -#define KFD_IOC_CREATE_QUEUE \
> -		_IOWR(KFD_IOC_MAGIC, 2, struct kfd_ioctl_create_queue_args)
> +#define AMDKFD_IOC_CREATE_QUEUE			\
> +		AMDKFD_IOWR(0x02, struct kfd_ioctl_create_queue_args)
>   
> -#define KFD_IOC_DESTROY_QUEUE \
> -	_IOWR(KFD_IOC_MAGIC, 3, struct kfd_ioctl_destroy_queue_args)
> +#define AMDKFD_IOC_DESTROY_QUEUE		\
> +		AMDKFD_IOWR(0x03, struct kfd_ioctl_destroy_queue_args)
>   
> -#define KFD_IOC_SET_MEMORY_POLICY \
> -	_IOW(KFD_IOC_MAGIC, 4, struct kfd_ioctl_set_memory_policy_args)
> +#define AMDKFD_IOC_SET_MEMORY_POLICY		\
> +		AMDKFD_IOW(0x04, struct kfd_ioctl_set_memory_policy_args)
>   
> -#define KFD_IOC_GET_CLOCK_COUNTERS \
> -	_IOWR(KFD_IOC_MAGIC, 5, struct kfd_ioctl_get_clock_counters_args)
> +#define AMDKFD_IOC_GET_CLOCK_COUNTERS		\
> +		AMDKFD_IOWR(0x05, struct kfd_ioctl_get_clock_counters_args)
>   
> -#define KFD_IOC_GET_PROCESS_APERTURES \
> -	_IOR(KFD_IOC_MAGIC, 6, struct kfd_ioctl_get_process_apertures_args)
> +#define AMDKFD_IOC_GET_PROCESS_APERTURES	\
> +		AMDKFD_IOR(0x06, struct kfd_ioctl_get_process_apertures_args)
>   
> -#define KFD_IOC_UPDATE_QUEUE \
> -	_IOW(KFD_IOC_MAGIC, 7, struct kfd_ioctl_update_queue_args)
> +#define AMDKFD_IOC_UPDATE_QUEUE			\
> +		AMDKFD_IOW(0x07, struct kfd_ioctl_update_queue_args)
> +
> +#define KFD_COMMAND_START               0x01
> +#define KFD_COMMAND_END			0x08

If you rename everything to AMDKFD_* you probably want to do so as well 
for KFD_COMMAND_(START|END).

Regards,
Christian.

>   
>   #endif



More information about the dri-devel mailing list