Commit f1ed48ef authored by Lorenzo Pieralisi's avatar Lorenzo Pieralisi Committed by Sudeep Holla
Browse files

firmware: arm_ffa: Fix ffa_notification_info_get() IDs handling



To parse the retrieved ID lists appropriately in
ffa_notification_info_get() the ids_processed variable should not
be pre-incremented - we are dropping an identifier at the
beginning of the list.

Fix it by using the post-increment operator to increment the number
of processed IDs.

Fixes: 3522be48 ("firmware: arm_ffa: Implement the NOTIFICATION_INFO_GET interface")
Signed-off-by: default avatarLorenzo Pieralisi <lpieralisi@kernel.org>
Cc: Sudeep Holla <sudeep.holla@arm.com>
Link: https://lore.kernel.org/r/20231108111549.155974-1-lpieralisi@kernel.org


Signed-off-by: default avatarSudeep Holla <sudeep.holla@arm.com>
parent 05857a1e
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -783,7 +783,7 @@ static void ffa_notification_info_get(void)
			if (ids_processed >= max_ids - 1)
				break;

			part_id = packed_id_list[++ids_processed];
			part_id = packed_id_list[ids_processed++];

			if (!ids_count[list]) { /* Global Notification */
				__do_sched_recv_cb(part_id, 0, false);
@@ -795,7 +795,7 @@ static void ffa_notification_info_get(void)
				if (ids_processed >= max_ids - 1)
					break;

				vcpu_id = packed_id_list[++ids_processed];
				vcpu_id = packed_id_list[ids_processed++];

				__do_sched_recv_cb(part_id, vcpu_id, true);
			}