Hi Chris,
Really thanks for your instant response!
It does make sense when we consider SDS structures as a one-shot sigle-writer/multiple-reader mode.
I believe, you fully answered my question.
Appreciated for your kind help !!!
Best Regards,
Bob
发件人: Chris Kay <Chris.Kay@arm.com>
发送时间: 2024年9月27日 19:52
收件人: Deng Bob <bob.deng.fw@outlook.com>; tf-a@lists.trustedfirmware.org <tf-a@lists.trustedfirmware.org>
主题: Re: About the SDS usage model
Hi Bob,
It’s been a long time since I’ve worked with the SDS, so my information might be a bit out of date, but…
SDS structures use a one-shot single-writer/multiple-reader model. Readers may only read from an SDS structure after it has been finalised (which is indicated
by the validity flag you mentioned), at which point the writer may make no further modifications to the structure ?C it becomes immutable. As such, once the structure has been finalised, mutual exclusion is no longer necessary and no further locking mechanism
is needed.
At the region level, the signature serves as the equivalent of the validity flag ?C readers must not trust any data in the region until the signature has
been correctly initialised.
Regards,
Chris
From: Deng Bob via TF-A <tf-a@lists.trustedfirmware.org>
Date: Friday, 27 September 2024 at 02:53
To: tf-a@lists.trustedfirmware.org <tf-a@lists.trustedfirmware.org>
Subject: [TF-A] About the SDS usage model
Hi all,
I am trying to raise a question about SDS.
As you know, SDS (Shared data storage) is used to communicate or exhcange info among different processor units like AP, SCP, RSE, etc.
So, do we need to add some lock mechanisms to protect the data when one processor entity is accessing it? After I reviewed the open source Trusted Firmware and SCP firmware
it looks to me that both Trusted Firmware and SCP directly access the shared memory region without any limitation. Currently, it just uses the 'valid' flag to identify if the data is ready to use,
is this good enough?
Looking forwared to your response! Thank you!!!
Best Regards,
Bob