Re: [PATCH] include: sbi_platform: Increase default stack size
Anirudh Srinivasan <[email protected]>
| Newsgroups | org.infradead.lists.opensbi |
|---|---|
| Message-ID | <CAEev2e_+npo7t9UVAXtggDQ1XOE0JOy2VVSGrppRb9LmSckkxg@mail.gmail.com> |
On Thu, Jun 4, 2026 at 4:43 PM Aurelien Jarno <[email protected]> wrote: > > Hi Anirudh, > > On 2026-06-04 15:09, Anirudh Srinivasan wrote: > > Hi Aurelien, > > > > On Tue, Jun 2, 2026 at 2:12 PM Aurelien Jarno <[email protected]> wrote: > > > > > > On 2026-05-24 13:53, Vivian Wang wrote: > > > > sbi_misaligned_v_ld_emulator() has a local buffer (namely mask) which is > > > > 8192 bytes in size, so the default stack size is not enough. Double it > > > > to 16384. > > > > > > > > This stack overflow can be observed by any S-mode software and leads to > > > > M-mode crash or unexpected behavior, as long as the S-mode software does > > > > not enable FWFT misaligned delegation [1]. This may be considered a > > > > temporary fix until further fixes are made to misaligned handling [2]. > > > > > > > > Link: https://lore.kernel.org/linux-riscv/nrvt74qnojaubiwjo37ums4lnclu466hovwrhmtbag6f5uhrql@q6msoe2oto4b # [1] > > > > Link: https://lore.kernel.org/opensbi/[email protected] # [2] > > > > Signed-off-by: Vivian Wang <[email protected]> > > > > --- > > > > include/sbi/sbi_platform.h | 2 +- > > > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > > > Tested-by: Aurelien Jarno <[email protected]> > > > > > > I can confirm that this fix is required to boot a 7.1-rc6 kernel on a > > > CPU with vector instructions (in my case SpacemiT K1). > > > > Are you sure that this is needed for the K1? It seemed like this was > > only an issue on boards with large vlen (512 like the x280)? > > Yes this is an issue. The stack allocation doesn't depend on the actual > vector size, but on VLEN_MAX which is 65536. The alternative to increase > the stack size is to reduce this value. Thanks for clarifying. I must have misunderstood this. > > > Do you > > mind sharing any kernel boot logs with/without this patch? > > Yep, please find them attached. Note that I have attached the useful > failure, sometimes the kernel boots correctly and most of the time it > just hangs. > > > I was able to boot 7.1.0-rc6-next-20260603 defconfig without issue on > > a MilkV Jupiter. Only caveat is that my board is running an old > > vendor opensbi (version k1-bl-v2.2.4 that may be based on upstream > > v1.3) that the board shipped with, and not sure if that's > > helping/hurting in any manner. > > I am using the current OpenSBI HEAD. Support for misaligned vector > load/store was added in version 1.6 in commit c2acc5e5b0d8 ("lib: > sbi_misaligned_ldst: Add handling of vector load/store"), so it's not > surprising that your version does not have the issue. I wasn't aware that you could use upstream OpenSBI on the k1 boards. I imagine that a lot of folks with older boards aren't gonna upgrade OpenSBI, so won't run into this issue. Still useful to have a fix though. > > Regards > Aurelien > > -- > Aurelien Jarno GPG: 4096R/1DDD8C9B > [email protected] http://aurel32.net -- opensbi mailing list [email protected] http://lists.infradead.org/mailman/listinfo/opensbi