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

Oded Gabbay oded.gabbay at amd.com
Mon Dec 29 05:17:09 PST 2014



On 12/29/2014 03:06 PM, Christian König wrote:
> 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?
Yes, but as long as 3.19 isn't released yet, I'm allowed to do this, no ?
and I want this patch-set to be inserted to 3.19 so there won't be API breakage 
afterwards.

>
>> ---
>>   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).

Thanks, I'll do that.

	Oded
>
> Regards,
> Christian.
>
>>   #endif
>


More information about the dri-devel mailing list