In systemtap tapsets and enduser scripts are written in the same language hence it is very easy for an user to execute tapsets directly. Currently translator doesn't give a clear error message to warn users of such wrong usage. Translator should give a clear message to the user explaining why this is a illegal operation and what they should do to correct it.
Have you checked out this change? 2006-11-19 Frank Ch. Eigler <fche@elastic.org> * main.cxx (main): Signal parse error if a tapset script is given as the user script.
*** Bug 3661 has been marked as a duplicate of this bug. ***
(In reply to comment #1) > Have you checked out this change? > > 2006-11-19 Frank Ch. Eigler <fche@elastic.org> > > * main.cxx (main): Signal parse error if a tapset script > is given as the user script. > > I did look at your change it gives bit following better error message than the past parse error: tapset file '/usr/local/share/systemtap/tapset/tcp.stp' is already processed as the user script. Pass 1: parse failed. Try again with more '-v' (verbose) options. But it is still not at all clear in my opinion to someone who is not initimately familiar with the project and implementation. I would prefer to see a message some what like "tapset files can not be run directly. Please run a user script that uses the required tapset."
A tweak to the error message was committed.
improved