This is the mail archive of the gdb@sources.redhat.com mailing list for the GDB 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]

gdbserver tcsetpgrp() ??


Hi

I have ported the gdbserver 5.3 on arm-linux target.
But as soon as debugging finishes, the target system gets logged out.

Then I had found that the "tcsetpgrp" in server.c:start_inferior() of
gdbserver was the culprit.
After commenting the line "tcsetpgrp (fileno (stderr), signal_pid);" , the
logout problem got solved !!!

I have also found that gdb-5.2 was not using this system call !!

What does this tcsetpgrp  actually doing ..?? (It has something to do with
foreground processing of terminal ..means..??)

How much is this necessary for remote debugging...??



**************************** clip of
server.c***************************************

start_inferior (char *argv[], char *statusptr)
{

  signal (SIGTTOU, SIG_DFL);
  signal (SIGTTIN, SIG_DFL);

  signal_pid = create_inferior (argv[0], argv);

  fprintf (stderr, "Process %s created; pid = %d\n", argv[0],
           signal_pid);
  signal (SIGTTOU, SIG_IGN);
  signal (SIGTTIN, SIG_IGN);

  /* chagall temp fix */
  /* when we use this function chagall gets logged out */
  //tcsetpgrp (fileno (stderr), signal_pid);

  /* Wait till we are at 1st instruction in program, return signal number.
*/
  return mywait (statusptr, 0);
}
**************************************end clip
*****************************************

Thanks and regards
Vijay


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