[PATCH] perf util: Remove kernel version deadcode

linux@treblig.org posted 1 patch 5 days, 18 hours ago
tools/perf/util/util.c | 85 ------------------------------------------
tools/perf/util/util.h |  8 ----
2 files changed, 93 deletions(-)
[PATCH] perf util: Remove kernel version deadcode
Posted by linux@treblig.org 5 days, 18 hours ago
From: "Dr. David Alan Gilbert" <linux@treblig.org>

fetch_kernel_version() has been unused since Ian's 2013
commit 3d6dfae88917 ("perf parse-events: Remove BPF event support")

Remove it, and it's helpers.
I noticed there are a bunch of kernel-version macros that are also
unused nearby.
Also remove them.

Signed-off-by: Dr. David Alan Gilbert <linux@treblig.org>
---
 tools/perf/util/util.c | 85 ------------------------------------------
 tools/perf/util/util.h |  8 ----
 2 files changed, 93 deletions(-)

diff --git a/tools/perf/util/util.c b/tools/perf/util/util.c
index 9d55a13787ce..855aac5150a0 100644
--- a/tools/perf/util/util.c
+++ b/tools/perf/util/util.c
@@ -336,91 +336,6 @@ bool perf_event_paranoid_check(int max_level)
 	return perf_event_paranoid() <= max_level;
 }
 
-static int
-fetch_ubuntu_kernel_version(unsigned int *puint)
-{
-	ssize_t len;
-	size_t line_len = 0;
-	char *ptr, *line = NULL;
-	int version, patchlevel, sublevel, err;
-	FILE *vsig;
-
-	if (!puint)
-		return 0;
-
-	vsig = fopen("/proc/version_signature", "r");
-	if (!vsig) {
-		pr_debug("Open /proc/version_signature failed: %s\n",
-			 strerror(errno));
-		return -1;
-	}
-
-	len = getline(&line, &line_len, vsig);
-	fclose(vsig);
-	err = -1;
-	if (len <= 0) {
-		pr_debug("Reading from /proc/version_signature failed: %s\n",
-			 strerror(errno));
-		goto errout;
-	}
-
-	ptr = strrchr(line, ' ');
-	if (!ptr) {
-		pr_debug("Parsing /proc/version_signature failed: %s\n", line);
-		goto errout;
-	}
-
-	err = sscanf(ptr + 1, "%d.%d.%d",
-		     &version, &patchlevel, &sublevel);
-	if (err != 3) {
-		pr_debug("Unable to get kernel version from /proc/version_signature '%s'\n",
-			 line);
-		goto errout;
-	}
-
-	*puint = (version << 16) + (patchlevel << 8) + sublevel;
-	err = 0;
-errout:
-	free(line);
-	return err;
-}
-
-int
-fetch_kernel_version(unsigned int *puint, char *str,
-		     size_t str_size)
-{
-	struct utsname utsname;
-	int version, patchlevel, sublevel, err;
-	bool int_ver_ready = false;
-
-	if (access("/proc/version_signature", R_OK) == 0)
-		if (!fetch_ubuntu_kernel_version(puint))
-			int_ver_ready = true;
-
-	if (uname(&utsname))
-		return -1;
-
-	if (str && str_size) {
-		strncpy(str, utsname.release, str_size);
-		str[str_size - 1] = '\0';
-	}
-
-	if (!puint || int_ver_ready)
-		return 0;
-
-	err = sscanf(utsname.release, "%d.%d.%d",
-		     &version, &patchlevel, &sublevel);
-
-	if (err != 3) {
-		pr_debug("Unable to get kernel version from uname '%s'\n",
-			 utsname.release);
-		return -1;
-	}
-
-	*puint = (version << 16) + (patchlevel << 8) + sublevel;
-	return 0;
-}
-
 int perf_tip(char **strp, const char *dirpath)
 {
 	struct strlist *tips;
diff --git a/tools/perf/util/util.h b/tools/perf/util/util.h
index 9966c21aaf04..b5e7becfc803 100644
--- a/tools/perf/util/util.h
+++ b/tools/perf/util/util.h
@@ -43,14 +43,6 @@ int sysctl__max_stack(void);
 
 bool sysctl__nmi_watchdog_enabled(void);
 
-int fetch_kernel_version(unsigned int *puint,
-			 char *str, size_t str_sz);
-#define KVER_VERSION(x)		(((x) >> 16) & 0xff)
-#define KVER_PATCHLEVEL(x)	(((x) >> 8) & 0xff)
-#define KVER_SUBLEVEL(x)	((x) & 0xff)
-#define KVER_FMT	"%d.%d.%d"
-#define KVER_PARAM(x)	KVER_VERSION(x), KVER_PATCHLEVEL(x), KVER_SUBLEVEL(x)
-
 int perf_tip(char **strp, const char *dirpath);
 
 #ifndef HAVE_SCHED_GETCPU_SUPPORT
-- 
2.47.0
Re: [PATCH] perf util: Remove kernel version deadcode
Posted by Ian Rogers 5 days, 16 hours ago
On Sat, Nov 16, 2024 at 7:58 AM <linux@treblig.org> wrote:
>
> From: "Dr. David Alan Gilbert" <linux@treblig.org>
>
> fetch_kernel_version() has been unused since Ian's 2013
> commit 3d6dfae88917 ("perf parse-events: Remove BPF event support")
>
> Remove it, and it's helpers.
> I noticed there are a bunch of kernel-version macros that are also
> unused nearby.
> Also remove them.
>
> Signed-off-by: Dr. David Alan Gilbert <linux@treblig.org>

Reviewed-by: Ian Rogers <irogers@google.com>

Thanks,
Ian

> ---
>  tools/perf/util/util.c | 85 ------------------------------------------
>  tools/perf/util/util.h |  8 ----
>  2 files changed, 93 deletions(-)
>
> diff --git a/tools/perf/util/util.c b/tools/perf/util/util.c
> index 9d55a13787ce..855aac5150a0 100644
> --- a/tools/perf/util/util.c
> +++ b/tools/perf/util/util.c
> @@ -336,91 +336,6 @@ bool perf_event_paranoid_check(int max_level)
>         return perf_event_paranoid() <= max_level;
>  }
>
> -static int
> -fetch_ubuntu_kernel_version(unsigned int *puint)
> -{
> -       ssize_t len;
> -       size_t line_len = 0;
> -       char *ptr, *line = NULL;
> -       int version, patchlevel, sublevel, err;
> -       FILE *vsig;
> -
> -       if (!puint)
> -               return 0;
> -
> -       vsig = fopen("/proc/version_signature", "r");
> -       if (!vsig) {
> -               pr_debug("Open /proc/version_signature failed: %s\n",
> -                        strerror(errno));
> -               return -1;
> -       }
> -
> -       len = getline(&line, &line_len, vsig);
> -       fclose(vsig);
> -       err = -1;
> -       if (len <= 0) {
> -               pr_debug("Reading from /proc/version_signature failed: %s\n",
> -                        strerror(errno));
> -               goto errout;
> -       }
> -
> -       ptr = strrchr(line, ' ');
> -       if (!ptr) {
> -               pr_debug("Parsing /proc/version_signature failed: %s\n", line);
> -               goto errout;
> -       }
> -
> -       err = sscanf(ptr + 1, "%d.%d.%d",
> -                    &version, &patchlevel, &sublevel);
> -       if (err != 3) {
> -               pr_debug("Unable to get kernel version from /proc/version_signature '%s'\n",
> -                        line);
> -               goto errout;
> -       }
> -
> -       *puint = (version << 16) + (patchlevel << 8) + sublevel;
> -       err = 0;
> -errout:
> -       free(line);
> -       return err;
> -}
> -
> -int
> -fetch_kernel_version(unsigned int *puint, char *str,
> -                    size_t str_size)
> -{
> -       struct utsname utsname;
> -       int version, patchlevel, sublevel, err;
> -       bool int_ver_ready = false;
> -
> -       if (access("/proc/version_signature", R_OK) == 0)
> -               if (!fetch_ubuntu_kernel_version(puint))
> -                       int_ver_ready = true;
> -
> -       if (uname(&utsname))
> -               return -1;
> -
> -       if (str && str_size) {
> -               strncpy(str, utsname.release, str_size);
> -               str[str_size - 1] = '\0';
> -       }
> -
> -       if (!puint || int_ver_ready)
> -               return 0;
> -
> -       err = sscanf(utsname.release, "%d.%d.%d",
> -                    &version, &patchlevel, &sublevel);
> -
> -       if (err != 3) {
> -               pr_debug("Unable to get kernel version from uname '%s'\n",
> -                        utsname.release);
> -               return -1;
> -       }
> -
> -       *puint = (version << 16) + (patchlevel << 8) + sublevel;
> -       return 0;
> -}
> -
>  int perf_tip(char **strp, const char *dirpath)
>  {
>         struct strlist *tips;
> diff --git a/tools/perf/util/util.h b/tools/perf/util/util.h
> index 9966c21aaf04..b5e7becfc803 100644
> --- a/tools/perf/util/util.h
> +++ b/tools/perf/util/util.h
> @@ -43,14 +43,6 @@ int sysctl__max_stack(void);
>
>  bool sysctl__nmi_watchdog_enabled(void);
>
> -int fetch_kernel_version(unsigned int *puint,
> -                        char *str, size_t str_sz);
> -#define KVER_VERSION(x)                (((x) >> 16) & 0xff)
> -#define KVER_PATCHLEVEL(x)     (((x) >> 8) & 0xff)
> -#define KVER_SUBLEVEL(x)       ((x) & 0xff)
> -#define KVER_FMT       "%d.%d.%d"
> -#define KVER_PARAM(x)  KVER_VERSION(x), KVER_PATCHLEVEL(x), KVER_SUBLEVEL(x)
> -
>  int perf_tip(char **strp, const char *dirpath);
>
>  #ifndef HAVE_SCHED_GETCPU_SUPPORT
> --
> 2.47.0
>
Re: [PATCH] perf util: Remove kernel version deadcode
Posted by Arnaldo Carvalho de Melo 5 days, 15 hours ago
On Sat, Nov 16, 2024 at 10:37:32AM -0800, Ian Rogers wrote:
> On Sat, Nov 16, 2024 at 7:58 AM <linux@treblig.org> wrote:
> > From: "Dr. David Alan Gilbert" <linux@treblig.org>
> >
> > fetch_kernel_version() has been unused since Ian's 2013

                                                       2023

> > commit 3d6dfae88917 ("perf parse-events: Remove BPF event support")
> >
> > Remove it, and it's helpers.
> > I noticed there are a bunch of kernel-version macros that are also
> > unused nearby.
> > Also remove them.
> >
> > Signed-off-by: Dr. David Alan Gilbert <linux@treblig.org>
> 
> Reviewed-by: Ian Rogers <irogers@google.com>

Thanks, applied to perf-tools-next,

- Arnaldo
Re: [PATCH] perf util: Remove kernel version deadcode
Posted by Dr. David Alan Gilbert 5 days, 14 hours ago
* Arnaldo Carvalho de Melo (acme@kernel.org) wrote:
> On Sat, Nov 16, 2024 at 10:37:32AM -0800, Ian Rogers wrote:
> > On Sat, Nov 16, 2024 at 7:58 AM <linux@treblig.org> wrote:
> > > From: "Dr. David Alan Gilbert" <linux@treblig.org>
> > >
> > > fetch_kernel_version() has been unused since Ian's 2013
> 
>                                                        2023
> 
> > > commit 3d6dfae88917 ("perf parse-events: Remove BPF event support")
> > >
> > > Remove it, and it's helpers.
> > > I noticed there are a bunch of kernel-version macros that are also
> > > unused nearby.
> > > Also remove them.
> > >
> > > Signed-off-by: Dr. David Alan Gilbert <linux@treblig.org>
> > 
> > Reviewed-by: Ian Rogers <irogers@google.com>
> 
> Thanks, applied to perf-tools-next,

Thanks!
Have you got:
  [PATCH] perf: Remove unused del_perf_probe_events
  https://lore.kernel.org/all/20241022002940.302946-1-linux@treblig.org/

from a few weeks back in there?   I don't think I've had an email
response to that one.

Dave

> - Arnaldo
> 
-- 
 -----Open up your eyes, open up your mind, open up your code -------   
/ Dr. David Alan Gilbert    |       Running GNU/Linux       | Happy  \ 
\        dave @ treblig.org |                               | In Hex /
 \ _________________________|_____ http://www.treblig.org   |_______/
Re: [PATCH] perf util: Remove kernel version deadcode
Posted by Arnaldo Carvalho de Melo 5 days, 14 hours ago
On Sat, Nov 16, 2024 at 07:51:39PM +0000, Dr. David Alan Gilbert wrote:
> * Arnaldo Carvalho de Melo (acme@kernel.org) wrote:
> > Thanks, applied to perf-tools-next,
 
> Thanks!
> Have you got:
>   [PATCH] perf: Remove unused del_perf_probe_events
>   https://lore.kernel.org/all/20241022002940.302946-1-linux@treblig.org/
 
> from a few weeks back in there?   I don't think I've had an email
> response to that one.

Done now and pushed out, thanks for cleaning up the perf tools codebase!

- Arnaldo
Re: [PATCH] perf util: Remove kernel version deadcode
Posted by Dr. David Alan Gilbert 5 days, 14 hours ago
* Arnaldo Carvalho de Melo (acme@kernel.org) wrote:
> On Sat, Nov 16, 2024 at 07:51:39PM +0000, Dr. David Alan Gilbert wrote:
> > * Arnaldo Carvalho de Melo (acme@kernel.org) wrote:
> > > Thanks, applied to perf-tools-next,
>  
> > Thanks!
> > Have you got:
> >   [PATCH] perf: Remove unused del_perf_probe_events
> >   https://lore.kernel.org/all/20241022002940.302946-1-linux@treblig.org/
>  
> > from a few weeks back in there?   I don't think I've had an email
> > response to that one.
> 
> Done now and pushed out, thanks for cleaning up the perf tools codebase!

Thanks!

Dave

> - Arnaldo
-- 
 -----Open up your eyes, open up your mind, open up your code -------   
/ Dr. David Alan Gilbert    |       Running GNU/Linux       | Happy  \ 
\        dave @ treblig.org |                               | In Hex /
 \ _________________________|_____ http://www.treblig.org   |_______/