From owner-freebsd-gnome Thu Jul 11 9:34:52 2002 Delivered-To: freebsd-gnome@freebsd.org Received: from mx1.FreeBSD.org (mx1.FreeBSD.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 278E637B400 for ; Thu, 11 Jul 2002 09:34:48 -0700 (PDT) Received: from creme-brulee.marcuscom.com (rdu57-17-158.nc.rr.com [66.57.17.158]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4A48A43E70 for ; Thu, 11 Jul 2002 09:34:47 -0700 (PDT) (envelope-from marcus@FreeBSD.org) Received: from [10.2.1.200] (vpn-client.marcuscom.com [10.2.1.200]) by creme-brulee.marcuscom.com (8.12.5/8.12.5) with ESMTP id g6BGYaFg003980; Thu, 11 Jul 2002 12:34:36 -0400 (EDT) (envelope-from marcus@FreeBSD.org) Subject: Re: GDM 2.4.0.x & FreeBSD From: Joe Marcus Clarke To: George Cc: Joe Kelsey , ezislis , gnome@FreeBSD.org In-Reply-To: <20020711163859.GC16083@monique.linux.bogus> References: <20020711010419.H37195-100000@finone.in.kesor.net> <1026353333.8748.40.camel@zircon.zircon.seattle.wa.us> <20020711163859.GC16083@monique.linux.bogus> Content-Type: text/plain Content-Transfer-Encoding: 7bit X-Mailer: Ximian Evolution 1.0.8 Date: 11 Jul 2002 12:34:23 -0400 Message-Id: <1026405263.357.87.camel@gyros.marcuscom.com> Mime-Version: 1.0 Sender: owner-freebsd-gnome@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG On Thu, 2002-07-11 at 12:39, George wrote: > On Wed, Jul 10, 2002 at 07:08:53PM -0700, Joe Kelsey wrote: > > > --- quote --- > > > (gdb) bt > > > #0 0x288c61d7 in __srget () from /usr/lib/libc_r.so.4 > > > #1 0x8058dee in gdm_slave_greeter_ctl (cmd=35 '#', str=0x80679a3 > > > "") at /usr/include/stdio.h:418 > > > #2 0x80555a6 in run_pictures () at slave.c:1080 > > > #3 0x8056270 in gdm_slave_greeter () at slave.c:1477 > > > #4 0x8054a2f in gdm_slave_run (display=0x80b2000) at slave.c:603 > > > #5 0x8054236 in gdm_slave_start (display=0x80b2000) at > > > slave.c:271 > > > #6 0x8053b0b in gdm_display_manage (d=0x80b2000) at display.c:217 > > > #7 0x8050625 in gdm_start_first_unborn_local (delay=0) at > > > gdm.c:764 > > > #8 0x805184f in main (argc=3, argv=0xbfbffde0) at gdm.c:1497 > > > #9 0x804ef31 in _start () > > > --- end quote --- > > > > This is absolutely normal. GDM forks the gdmlogin process and then > > enters an endless loop in run_pictures. It regularly checks for a > > return from gdmlogin, hoping that it can use the username to display the > > user's picture. Otherwise, it just keeps in an endless loop in > > run_pictures until notified by gdmlogin. > > Actually it's not normal since the daemon didn't get to the Username query. > It is stuck asking the greeter if it needs pictures and has likely not heard > a response. Since the greeter doesn't have the face browser enabled, it > would just answer those queries with a no and would let the daemon to go on. > So there is some problem on the comm side of things. > > > The problem appears to be in the communication between gdmlogin and the > > master gdm slave or in the transfer of control between gdmlogin and > > gdmaskpass, but I am not sure about what is really supposed to happen. > > If you put gdb on the gdmlogin process at the point where it hangs, it > > is stuck permanently in _thread_sys_poll, essentially signifying > > nothing. > > Well the login seems to be in main loop, thus it's in the poll call. However > it seems that it has not received anything from the daemon yet. > > > I have no idea how to tell if gdmlogin is actually running multiple > > threads or not or what another thread id within gdmlogin might yeild > > better results than the one you get by attaching gdb. > > There are no other threads. > > > In any case, your conversation with viscious below is less than useful > > because neither he nor you really understood what is happening to gdm. > > Yes, I have no clue what is happening. I'm thinking it is the io channel > code. Perhaps the gdmlogin side is not properly setting up the channel and > is not receiving events that something has been put onto the channel. > Perhaps the same on the daemon side. > > > When I build and install gdm2 under X while gdm1 is running, then > > logout, it comes up with the new greeter and allows me to login. > > This is because the protocol has not changed between late 2.2.5.x series > and the 2.4.0.x releases. > > > However, if I actually logout, go to a console vty and then kill the > > master gdm process, when the new greeter appears I cannot login. > > This would then seem to indicate that the error is on the daemon side since > the greeter will work with an old daemon. The IO channel stuff in gdlib has > changed between 1.x and 2.0 so I think this is where the error lies. I'm unable to reproduce this in my setup. I have tried with and without the face browser enabled, but never from /etc/ttys (i.e. I always start it from an rc script). I would be willing to work with you, George, to try and fix this if you're interested. I saw you committed the NULL channel encoding fix, so that may or may not have an effect (somehow, I don't think it will help). Let me know if you have some cycles, and want to work on a resolution. Thanks. Joe > > George > > -- > George > What luck for the rulers that men do not think. > -- Adolf Hitler > > To Unsubscribe: send mail to majordomo@FreeBSD.org > with "unsubscribe freebsd-gnome" in the body of the message > To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-gnome" in the body of the message