Re: [PATCH 24/27] gpu: nova-core: gsp: pass the remaining log buffers to GSP-RM
Zhi Wang <[email protected]>
| Newsgroups | dev.linux.lists.nova-gpu,org.kernel.vger.linux-kernel |
|---|---|
| Message-ID | <20260820214706.5b0b539d@inno-dell> |
On Tue, 18 Aug 2026 20:52:17 -0700 John Hubbard <[email protected]> wrote: Reviewed-by: Zhi Wang <[email protected]> > The libos loader finds each log buffer by looking up its eight-byte > name in the init argument array, so a buffer the array does not name > is never written to. > > Nova-core allocates six log buffers and gives all six a debugfs file, > but names only three, so the other three can never read back anything > but zeros. > > Name all six. RMARGS moves to the end of the array, which does not > matter to a loader that searches by name. > > Assisted-by: Cursor:claude-opus-5 > Signed-off-by: John Hubbard <[email protected]> > --- > drivers/gpu/nova-core/gsp.rs | 14 +++++++++++++- > 1 file changed, 13 insertions(+), 1 deletion(-) > > diff --git a/drivers/gpu/nova-core/gsp.rs > b/drivers/gpu/nova-core/gsp.rs index 232905638169..f1bd66024b72 100644 > --- a/drivers/gpu/nova-core/gsp.rs > +++ b/drivers/gpu/nova-core/gsp.rs > @@ -355,7 +355,19 @@ pub(crate) fn new( > 2, > LibosMemoryRegionInitArgument::new("LOGRM", > &logrm.buffer), )?; > - libos.init_at(3, > LibosMemoryRegionInitArgument::new("RMARGS", rmargs))?; > + libos.init_at( > + 3, > + > LibosMemoryRegionInitArgument::new("LOGMNOC", &logmnoc.buffer), > + )?; > + libos.init_at( > + 4, > + > LibosMemoryRegionInitArgument::new("LOGROOT", &logroot.buffer), > + )?; > + libos.init_at( > + 5, > + > LibosMemoryRegionInitArgument::new("LOGRMON", &logrmon.buffer), > + )?; > + libos.init_at(6, > LibosMemoryRegionInitArgument::new("RMARGS", rmargs))?; > libos.into() > },