From 2554f6f564097e4e3a4132d3af8ef78d588d13d1 Mon Sep 17 00:00:00 2001 From: Simon Marchi Date: Fri, 2 Oct 2020 14:45:52 -0400 Subject: gdb: give names to event loop file handlers Assign names to event loop file handlers. They will be used in debug messages when file handlers are invoked. In GDB, each UI used to get its own unique number, until commit cbe256847e19 ("Remove ui::num"). Re-introduce this field, and use it to make a unique name for the handler. I'm not too sure what goes on in ser-base.c, all I know is that it's what is used when debugging remotely. I've just named the main handler "serial". It would be good to have unique names there too. For instance when debugging with two different remote connections, we'd ideally want the handlers to have unique names. I didn't do it in this patch though. gdb/ChangeLog: * async-event.c (initialize_async_signal_handlers): Pass name to add_file_handler * event-top.c (ui_register_input_event_handler): Likewise. * linux-nat.c (linux_nat_target::async): Likewise. * run-on-main-thread.c (_initialize_run_on_main_thread): Likewise * ser-base.c (reschedule): Likewise. (ser_base_async): Likewise. * tui/tui-io.c: Likewise. * top.h (struct ui) : New field. * top.c (highest_ui_num): New variable. (ui::ui): Initialize num. gdbserver/ChangeLog: * linux-low.cc (linux_process_target::async): Pass name to add_file_handler. * remote-utils.cc (handle_accept_event): Likewise. (remote_open): Likewise. gdbsupport/ChangeLog: * event-loop.h (add_file_handler): Add "name" parameter. * event-loop.cc (struct file_handler) : New field. (create_file_handler): Add "name" parameter, assign it to file handler. (add_file_handler): Add "name" parameter. Change-Id: I9f1545f73888ebb6778eb653a618ca44d105f92c --- gdbserver/ChangeLog | 7 +++++++ gdbserver/linux-low.cc | 3 ++- gdbserver/remote-utils.cc | 10 ++++++---- 3 files changed, 15 insertions(+), 5 deletions(-) (limited to 'gdbserver') diff --git a/gdbserver/ChangeLog b/gdbserver/ChangeLog index d667a20..9ed90ba 100644 --- a/gdbserver/ChangeLog +++ b/gdbserver/ChangeLog @@ -1,3 +1,10 @@ +2020-10-02 Simon Marchi + + * linux-low.cc (linux_process_target::async): Pass name to + add_file_handler. + * remote-utils.cc (handle_accept_event): Likewise. + (remote_open): Likewise. + 2020-10-01 Kamil Rytarowski * netbsd-i386-low.cc: Add. diff --git a/gdbserver/linux-low.cc b/gdbserver/linux-low.cc index 70d5521..1ae72a2 100644 --- a/gdbserver/linux-low.cc +++ b/gdbserver/linux-low.cc @@ -6092,7 +6092,8 @@ linux_process_target::async (bool enable) /* Register the event loop handler. */ add_file_handler (linux_event_pipe[0], - handle_target_event, NULL); + handle_target_event, NULL, + "linux-low"); /* Always trigger a linux_wait. */ async_file_mark (); diff --git a/gdbserver/remote-utils.cc b/gdbserver/remote-utils.cc index c26668d..5a6ceb1 100644 --- a/gdbserver/remote-utils.cc +++ b/gdbserver/remote-utils.cc @@ -194,7 +194,7 @@ handle_accept_event (int err, gdb_client_data client_data) enable_async_notification (remote_desc); /* Register the event loop handler. */ - add_file_handler (remote_desc, handle_serial_event, NULL); + add_file_handler (remote_desc, handle_serial_event, NULL, "remote-net"); /* We have a new GDB connection now. If we were disconnected tracing, there's a window where the target could report a stop @@ -331,7 +331,7 @@ remote_open (const char *name) enable_async_notification (remote_desc); /* Register the event loop handler. */ - add_file_handler (remote_desc, handle_serial_event, NULL); + add_file_handler (remote_desc, handle_serial_event, NULL, "remote-stdio"); } #ifndef USE_WIN32API else if (port_str == NULL) @@ -372,7 +372,8 @@ remote_open (const char *name) enable_async_notification (remote_desc); /* Register the event loop handler. */ - add_file_handler (remote_desc, handle_serial_event, NULL); + add_file_handler (remote_desc, handle_serial_event, NULL, + "remote-device"); } #endif /* USE_WIN32API */ else @@ -398,7 +399,8 @@ remote_open (const char *name) fflush (stderr); /* Register the event loop handler. */ - add_file_handler (listen_desc, handle_accept_event, NULL); + add_file_handler (listen_desc, handle_accept_event, NULL, + "remote-listen"); } } -- cgit v1.1