Mark Purcell wrote:
> On Tuesday 21 October 2008 20:55:24 ishikawa wrote:
>> Severity: serious
>> Justification: 2
>>
>> (I am afraid I screwed up the Severity and Justification code. Please
>> feel free to modify them.)
> 
> ishikawa,
> 
> Did you indeed intend to set severity to serious?  We are now tracking this 
> on 
> the release critical bugs for lenny.

Dear Mark Purcell,

Please feel free to change this to a lesser Severity/Justification code
which makes this to a normal bug (that affects users of this package.
And that this package is unusable and hard to find the cause if a
misconfiguration causes a double invocation of kinput2-wnn, it seems.
Read on.)

This was the first time in years that I used
bug reporting program and I screwed up and didn't know how to
go back and fix.

> 
>> When I was using kinput2-wnn from ice-weasel, kinput2-wnn crashed.
> 
> Can you tell us a little more about what you were doing at the time, is it 
> repeatable, does it make kinput2-wnn unusable, or does it just happen on an 
> occasional basis?

This is repeatable.

Each time input is attmpted using kinput2-wnn to ice-weasel input field
such as Google search bar, ice-weasel crashed.

However, I found out later that this seemed to be
caused a particular combination of environment.

 - Note there is a bug report that mentions that this daemon-like
    service, kinput2-wnn,
   for Japanese input can be invoked multiple times, but this should not
   be done. So a locking is desired to prevent the second invocation to
   fail.

 - Indeed, in my case, I was invoking this program from my own x11
   session initialization
   script (which worked fine on my home PC. I will come back to this
   later in this e-mail.) as well as the automatic
   invocation done by a script under /etc/X11/ which obviously
   is done by gdm.
   As a result, there are multiple instances of kinput2-wnn running.
        
   One from the gdm-initiated xinit.d/ script, and the other
   one from my own startup routine that I invoke immediately
   after X starts up.

   This multiple invocation is obviously a culprit.

   When I removed one of the instances (by kill PID),
   ice-weasel no longer crashed when I attemped Japanese input.
   (Japanese input is usually initiated by hitting SHIFT+SPACE.
   This key combination can be changed by .Xresource file, or something.)

   But for confirmation purpose,
  if I invoke another kinput2-wnn instance again from an terminal window
   in the same X session, again ice-weasel began crashing when I try
   to input Japanese by hitting SHIFT+SPACE.

   So I am fairly certain that the multiple invocations cause
   this problem and this was repeatable on my PC.


   CAUTION: This crashing may be highly-dependent on
   the particular version of ice-weasel or firefox browser, and input
   libraries.

   Now, this multiple invocation would have been
   prevented, had this locking feature suggested by
   another bug report had been implemented
   to prevent the second and
   subsequent invocation from succeeding.
   This is in one of the bug report of kinput2-wnn.
   There seem to be some kind of race (?).

   Then one may wonder this bug reporter (me) mentions that
   a similar script is used on a different PC where it doesn't seem
   to cause a problem. Why? Actually I wondered why loudly.

   I found out on the PC where this problem had not been observed for a
   while, there *ARE* instances of kinput2-wnn programs running.
   However, on that PC, I am using a commercial wnn6 version of library
   as opposed to wnn4 (in Free Wnn4 support).

   This may explain the absence of errors on that computer.
   Maybe the library has a proper handling of races caused by
   the multiple instances of the same program.
   (For that matter, the Japanese server daemon that uses
    dictionary, namely jserver, is also a commercial version
    on that computer. So this may also explain the absence
    of the problem on that computer.)

  cf. The following is the status on the other PC that runs Debian
      distribution, where the problem was not observed for quite a
      while.


[EMAIL PROTECTED]
ps -aef | grep kinput; which kinput2; ls -l /usr/bin/kinput2; ls -l
/etc/alternatives/kinput2; ldd /usr/bin/kinput2-wnn
ishikawa  4088  3896  0 Oct31 ?        00:00:00 /usr/bin/kinput2-wnn -xim
ishikawa  4272     1  0 Oct31 pts/0    00:00:00 sh -vx
/home/ishikawa/kinput2.sh
ishikawa  4278  4272  0 Oct31 pts/0    00:00:00 kinput2 -jserver
localhost -wnn -wnnenvrc6 /usr/local/lib/wnn6/ja_JP/wnnenvrc
ishikawa 10948  4223  0 00:46 pts/0    00:00:00 grep kinput

Note that there are two instances:
kinput2 and kinput2-wnn. They are actually the same.

ls -l /usr/bin/kinput2
lrwxrwxrwx 1 root root 25 2008-04-22 23:31 /usr/bin/kinput2 ->
/etc/alternatives/kinput2*

ls -l /etc/alternatives/kinput2
lrwxrwxrwx 1 root root 20 2008-04-22 23:31 /etc/alternatives/kinput2 ->
/usr/bin/kinput2-wnn*

So /usr/bin/kinput2-wnn and /usr/bin/kinput2 are actually the same program.


Library used:
ldd /usr/bin/kinput2-wnn
        linux-gate.so.1 =>  (0xffffe000)
        libwnn6.so.1 => /usr/lib/libwnn6.so.1 (0xb7ec8000)

             This above library is from the commercial version of Wnn
             input server.
             I suspect that this one has a proper locking that prevents
             the kind of problems that were observed on my other PC
             where wnn4 support library was available.

        libcrypt.so.1 => /lib/i686/cmov/libcrypt.so.1 (0xb7e96000)
        libXaw.so.7 => /usr/lib/libXaw.so.7 (0xb7e3b000)
        libXmu.so.6 => /usr/lib/libXmu.so.6 (0xb7e26000)
        libXt.so.6 => /usr/lib/libXt.so.6 (0xb7dd6000)
        libSM.so.6 => /usr/lib/libSM.so.6 (0xb7dce000)
        libICE.so.6 => /usr/lib/libICE.so.6 (0xb7db7000)
        libXpm.so.4 => /usr/lib/libXpm.so.4 (0xb7da7000)
        libXext.so.6 => /usr/lib/libXext.so.6 (0xb7d98000)
        libX11.so.6 => /usr/lib/libX11.so.6 (0xb7ca9000)
        libc.so.6 => /lib/i686/cmov/libc.so.6 (0xb7b4e000)
        libXau.so.6 => /usr/lib/libXau.so.6 (0xb7b4b000)
        libxcb-xlib.so.0 => /usr/lib/libxcb-xlib.so.0 (0xb7b49000)
        libxcb.so.1 => /usr/lib/libxcb.so.1 (0xb7b30000)
        libdl.so.2 => /lib/i686/cmov/libdl.so.2 (0xb7b2c000)
        /lib/ld-linux.so.2 (0xb7f32000)
        libXdmcp.so.6 => /usr/lib/libXdmcp.so.6 (0xb7b27000)
[EMAIL PROTECTED]

> Keita, I see that you haven't uploaded a version of this package since 2006 
> and that was a few debconf translations.
> 
> Are you in a position to review your package against this bug report?
> 
> Mark
> 

Thank you again for your follow-up despite my errorneous code given my
initial mistake.

I will try to re-create test conditions on my different PCs.
Today is Friday evening, but unfortunately, coming Monday is
a national holiday in Japan, and the particular PC where the
crashing behavior was observed is the in the locked office. Until
Tuesday, I can't touch it.

In the meantime, I can create test conditions on a home PC which
uses a commercial wnn6 support library and so can produce a comparative
report if necessary (albeit the lack of the other side that uses free
wnn4 support library. That has to wait until Next Tuesday.)

TIA

Chiaki Ishikawa





-- 
int main(void){int j=2008;/*(c)2008 cishikawa. */
char t[] ="<CI> @abcdefghijklmnopqrstuvwxyz.,\n\"";
char *i ="b>qtCIuqivb,[EMAIL PROTECTED]"tqkvv is>dnamz";
while(*i)((j+=(int)strchr(t,*i++)-(int)t),(j%=sizeof t-1),
(putchar(t[j])));return 0;}/* under GPL */


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to