On Wed, Jan 21, 2026 at 02:57:02PM +0100, Gabriele Monaco wrote:
> On Mon, 2026-01-19 at 17:45 -0300, Wander Lairson Costa wrote:
> > The ltl2k class inherits from Monitor which requires subclasses to
> > implement fill_tracepoint_args_skel(). However, the ltl2k template
> > uses hardcoded tracepoint arguments rather than the placeholders that
> > this method would fill. The base class fill_trace_h() method calls
> > fill_tracepoint_args_skel() unconditionally, which was exposed when
> > the @not_implemented decorator was introduced.
> > 
> > Add a stub implementation that returns an empty string. Since the
> > ltl2k trace.h template does not contain the placeholder strings that
> > would be replaced, the empty return value has no effect on the
> > generated output while satisfying the base class interface contract.
> > 
> > Signed-off-by: Wander Lairson Costa <[email protected]>
> 
> Mmh, this is a bit fishy though.
> We the patch using the decorator seems fine, but highlights how this method
> isn't meant to be in Monitor if not all monitors use it..
> Adding a stub here is just sweeping dust under the carpet.
> 
> Here should probably keep the common part of fill_trace_h() in Monitor (e.g.
> replacing MODEL_NAME and other common things) and create specific
> implementations in dot2k and ltl2k for what is not common while calling the
> super() counterpart for the rest.
> 
> Does it make sense to you?
> 

Yes, that is exactly my idea. Since the patch series were getting too
long and my brain too rot, I thought would be better addressing this in
a following up patch series. But I can work in the next version if you
are not ok with that approach.

> Thanks,
> Gabriele
> 
> > ---
> >  tools/verification/rvgen/rvgen/ltl2k.py | 3 +++
> >  1 file changed, 3 insertions(+)
> > 
> > diff --git a/tools/verification/rvgen/rvgen/ltl2k.py
> > b/tools/verification/rvgen/rvgen/ltl2k.py
> > index 94dc64af1716d..f1eafc16c754b 100644
> > --- a/tools/verification/rvgen/rvgen/ltl2k.py
> > +++ b/tools/verification/rvgen/rvgen/ltl2k.py
> > @@ -257,6 +257,9 @@ class ltl2k(generator.Monitor):
> >  
> >          return '\n'.join(buf)
> >  
> > +    def fill_tracepoint_args_skel(self, tp_type) -> str:
> > +        return ""
> > +
> >      def fill_monitor_class_type(self):
> >          return "LTL_MON_EVENTS_ID"
> >  
> 


Reply via email to