Skip site navigation (1)Skip section navigation (2)
Date:      11 Jul 2002 12:34:23 -0400
From:      Joe Marcus Clarke <marcus@FreeBSD.org>
To:        George <jirka@5z.com>
Cc:        Joe Kelsey <joe@zircon.seattle.wa.us>, ezislis <kesor@mail.ru>, gnome@FreeBSD.org
Subject:   Re: GDM 2.4.0.x & FreeBSD
Message-ID:  <1026405263.357.87.camel@gyros.marcuscom.com>
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>

next in thread | previous in thread | raw e-mail | index | archive | help
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 <jirka@5z.com>
>    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




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1026405263.357.87.camel>