Re: [PATCH 2/3] perf test: Cleanup daemon if test is interrupted.

2021-03-11 Thread Jiri Olsa
On Thu, Mar 11, 2021 at 08:18:27AM -0800, Ian Rogers wrote:
> On Thu, Mar 11, 2021 at 2:38 AM Jiri Olsa  wrote:
> >
> > On Wed, Mar 10, 2021 at 12:41:17PM -0800, Ian Rogers wrote:
> > > Reorder daemon_start and daemon_exit as the trap handler is added in
> > > daemon_start referencing daemon_exit.
> >
> > makes sense, minor comments below
> >
> > >
> > > Signed-off-by: Ian Rogers 
> > > ---
> > >  tools/perf/tests/shell/daemon.sh | 34 +++-
> > >  1 file changed, 20 insertions(+), 14 deletions(-)
> > >
> > > diff --git a/tools/perf/tests/shell/daemon.sh 
> > > b/tools/perf/tests/shell/daemon.sh
> > > index 66ad56b4e0a5..a02cedc76de6 100755
> > > --- a/tools/perf/tests/shell/daemon.sh
> > > +++ b/tools/perf/tests/shell/daemon.sh
> > > @@ -98,6 +98,23 @@ check_line_other()
> > >   fi
> > >  }
> > >
> > > +daemon_exit()
> > > +{
> > > + local config=$1
> > > +
> > > + local line=`perf daemon --config ${config} -x: | head -1`
> > > + local pid=`echo "${line}" | awk 'BEGIN { FS = ":" } ; { print $1 }'`
> > > +
> > > +# Reset trap handler.
> > > +trap - SIGINT SIGTERM
> >
> > please keep the 'tabs' in here
> >
> > > +
> > > + # stop daemon
> > > + perf daemon stop --config ${config}
> > > +
> > > + # ... and wait for the pid to go away
> > > + tail --pid=${pid} -f /dev/null
> > > +}
> > > +
> > >  daemon_start()
> > >  {
> > >   local config=$1
> > > @@ -105,6 +122,9 @@ daemon_start()
> > >
> > >   perf daemon start --config ${config}
> > >
> > > +# Clean up daemon if interrupted.
> > > +trap "daemon_exit ${config}; exit 4" SIGINT SIGTERM
> >
> > ditto, plus let's document exit values somewhere in comments,
> > I think the next patch is adding exit 62, so that one as well
> 
> Thanks, it might be easier to just have these as exit 1 - I pulled
> values from the errno list. Do you have any preferences?

yep, exit 1 seems enough

jirka



Re: [PATCH 2/3] perf test: Cleanup daemon if test is interrupted.

2021-03-11 Thread Ian Rogers
On Thu, Mar 11, 2021 at 2:38 AM Jiri Olsa  wrote:
>
> On Wed, Mar 10, 2021 at 12:41:17PM -0800, Ian Rogers wrote:
> > Reorder daemon_start and daemon_exit as the trap handler is added in
> > daemon_start referencing daemon_exit.
>
> makes sense, minor comments below
>
> >
> > Signed-off-by: Ian Rogers 
> > ---
> >  tools/perf/tests/shell/daemon.sh | 34 +++-
> >  1 file changed, 20 insertions(+), 14 deletions(-)
> >
> > diff --git a/tools/perf/tests/shell/daemon.sh 
> > b/tools/perf/tests/shell/daemon.sh
> > index 66ad56b4e0a5..a02cedc76de6 100755
> > --- a/tools/perf/tests/shell/daemon.sh
> > +++ b/tools/perf/tests/shell/daemon.sh
> > @@ -98,6 +98,23 @@ check_line_other()
> >   fi
> >  }
> >
> > +daemon_exit()
> > +{
> > + local config=$1
> > +
> > + local line=`perf daemon --config ${config} -x: | head -1`
> > + local pid=`echo "${line}" | awk 'BEGIN { FS = ":" } ; { print $1 }'`
> > +
> > +# Reset trap handler.
> > +trap - SIGINT SIGTERM
>
> please keep the 'tabs' in here
>
> > +
> > + # stop daemon
> > + perf daemon stop --config ${config}
> > +
> > + # ... and wait for the pid to go away
> > + tail --pid=${pid} -f /dev/null
> > +}
> > +
> >  daemon_start()
> >  {
> >   local config=$1
> > @@ -105,6 +122,9 @@ daemon_start()
> >
> >   perf daemon start --config ${config}
> >
> > +# Clean up daemon if interrupted.
> > +trap "daemon_exit ${config}; exit 4" SIGINT SIGTERM
>
> ditto, plus let's document exit values somewhere in comments,
> I think the next patch is adding exit 62, so that one as well

Thanks, it might be easier to just have these as exit 1 - I pulled
values from the errno list. Do you have any preferences?

Ian

> thanks,
> jirka
>
> > +
> >   # wait for the session to ping
> >   local state="FAIL"
> >   while [ "${state}" != "OK" ]; do
> > @@ -113,20 +133,6 @@ daemon_start()
> >   done
> >  }
> >
> > -daemon_exit()
> > -{
> > - local config=$1
> > -
> > - local line=`perf daemon --config ${config} -x: | head -1`
> > - local pid=`echo "${line}" | awk 'BEGIN { FS = ":" } ; { print $1 }'`
> > -
> > - # stop daemon
> > - perf daemon stop --config ${config}
> > -
> > - # ... and wait for the pid to go away
> > - tail --pid=${pid} -f /dev/null
> > -}
> > -
> >  test_list()
> >  {
> >   echo "test daemon list"
> > --
> > 2.30.1.766.gb4fecdf3b7-goog
> >
>


Re: [PATCH 2/3] perf test: Cleanup daemon if test is interrupted.

2021-03-11 Thread Jiri Olsa
On Wed, Mar 10, 2021 at 12:41:17PM -0800, Ian Rogers wrote:
> Reorder daemon_start and daemon_exit as the trap handler is added in
> daemon_start referencing daemon_exit.

makes sense, minor comments below

> 
> Signed-off-by: Ian Rogers 
> ---
>  tools/perf/tests/shell/daemon.sh | 34 +++-
>  1 file changed, 20 insertions(+), 14 deletions(-)
> 
> diff --git a/tools/perf/tests/shell/daemon.sh 
> b/tools/perf/tests/shell/daemon.sh
> index 66ad56b4e0a5..a02cedc76de6 100755
> --- a/tools/perf/tests/shell/daemon.sh
> +++ b/tools/perf/tests/shell/daemon.sh
> @@ -98,6 +98,23 @@ check_line_other()
>   fi
>  }
>  
> +daemon_exit()
> +{
> + local config=$1
> +
> + local line=`perf daemon --config ${config} -x: | head -1`
> + local pid=`echo "${line}" | awk 'BEGIN { FS = ":" } ; { print $1 }'`
> +
> +# Reset trap handler.
> +trap - SIGINT SIGTERM

please keep the 'tabs' in here

> +
> + # stop daemon
> + perf daemon stop --config ${config}
> +
> + # ... and wait for the pid to go away
> + tail --pid=${pid} -f /dev/null
> +}
> +
>  daemon_start()
>  {
>   local config=$1
> @@ -105,6 +122,9 @@ daemon_start()
>  
>   perf daemon start --config ${config}
>  
> +# Clean up daemon if interrupted.
> +trap "daemon_exit ${config}; exit 4" SIGINT SIGTERM

ditto, plus let's document exit values somewhere in comments,
I think the next patch is adding exit 62, so that one as well

thanks,
jirka

> +
>   # wait for the session to ping
>   local state="FAIL"
>   while [ "${state}" != "OK" ]; do
> @@ -113,20 +133,6 @@ daemon_start()
>   done
>  }
>  
> -daemon_exit()
> -{
> - local config=$1
> -
> - local line=`perf daemon --config ${config} -x: | head -1`
> - local pid=`echo "${line}" | awk 'BEGIN { FS = ":" } ; { print $1 }'`
> -
> - # stop daemon
> - perf daemon stop --config ${config}
> -
> - # ... and wait for the pid to go away
> - tail --pid=${pid} -f /dev/null
> -}
> -
>  test_list()
>  {
>   echo "test daemon list"
> -- 
> 2.30.1.766.gb4fecdf3b7-goog
> 



[PATCH 2/3] perf test: Cleanup daemon if test is interrupted.

2021-03-10 Thread Ian Rogers
Reorder daemon_start and daemon_exit as the trap handler is added in
daemon_start referencing daemon_exit.

Signed-off-by: Ian Rogers 
---
 tools/perf/tests/shell/daemon.sh | 34 +++-
 1 file changed, 20 insertions(+), 14 deletions(-)

diff --git a/tools/perf/tests/shell/daemon.sh b/tools/perf/tests/shell/daemon.sh
index 66ad56b4e0a5..a02cedc76de6 100755
--- a/tools/perf/tests/shell/daemon.sh
+++ b/tools/perf/tests/shell/daemon.sh
@@ -98,6 +98,23 @@ check_line_other()
fi
 }
 
+daemon_exit()
+{
+   local config=$1
+
+   local line=`perf daemon --config ${config} -x: | head -1`
+   local pid=`echo "${line}" | awk 'BEGIN { FS = ":" } ; { print $1 }'`
+
+# Reset trap handler.
+trap - SIGINT SIGTERM
+
+   # stop daemon
+   perf daemon stop --config ${config}
+
+   # ... and wait for the pid to go away
+   tail --pid=${pid} -f /dev/null
+}
+
 daemon_start()
 {
local config=$1
@@ -105,6 +122,9 @@ daemon_start()
 
perf daemon start --config ${config}
 
+# Clean up daemon if interrupted.
+trap "daemon_exit ${config}; exit 4" SIGINT SIGTERM
+
# wait for the session to ping
local state="FAIL"
while [ "${state}" != "OK" ]; do
@@ -113,20 +133,6 @@ daemon_start()
done
 }
 
-daemon_exit()
-{
-   local config=$1
-
-   local line=`perf daemon --config ${config} -x: | head -1`
-   local pid=`echo "${line}" | awk 'BEGIN { FS = ":" } ; { print $1 }'`
-
-   # stop daemon
-   perf daemon stop --config ${config}
-
-   # ... and wait for the pid to go away
-   tail --pid=${pid} -f /dev/null
-}
-
 test_list()
 {
echo "test daemon list"
-- 
2.30.1.766.gb4fecdf3b7-goog