[dpdk-dev] [PATCH] usertools: dpdk-telemetry-client.py run into looping status

Lipiec, Herakliusz herakliusz.lipiec at intel.com
Wed Aug 7 13:16:35 CEST 2019


> From: dev [mailto:dev-bounces at dpdk.org] On Behalf Of Andrius Sirvys
> 
> The ast.literal_eval() was used incorrectly and wouldn't properly retrieve the
> user option. Was causing the options to keep being listed in a loop. Removed
> and replaced with raw_input() being cast to an int.
> Works as expected now.
> 
> Fixes: 53f293c9a783 ("usertools: replace unsafe input function")
> Cc: andrius.sirvys at intel.com
> 
> Signed-off-by: Andrius Sirvys <andrius.sirvys at intel.com>
> ---
>  usertools/dpdk-telemetry-client.py | 10 ++++++----
>  1 file changed, 6 insertions(+), 4 deletions(-)
> 
> diff --git a/usertools/dpdk-telemetry-client.py b/usertools/dpdk-telemetry-
> client.py
> index 4b0502ff9..3b53b6949 100755
> --- a/usertools/dpdk-telemetry-client.py
> +++ b/usertools/dpdk-telemetry-client.py
> @@ -16,9 +16,9 @@
>  DEFAULT_FP = "/var/run/dpdk/default_client"
> 
>  try:
> -	raw_input  # Python 2
> +        raw_input  # Python 2
>  except NameError:
> -	raw_input = input  # Python 3
> +        raw_input = input  # Python 3
> 
>  class Socket:
> 
> @@ -78,7 +78,8 @@ def requestMetrics(self): # Requests metrics for given
> client
> 
>      def repeatedlyRequestMetrics(self, sleep_time): # Recursively requests
> metrics for given client
>          print("\nPlease enter the number of times you'd like to continuously
> request Metrics:")
> -        n_requests = int(ast.literal_eval(raw_input("\n:")))
> +        #n_requests = int(ast.literal_eval(raw_input("\n:")))

If youre changing a line, you probably want to remove the old one, not comment it out.

> +        n_requests = int(raw_input("\n:"))
>          print("\033[F") #Removes the user input from screen, cleans it up
>          print("\033[K")
>          for i in range(n_requests):
> @@ -99,7 +100,8 @@ def interactiveMenu(self, sleep_time): # Creates
> Interactive menu within the scr
>              print("[4] Unregister client")
> 
>              try:
> -                self.choice = int(ast.literal_eval(raw_input("\n:")))
> +                #self.choice = int(ast.literal_eval(raw_input("\n:")))

Same as above.

> +                self.choice = int(raw_input("\n:"))
>                  print("\033[F") #Removes the user input for screen, cleans it up
>                  print("\033[K")
>                  if self.choice == 1:
> --
> 2.17.1

Regards,
Herakliusz 


More information about the dev mailing list