[PATCH] Remove process_stratum_target::hostio_last_error abstraction (Re: [PATCH] gdb, gdbserver: remove WinCE support code)
Pedro Alves
pedro@palves.net
Mon Apr 12 22:20:45 GMT 2021
On 12/04/21 16:24, Simon Marchi wrote:
> On 2021-04-12 11:12 a.m., Simon Marchi via Gdb-patches wrote:
>> On 2021-04-12 7:42 a.m., Pedro Alves wrote:
>>> We can also get rid of the whole
>>>
>>> the_target->hostio_last_error / hostio-errno.cc / hostio_last_error_from_errno
>>>
>>> abstraction now.
>>
>> Ok, I didn't really know what that was for. I pushed the patch and will
>> send a follow up for that.
>
> Well, I spoke too soon, I don't really understand what abstraction you
> are talking about.
This.
>From 6a3ffc7e3f65799402078dc9c0721eeb33fc19c9 Mon Sep 17 00:00:00 2001
From: Pedro Alves <pedro@palves.net>
Date: Mon, 12 Apr 2021 20:23:54 +0100
Subject: [PATCH] Remove process_stratum_target::hostio_last_error abstraction
Now that the WinCE port is gone, all ports map host I/O errors from
errno, so this abstraction is no longer necessary.
Basically undoes:
https://sourceware.org/pipermail/gdb-patches/2008-January/055246.html
https://sourceware.org/pipermail/gdb-patches/attachments/20080131/f44e7012/attachment.bin
gdbserver/ChangeLog:
* Makefile.in (SFILES): Remove hostio-errno.cc.
* configure: Regenerate.
* configure.ac (GDBSERVER_DEPFILES): No longer add
$srv_hostio_err_objs.
* configure.srv (srv_hostio_err_objs): Delete.
* hostio-errno.cc: Delete.
* hostio.cc (hostio_error): Inline hostio_last_error_from_errno
here.
* hostio.h (hostio_last_error_from_errno): Delete.
* target.cc (process_stratum_target::hostio_last_error): Delete.
* target.h (class process_stratum_target) <hostio_last_error>:
Delete.
---
gdbserver/Makefile.in | 1 -
gdbserver/configure | 2 +-
gdbserver/configure.ac | 2 +-
gdbserver/configure.srv | 5 -----
gdbserver/hostio-errno.cc | 36 ------------------------------------
gdbserver/hostio.cc | 8 +++++---
gdbserver/hostio.h | 4 ----
gdbserver/target.cc | 6 ------
gdbserver/target.h | 4 ----
9 files changed, 7 insertions(+), 61 deletions(-)
delete mode 100644 gdbserver/hostio-errno.cc
diff --git a/gdbserver/Makefile.in b/gdbserver/Makefile.in
index a05cd1a57ad..f7ade7d61d5 100644
--- a/gdbserver/Makefile.in
+++ b/gdbserver/Makefile.in
@@ -186,7 +186,6 @@ SFILES = \
$(srcdir)/dll.cc \
$(srcdir)/gdbreplay.cc \
$(srcdir)/hostio.cc \
- $(srcdir)/hostio-errno.cc \
$(srcdir)/i387-fp.cc \
$(srcdir)/inferiors.cc \
$(srcdir)/linux-aarch64-low.cc \
diff --git a/gdbserver/configure b/gdbserver/configure
index 0db0ad3f4fb..032b4ae65bb 100755
--- a/gdbserver/configure
+++ b/gdbserver/configure
@@ -10633,7 +10633,7 @@ $as_echo "#define USE_XML 1" >>confdefs.h
done
fi
-GDBSERVER_DEPFILES="$srv_regobj $srv_tgtobj $srv_hostio_err_objs $srv_thread_depfiles"
+GDBSERVER_DEPFILES="$srv_regobj $srv_tgtobj $srv_thread_depfiles"
GDBSERVER_LIBS="$srv_libs"
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the target supports __sync_*_compare_and_swap" >&5
diff --git a/gdbserver/configure.ac b/gdbserver/configure.ac
index 6c504777d09..5ec222dfc60 100644
--- a/gdbserver/configure.ac
+++ b/gdbserver/configure.ac
@@ -379,7 +379,7 @@ if test "$srv_xmlfiles" != ""; then
done
fi
-GDBSERVER_DEPFILES="$srv_regobj $srv_tgtobj $srv_hostio_err_objs $srv_thread_depfiles"
+GDBSERVER_DEPFILES="$srv_regobj $srv_tgtobj $srv_thread_depfiles"
GDBSERVER_LIBS="$srv_libs"
dnl Check whether the target supports __sync_*_compare_and_swap.
diff --git a/gdbserver/configure.srv b/gdbserver/configure.srv
index 2dd8f75a4e0..971f537bffa 100644
--- a/gdbserver/configure.srv
+++ b/gdbserver/configure.srv
@@ -8,8 +8,6 @@
# srv_regobj The register protocol appropriate for this target.
# srv_tgtobj Any other target-specific modules appropriate
# for this target.
-# srv_hostio_err The object implementing the hostio_last_error
-# target method.
# srv_xmlfiles All XML files which should be available for
# gdbserver in this configuration.
# ipa_obj Any other target-specific modules appropriate
@@ -24,9 +22,6 @@
# srv_linux_usrregs Set to "yes" if we can get at registers via
# PTRACE_PEEKUSR / PTRACE_POKEUSR.
-# Default hostio_last_error implementation
-srv_hostio_err_objs="hostio-errno.o"
-
ipa_ppc_linux_regobj="powerpc-32l-ipa.o powerpc-altivec32l-ipa.o powerpc-vsx32l-ipa.o powerpc-isa205-32l-ipa.o powerpc-isa205-altivec32l-ipa.o powerpc-isa205-vsx32l-ipa.o powerpc-isa205-ppr-dscr-vsx32l-ipa.o powerpc-isa207-vsx32l-ipa.o powerpc-isa207-htm-vsx32l-ipa.o powerpc-e500l-ipa.o powerpc-64l-ipa.o powerpc-altivec64l-ipa.o powerpc-vsx64l-ipa.o powerpc-isa205-64l-ipa.o powerpc-isa205-altivec64l-ipa.o powerpc-isa205-vsx64l-ipa.o powerpc-isa205-ppr-dscr-vsx64l-ipa.o powerpc-isa207-vsx64l-ipa.o powerpc-isa207-htm-vsx64l-ipa.o"
# Linux object files. This is so we don't have to repeat
diff --git a/gdbserver/hostio-errno.cc b/gdbserver/hostio-errno.cc
deleted file mode 100644
index 4cb3922b92e..00000000000
--- a/gdbserver/hostio-errno.cc
+++ /dev/null
@@ -1,36 +0,0 @@
-/* Host file transfer support for gdbserver.
- Copyright (C) 2007-2021 Free Software Foundation, Inc.
-
- Contributed by CodeSourcery.
-
- This file is part of GDB.
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 3 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>. */
-
-/* This file implements the hostio_last_error target callback
- on top of errno. */
-
-#include "server.h"
-
-#include "hostio.h"
-
-#include "gdbsupport/fileio.h"
-
-void
-hostio_last_error_from_errno (char *buf)
-{
- int error = errno;
- int fileio_error = host_to_fileio_error (error);
- sprintf (buf, "F-1,%x", fileio_error);
-}
diff --git a/gdbserver/hostio.cc b/gdbserver/hostio.cc
index 26c0f119d20..0654bba3a6f 100644
--- a/gdbserver/hostio.cc
+++ b/gdbserver/hostio.cc
@@ -191,12 +191,14 @@ require_valid_fd (int fd)
return -1;
}
-/* Fill in own_buf with the last hostio error packet, however it
- suitable for the target. */
+/* Fill BUF with an hostio error packet representing the last hostio
+ error, from errno. */
+
static void
hostio_error (char *own_buf)
{
- the_target->hostio_last_error (own_buf);
+ int fileio_error = host_to_fileio_error (errno);
+ sprintf (own_buf, "F-1,%x", fileio_error);
}
static void
diff --git a/gdbserver/hostio.h b/gdbserver/hostio.h
index 61c42196e54..97c27c6b744 100644
--- a/gdbserver/hostio.h
+++ b/gdbserver/hostio.h
@@ -22,10 +22,6 @@
/* Per-connection setup. */
extern void hostio_handle_new_gdb_connection (void);
-/* Functions from hostio.c. */
extern int handle_vFile (char *, int, int *);
-/* Functions from hostio-errno.c. */
-extern void hostio_last_error_from_errno (char *own_buf);
-
#endif /* GDBSERVER_HOSTIO_H */
diff --git a/gdbserver/target.cc b/gdbserver/target.cc
index 5ec3e5cce9f..6660cc04fd5 100644
--- a/gdbserver/target.cc
+++ b/gdbserver/target.cc
@@ -505,12 +505,6 @@ process_stratum_target::get_tls_address (thread_info *thread,
gdb_assert_not_reached ("target op get_tls_address not supported");
}
-void
-process_stratum_target::hostio_last_error (char *buf)
-{
- hostio_last_error_from_errno (buf);
-}
-
bool
process_stratum_target::supports_qxfer_osdata ()
{
diff --git a/gdbserver/target.h b/gdbserver/target.h
index 769d8281176..2c4393ec8c6 100644
--- a/gdbserver/target.h
+++ b/gdbserver/target.h
@@ -256,10 +256,6 @@ class process_stratum_target
virtual int get_tls_address (thread_info *thread, CORE_ADDR offset,
CORE_ADDR load_module, CORE_ADDR *address);
- /* Fill BUF with an hostio error packet representing the last hostio
- error. */
- virtual void hostio_last_error (char *buf);
-
/* Return true if the qxfer_osdata target op is supported. */
virtual bool supports_qxfer_osdata ();
base-commit: 4bb920c68e3a9e310095d54e0c4034c9cee12916
--
2.26.2
More information about the Gdb-patches
mailing list