staging: vchiq_core: drop vchiq_status from vchiq_set_service_option
Replace the custom set of return values with proper Linux error codes for vchiq_set_service_option(). Now we can use the result directly as return value for vchiq_ioctl(). Reviewed-by: Nicolas Saenz Julienne <nsaenz@kernel.org> Signed-off-by: Stefan Wahren <stefan.wahren@i2se.com> Link: https://lore.kernel.org/r/1619347863-16080-10-git-send-email-stefan.wahren@i2se.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
a9fbd828be
commit
a2161d1d5e
@ -1517,8 +1517,8 @@ vchiq_ioctl(struct file *file, unsigned int cmd, unsigned long arg)
|
||||
break;
|
||||
}
|
||||
|
||||
status = vchiq_set_service_option(
|
||||
args.handle, args.option, args.value);
|
||||
ret = vchiq_set_service_option(args.handle, args.option,
|
||||
args.value);
|
||||
} break;
|
||||
|
||||
case VCHIQ_IOC_LIB_VERSION: {
|
||||
|
@ -3371,21 +3371,21 @@ void vchiq_get_config(struct vchiq_config *config)
|
||||
config->version_min = VCHIQ_VERSION_MIN;
|
||||
}
|
||||
|
||||
enum vchiq_status
|
||||
int
|
||||
vchiq_set_service_option(unsigned int handle,
|
||||
enum vchiq_service_option option, int value)
|
||||
{
|
||||
struct vchiq_service *service = find_service_by_handle(handle);
|
||||
enum vchiq_status status = VCHIQ_ERROR;
|
||||
struct vchiq_service_quota *quota;
|
||||
int ret = -EINVAL;
|
||||
|
||||
if (!service)
|
||||
return VCHIQ_ERROR;
|
||||
return -EINVAL;
|
||||
|
||||
switch (option) {
|
||||
case VCHIQ_SERVICE_OPTION_AUTOCLOSE:
|
||||
service->auto_close = value;
|
||||
status = VCHIQ_SUCCESS;
|
||||
ret = 0;
|
||||
break;
|
||||
|
||||
case VCHIQ_SERVICE_OPTION_SLOT_QUOTA:
|
||||
@ -3402,7 +3402,7 @@ vchiq_set_service_option(unsigned int handle,
|
||||
* dropped below its quota
|
||||
*/
|
||||
complete("a->quota_event);
|
||||
status = VCHIQ_SUCCESS;
|
||||
ret = 0;
|
||||
}
|
||||
break;
|
||||
|
||||
@ -3420,7 +3420,7 @@ vchiq_set_service_option(unsigned int handle,
|
||||
* dropped below its quota
|
||||
*/
|
||||
complete("a->quota_event);
|
||||
status = VCHIQ_SUCCESS;
|
||||
ret = 0;
|
||||
}
|
||||
break;
|
||||
|
||||
@ -3428,13 +3428,13 @@ vchiq_set_service_option(unsigned int handle,
|
||||
if ((service->srvstate == VCHIQ_SRVSTATE_HIDDEN) ||
|
||||
(service->srvstate == VCHIQ_SRVSTATE_LISTENING)) {
|
||||
service->sync = value;
|
||||
status = VCHIQ_SUCCESS;
|
||||
ret = 0;
|
||||
}
|
||||
break;
|
||||
|
||||
case VCHIQ_SERVICE_OPTION_TRACE:
|
||||
service->trace = value;
|
||||
status = VCHIQ_SUCCESS;
|
||||
ret = 0;
|
||||
break;
|
||||
|
||||
default:
|
||||
@ -3442,7 +3442,7 @@ vchiq_set_service_option(unsigned int handle,
|
||||
}
|
||||
unlock_service(service);
|
||||
|
||||
return status;
|
||||
return ret;
|
||||
}
|
||||
|
||||
static int
|
||||
|
@ -712,7 +712,7 @@ extern int vchiq_get_client_id(unsigned int service);
|
||||
|
||||
extern void vchiq_get_config(struct vchiq_config *config);
|
||||
|
||||
extern enum vchiq_status
|
||||
extern int
|
||||
vchiq_set_service_option(unsigned int service, enum vchiq_service_option option,
|
||||
int value);
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user