Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Define request forward service group #63

Merged
merged 1 commit into from
Oct 14, 2024

Conversation

avpatel
Copy link
Contributor

@avpatel avpatel commented Oct 1, 2024

Certain use-cases require forwarding RPMI messages from one RPMI client to another so let's define request forward service group for this purpose.


[#reqfwd-notifications]
==== Notifications
This service group does not support any event for notification.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There is Event support in this service group.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy-paste error. I will update.

| Description

| 0
| RESPONSE_DATA[N]
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we need a word for length (N) of RESPONSE_DATA?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The N can be inferred from DATALEN in RPMI message header.

@avpatel avpatel force-pushed the reqfwd_svcgrp_v1 branch 2 times, most recently from 1959d27 to a973d0a Compare October 5, 2024 07:51
@lftan
Copy link
Collaborator

lftan commented Oct 14, 2024

@avpatel do you want to include the following changes in this PR?

Improve the RPMI REQUEST_FORWARD service group as follows:

  1. Return the first chunk of the new forwarded RPMI request message as event data in the notification. If the message is large then REQFWD_RETRIEVE_CURRENT_MESSAGE service can be used to retrieve all chunks of the RPMI message.

Certain use-cases require forwarding RPMI messages from one RPMI
client to another so let's define request forward service group
for this purpose.

Signed-off-by: Anup Patel <[email protected]>
@avpatel
Copy link
Contributor Author

avpatel commented Oct 14, 2024

@avpatel do you want to include the following changes in this PR?

Improve the RPMI REQUEST_FORWARD service group as follows:

1. Return the first chunk of the new forwarded RPMI request message as event data in the notification. If the message is large then REQFWD_RETRIEVE_CURRENT_MESSAGE service can be used to retrieve all chunks of the RPMI message.

Done

@pathakraul
Copy link
Collaborator

Looks good to me

@avpatel
Copy link
Contributor Author

avpatel commented Oct 14, 2024

@lftan @pathakraul Can you please merge this PR? I will create a separate PR for updating the MM service group.

@pathakraul pathakraul merged commit b512061 into riscv-non-isa:main Oct 14, 2024
1 check passed
@avpatel avpatel deleted the reqfwd_svcgrp_v1 branch October 14, 2024 05:08
Comment on lines +65 to +67
| An array of `N` bytes representing the first `N` bytes of the current forwarded
RPMI request message. The value `N` is specified by the `EVENT_DATALEN` field of
the RPMI notification event as shown in <<table_notification_message_format>>.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Don't we need a word in the event data for either the total or remaining message length, so the caller knows if it needs to call REQFWD_RETRIEVE_CURRENT_MESSAGE at all?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The event data has the first N bytes of the forwarded RPMI request message so it will include the forwarded RPMI header which can be used to compute the total message length (i.e. datalen in RPMI header + 8).

If event data size is less than 8 bytes then event data is of no use since it has partial RPMI header and we have to use REQFWD_RETRIEVE_CURRENT_MESSAGE service to get the forwarded RPMI request message.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ah, that makes sense, since we are limiting the payload to RPMI. Thanks.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants