This is the mail archive of the elfutils-devel@sourceware.org mailing list for the elfutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PATCH] libdwfl: clean up non-Linux GNU platforms code


Hi,

As suggested by Mark Wielaard, I'm contributing the attached patch
which I wrote for Debian Bug#816394:

elfutils will FTBFS on kfreebsd (and I suspect on hurd) with gcc-6,
because there is an unused const and several unused, unexported stub
functions in linux-pid-attach.c inside a code block guarded by
#ifndef __linux__

Thank you,
Regards,
-- 
Steven Chamberlain
steven(a)pyro.eu.org
From 072fc91f451277de7df5ea804cb11a51700f7622 Mon Sep 17 00:00:00 2001
From: Steven Chamberlain <steven@pyro.eu.org>
Date: Tue, 1 Mar 2016 13:32:37 +0000
Subject: [PATCH] libdwfl: clean up non-Linux GNU platforms code

For non-Linux GNU platforms (like kFreeBSD, Hurd), linux-pid-attach.c
had some stub functions that are not used or exported.  Since gcc-6,
having these caused compiler errors due to -Wall -Werror:

linux-pid-attach.c:479:36: error: 'pid_thread_callbacks' defined but not used [-Werror=unused-const-variable=]

linux-pid-attach.c:474:1: error: 'pid_thread_detach' defined but not used [-Werror=unused-function]
linux-pid-attach.c:461:1: error: 'pid_detach' defined but not used [-Werror=unused-function]
linux-pid-attach.c:452:1: error: 'pid_set_initial_registers' defined but not used [-Werror=unused-function]
linux-pid-attach.c:441:1: error: 'pid_memory_read' defined but not used [-Werror=unused-function]
linux-pid-attach.c:420:1: error: 'pid_getthread' defined but not used [-Werror=unused-function]
linux-pid-attach.c:410:1: error: 'pid_next_thread' defined but not used [-Werror=unused-function]

This part of the source file is guarded by #ifndef __linux__

Signed-off-by: Steven Chamberlain <steven@pyro.eu.org>
---
 libdwfl/linux-pid-attach.c | 63 ----------------------------------------------
 1 file changed, 63 deletions(-)

diff --git a/libdwfl/linux-pid-attach.c b/libdwfl/linux-pid-attach.c
index 4c0f42d..c13f2b6 100644
--- a/libdwfl/linux-pid-attach.c
+++ b/libdwfl/linux-pid-attach.c
@@ -406,27 +406,6 @@ __libdwfl_get_pid_arg (Dwfl *dwfl)
 
 #else	/* __linux__ */
 
-static pid_t
-pid_next_thread (Dwfl *dwfl __attribute__ ((unused)),
-	         void *dwfl_arg __attribute__ ((unused)),
-		 void **thread_argp __attribute__ ((unused)))
-{
-  errno = ENOSYS;
-  __libdwfl_seterrno (DWFL_E_ERRNO);
-  return -1;
-}
-
-static bool
-pid_getthread (Dwfl *dwfl __attribute__ ((unused)),
-	       pid_t tid __attribute__ ((unused)),
-	       void *dwfl_arg __attribute__ ((unused)),
-	       void **thread_argp __attribute__ ((unused)))
-{
-  errno = ENOSYS;
-  __libdwfl_seterrno (DWFL_E_ERRNO);
-  return false;
-}
-
 bool
 internal_function
 __libdwfl_ptrace_attach (pid_t tid __attribute__ ((unused)),
@@ -437,32 +416,6 @@ __libdwfl_ptrace_attach (pid_t tid __attribute__ ((unused)),
   return false;
 }
 
-static bool
-pid_memory_read (Dwfl *dwfl __attribute__ ((unused)),
-                 Dwarf_Addr addr __attribute__ ((unused)),
-	         Dwarf_Word *result __attribute__ ((unused)),
-	         void *arg __attribute__ ((unused)))
-{
-  errno = ENOSYS;
-  __libdwfl_seterrno (DWFL_E_ERRNO);
-  return false;
-}
-
-static bool
-pid_set_initial_registers (Dwfl_Thread *thread __attribute__ ((unused)),
-			   void *thread_arg __attribute__ ((unused)))
-{
-  errno = ENOSYS;
-  __libdwfl_seterrno (DWFL_E_ERRNO);
-  return false;
-}
-
-static void
-pid_detach (Dwfl *dwfl __attribute__ ((unused)),
-	    void *dwfl_arg __attribute__ ((unused)))
-{
-}
-
 void
 internal_function
 __libdwfl_ptrace_detach (pid_t tid __attribute__ ((unused)),
@@ -470,22 +423,6 @@ __libdwfl_ptrace_detach (pid_t tid __attribute__ ((unused)),
 {
 }
 
-static void
-pid_thread_detach (Dwfl_Thread *thread __attribute__ ((unused)),
-		  void *thread_arg __attribute__ ((unused)))
-{
-}
-
-static const Dwfl_Thread_Callbacks pid_thread_callbacks =
-{
-  pid_next_thread,
-  pid_getthread,
-  pid_memory_read,
-  pid_set_initial_registers,
-  pid_detach,
-  pid_thread_detach,
-};
-
 int
 dwfl_linux_proc_attach (Dwfl *dwfl __attribute__ ((unused)),
 			pid_t pid __attribute__ ((unused)),
-- 
1.8.4.rc3

Attachment: signature.asc
Description: PGP signature


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]