Re: HEADS UP: UNIX domain socket locking changes merged to CVS HEAD

From: Yoshihiro Ota <ota_at_j.email.ne.jp>
Date: Sun, 4 Mar 2007 01:05:53 -0500
On Sat, 3 Mar 2007 22:21:16 +0000 (GMT)
Robert Watson <rwatson_at_FreeBSD.org> wrote:

> 
> On Fri, 2 Mar 2007, Yoshihiro Ota wrote:
> 
> > My X runs fine but I think I am still seeing this problem with diffrent 
> > ports.
> >
> > They are japanese/Canna japanese/kinput2-canna.
> >
> > Canna uses "unix" domain socket to communicate and it still doesn't work. 
> > Before, Canna reproted some "unix" domain socket error.  Now, it doesn't 
> > report such errors but "kinput2" stucks.
> >
> > Installing kinput2-cann will install Canna as well. You will need these 2 
> > entries to run Canna.
> >
> > canna_enable="YES" canna_flags="-u bin inet"
> >
> > Then, you need the following to allow to use kinput from X terminals.
> >
> > setenv XMODIFIERS '_at_im=kinput
> >
> > Once you start canna, run "kinput2" in one of the X terminals.  Then, 
> > kinput2 eats all CPU.
> 
> Could you confirm that if you run the code precisely before the commits in 
> question (i.e., back out to uipc_usrreq.c:1.196 and unpcb.h:1.22) the problem 
> goes away completely?  If so, could you try running ktrace on kinput2 and see 
> if it's looping around any particular syscalls and getting an error 
> repeatedly?  It could be that an error is now (possibly incorrectly) being 
> returned and that kinput2 is not handling that well.
> 
> Robert N M Watson

I changed to uipc_usrreq.c 1.199 to 1.196 and I already had unpcb.h 1.11.  After rebooting, the problem still remains.

The below is what I got from ktrace/kdump run on uipc_usrreq.c_at_1.199.  I think I started seeing this problem on last Sat. or Sun day.

It seems that when I kill kinput2, canna dies together so that when I see like this:

$ sh /usr/local/etc/rc.d/canna.sh stop
Cannot connect with cannaserver "unix".

% ktrace -f ktrace.out 

  1274 kinput2  RET   poll 1
  1274 kinput2  CALL  poll(0x88450fb0,0x2,0)
  1274 kinput2  RET   poll 1
  1274 kinput2  CALL  poll(0x88450fb0,0x2,0)
  1274 kinput2  RET   poll 1

%grep poll ktrace.txt | wc
  621264 2795688 22986795
Received on Sun Mar 04 2007 - 05:06:46 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:06 UTC