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

Firmware SMP boot bug #354

Open
ezelioli opened this issue May 10, 2024 · 5 comments
Open

Firmware SMP boot bug #354

ezelioli opened this issue May 10, 2024 · 5 comments

Comments

@ezelioli
Copy link

The cold-boot-hart lottery in fw_base.S has recently been modified by using the _boot_status variable instead of the _relocate_lottery variable. This introduces a data race since the _boot_status variable is also written by the cold-boot hart to indicate the current boot stage without waiting for the other cores to have completed the lottery. If a non-boot hart enters the lottery when the boot-hart has already completed relocation _boot_status is overwritten and the non-boot hart is stuck forever in _wait_for_boot_hart.
The change has been introduced in this commit.

@avpatel
Copy link
Collaborator

avpatel commented May 12, 2024

Can you send a patch to fix this?

@avpatel
Copy link
Collaborator

avpatel commented May 12, 2024

We have mailing list based patch review so it would be great if you can send these patchs to OpenSBI mailing list.

You need to join OpenSBI mailing list using following link
http://lists.infradead.org/mailman/listinfo/opensbi

Make sure you use "git send-email" to send the patches.

Regards,
Anup

@wxjstz
Copy link
Contributor

wxjstz commented Sep 20, 2024

@rejsys
Copy link

rejsys commented Dec 11, 2024

The patch fixes the firmware SMP boot bug. Was this patch applied to the fw_base.S file, and if so, in which version or commit?

@wxjstz
Copy link
Contributor

wxjstz commented Dec 11, 2024

Fixes: 8151105 ("firmware: fw_base.S: Remove _relocate_lottery")

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

No branches or pull requests

4 participants