staging: vchiq_core: Lower indentation in parse_open()

If the service is not in VCHIQ_SRVSTATE_LISTENING state, it is
implied that the message is dealt with and parse_open() should return.
If this is the case, simply jump the code flow to return site using
'goto done;' statement.

This helps to lower the indentation of
	if (service->srvstate == VCHIQ_SRVSTATE_LISTENING)
conditional branch.

No functional changes intended in this patch.

Signed-off-by: Umang Jain <umang.jain@ideasonboard.com>
Reviewed-by: Stefan Wahren <wahrenst@gmx.net>
Reviewed-by: Dan Carpenter <dan.carpenter@linaro.org>
Link: https://lore.kernel.org/r/20241013112128.397249-6-umang.jain@ideasonboard.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
Umang Jain 2024-10-13 16:51:27 +05:30 committed by Greg Kroah-Hartman
parent 1c1e61849f
commit 8cea95f40f

View File

@ -1824,8 +1824,10 @@ static int
parse_open(struct vchiq_state *state, struct vchiq_header *header)
{
const struct vchiq_open_payload *payload;
struct vchiq_openack_payload ack_payload;
struct vchiq_service *service = NULL;
int msgid, size;
int openack_id;
unsigned int localport, remoteport, fourcc;
short version, version_min;
@ -1860,34 +1862,36 @@ parse_open(struct vchiq_state *state, struct vchiq_header *header)
}
service->peer_version = version;
if (service->srvstate == VCHIQ_SRVSTATE_LISTENING) {
struct vchiq_openack_payload ack_payload = {
service->version
};
int openack_id = MAKE_OPENACK(service->localport, remoteport);
if (service->srvstate != VCHIQ_SRVSTATE_LISTENING)
goto done;
if (state->version_common <
VCHIQ_VERSION_SYNCHRONOUS_MODE)
service->sync = 0;
ack_payload.version = service->version;
openack_id = MAKE_OPENACK(service->localport, remoteport);
/* Acknowledge the OPEN */
if (service->sync) {
if (queue_message_sync(state, NULL, openack_id, memcpy_copy_callback,
&ack_payload, sizeof(ack_payload)) == -EAGAIN)
goto bail_not_ready;
if (state->version_common < VCHIQ_VERSION_SYNCHRONOUS_MODE)
service->sync = 0;
/* The service is now open */
set_service_state(service, VCHIQ_SRVSTATE_OPENSYNC);
} else {
if (queue_message(state, NULL, openack_id, memcpy_copy_callback,
&ack_payload, sizeof(ack_payload), 0) == -EINTR)
goto bail_not_ready;
/* Acknowledge the OPEN */
if (service->sync) {
if (queue_message_sync(state, NULL, openack_id,
memcpy_copy_callback,
&ack_payload,
sizeof(ack_payload)) == -EAGAIN)
goto bail_not_ready;
/* The service is now open */
set_service_state(service, VCHIQ_SRVSTATE_OPEN);
}
/* The service is now open */
set_service_state(service, VCHIQ_SRVSTATE_OPENSYNC);
} else {
if (queue_message(state, NULL, openack_id,
memcpy_copy_callback, &ack_payload,
sizeof(ack_payload), 0) == -EINTR)
goto bail_not_ready;
/* The service is now open */
set_service_state(service, VCHIQ_SRVSTATE_OPEN);
}
done:
/* Success - the message has been dealt with */
vchiq_service_put(service);
return 1;