firmware: arm_ffa: Skip the first/partition ID when parsing vCPU list

The FF-A notification id list received in response to the call
FFA_NOTIFICATION_INFO_GET is encoded as: partition ID followed by 0 or
more vCPU ID. The count includes all of them.

Fix the issue by skipping the first/partition ID so that only the list
of vCPU IDs are processed correctly for a given partition ID. The first/
partition ID is read before the start of the loop.

Fixes: 3522be48d8 ("firmware: arm_ffa: Implement the NOTIFICATION_INFO_GET interface")
Reported-by: Andrei Homescu <ahomescu@google.com>
Message-Id: <20250223213909.1197786-1-sudeep.holla@arm.com>
Signed-off-by: Sudeep Holla <sudeep.holla@arm.com>
This commit is contained in:
Sudeep Holla
2025-02-23 21:39:09 +00:00
parent 3e282f4158
commit c67c2332f8

View File

@@ -1012,7 +1012,7 @@ static void ffa_notification_info_get(void)
}
/* Per vCPU Notification */
for (idx = 0; idx < ids_count[list]; idx++) {
for (idx = 1; idx < ids_count[list]; idx++) {
if (ids_processed >= max_ids - 1)
break;