[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[gdb, hurd] Adjust to Hurd "proc" interface changes (was: proc_task2proc
From: |
Thomas Schwinge |
Subject: |
[gdb, hurd] Adjust to Hurd "proc" interface changes (was: proc_task2proc prototype change) |
Date: |
Thu, 14 Feb 2019 17:34:26 +0100 |
User-agent: |
Notmuch/0.9-125-g4686d11 (http://notmuchmail.org) Emacs/25.2.2 (x86_64-pc-linux-gnu) |
Hi!
On Tue, 06 Jun 2017 08:49:16 +0200, Justus Winter <justus@gnupg.org> wrote:
> David Michael <fedora.dm0@gmail.com> writes:
> > On Mon, Jun 5, 2017 at 7:40 AM, Justus Winter <justus@gnupg.org> wrote:
> >> [...]
> > The reply
> > functions still have mach_port_poly_t, though, and they are used by
> > GDB. Is that correct?
>
> Oh wow, a server for the reply part of a protocol. Odd. Well, I
> decided not to revert the change to the reply part so that it is
> consistent with how the reply of a server for the full protocol works.
>
> > It will require something like the following to get GDB to compile due
> > to the changed generated definitions.
> > [...]
> > ILL_RPC (S_proc_getmsgport_reply,
> > mach_port_t reply_port, kern_return_t return_code,
> > - mach_port_t msgports)
> > + mach_port_t msgports, mach_msg_type_name_t msgportsPoly)
ACK, thanks; I pushed to GDB master the attached commit
8071c5ce78245eff43f9977a7c3ff8328f7486da '[gdb, hurd] Adjust to Hurd
"proc" interface changes'.
> Well, seeing that ILL_RPC is for unused procedures, it would be much
> easier to use MIGs "new" way of creating default server stubs that
> return a fixed value. This can be done by #defining MIG_EOPNOTSUPP to
> some value while compiling the MIG-generated server stub. Being a
> simpleroutine it doesn't really matter to what value, but EOPNOTSUPP
> seems to be a better choice than ILL_RPC's 0.
Thanks, we shall look into that later.
Grüße
Thomas
>From 8071c5ce78245eff43f9977a7c3ff8328f7486da Mon Sep 17 00:00:00 2001
From: David Michael <fedora.dm0@gmail.com>
Date: Mon, 5 Jun 2017 17:35:11 -0700
Subject: [PATCH] [gdb, hurd] Adjust to Hurd "proc" interface changes
Hurd's commit baf7e5c8ce176aead15c2559952d8bdf0da41ffd "hurd: Use polymorphic
port types to return some rights" causes in the GDB build:
/usr/bin/ld: process_reply_S.o: in function `_Xproc_pid2proc_reply':
[...]/gdb/process_reply_S.c:754: undefined reference to
`S_proc_pid2proc_reply'
/usr/bin/ld: [...]/gdb/process_reply_S.c:730: undefined reference to
`S_proc_pid2proc_reply'
/usr/bin/ld: process_reply_S.o: in function `_Xproc_task2proc_reply':
[...]/gdb/process_reply_S.c:589: undefined reference to
`S_proc_task2proc_reply'
/usr/bin/ld: [...]/gdb/process_reply_S.c:565: undefined reference to
`S_proc_task2proc_reply'
/usr/bin/ld: process_reply_S.o: in function `_Xproc_getmsgport_reply':
[...]/gdb/process_reply_S.c:204: undefined reference to
`S_proc_getmsgport_reply'
/usr/bin/ld: [...]/gdb/process_reply_S.c:180: undefined reference to
`S_proc_getmsgport_reply'
collect2: error: ld returned 1 exit status
gdb/
* gnu-nat.c (S_proc_getmsgport_reply, S_proc_task2proc_reply)
(S_proc_pid2proc_reply): Adjust to Hurd "proc" interface changes.
---
gdb/ChangeLog | 7 +++++++
gdb/gnu-nat.c | 8 +++++---
2 files changed, 12 insertions(+), 3 deletions(-)
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index e427dda8a3..f2bbd77558 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,10 @@
+2019-02-14 David Michael <fedora.dm0@gmail.com>
+ Samuel Thibault <samuel.thibault@gnu.org>
+ Thomas Schwinge <thomas@codesourcery.com>
+
+ * gnu-nat.c (S_proc_getmsgport_reply, S_proc_task2proc_reply)
+ (S_proc_pid2proc_reply): Adjust to Hurd "proc" interface changes.
+
2019-02-14 Thomas Schwinge <thomas@codesourcery.com>
* gnu-nat.c (gnu_write_inferior, parse_int_arg, _parse_bool_arg)
diff --git a/gdb/gnu-nat.c b/gdb/gnu-nat.c
index 395b456ad7..53f23068a4 100644
--- a/gdb/gnu-nat.c
+++ b/gdb/gnu-nat.c
@@ -1880,17 +1880,19 @@ ILL_RPC (S_proc_setmsgport_reply,
mach_port_t oldmsgport)
ILL_RPC (S_proc_getmsgport_reply,
mach_port_t reply_port, kern_return_t return_code,
- mach_port_t msgports)
+ mach_port_t msgports, mach_msg_type_name_t msgportsPoly)
ILL_RPC (S_proc_pid2task_reply,
mach_port_t reply_port, kern_return_t return_code, mach_port_t task)
ILL_RPC (S_proc_task2pid_reply,
mach_port_t reply_port, kern_return_t return_code, pid_t pid)
ILL_RPC (S_proc_task2proc_reply,
- mach_port_t reply_port, kern_return_t return_code, mach_port_t proc)
+ mach_port_t reply_port, kern_return_t return_code,
+ mach_port_t proc, mach_msg_type_name_t procPoly)
ILL_RPC (S_proc_proc2task_reply,
mach_port_t reply_port, kern_return_t return_code, mach_port_t task)
ILL_RPC (S_proc_pid2proc_reply,
- mach_port_t reply_port, kern_return_t return_code, mach_port_t proc)
+ mach_port_t reply_port, kern_return_t return_code,
+ mach_port_t proc, mach_msg_type_name_t procPoly)
ILL_RPC (S_proc_getprocinfo_reply,
mach_port_t reply_port, kern_return_t return_code,
int flags, procinfo_t procinfo, mach_msg_type_number_t procinfoCnt,
--
2.19.2
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [gdb, hurd] Adjust to Hurd "proc" interface changes (was: proc_task2proc prototype change),
Thomas Schwinge <=