[Pkg-kde-extras] Bug#406470: not reproducible here

Alexander Klauer aklauer at rumms.uni-mannheim.de
Tue Feb 27 09:46:45 UTC 2007


Hi Thomas,


(no reply-to was set; do you need CC:'s in the future?)

Thomas Braun:
> > > - Do you have this behjavour always (or only after a start and stop
> > > cycle of kile)?
> >
> > What do you mean by "start and stop cycle"? Anyway, when I check the
> > option, kile immediately starts hogging, when I uncheck it, kile
> > immediately behaves normally again.
>
> With start stop cycle I meant, quitting kile and then restarting kile.

I see. Nope, a start-stop cycle is not required.

> > > - Do you have your home on a local device, or some remote stuff (nfs,
> > > openafs, smb, or similiar)
> >
> > The home dirs are in OpenAFS.
>
> I think we found the culprit :)
>
> Kile is using a fifo to be able to insert tags from lyx-compliant apps
> (This means e.g. gbib writes a bibtex reference to .lyxpipe.in and then
> kile gets notified and inserts the reference).
> But according to
> http://www.dementia.org/twiki/bin/view/AFSLore/UsageFAQ#2_13_Can_I_create_a
>_fifo_aka_nam Fifos are not supported by OpenAFS :(
>
> Currently I don't know a solution but I will ask some other kile devs for
> help.

Well, that explains things. If I may make two suggestions:

1. Kile tries to create a FIFO and when this fails, it creates a regular file 
instead:

[pid  4968] 09:58:11.419907 mknod("/afs/.../home/xxx/.lyxpipe.in", S_IFIFO|
0644) = -1 EPERM (Operation not permitted)
[pid  4968] 09:58:11.419981 dup(2)      = 13
[pid  4968] 09:58:11.420047 fcntl64(13, F_GETFL) = 0x8001 (flags O_WRONLY|
O_LARGEFILE)
[pid  4968] 09:58:11.420102 close(13)   = 0
[pid  4968] 09:58:11.420138 write(2, "Could not create pipe : Operatio"..., 
48Could not create pipe : Operation not permitted) = 48
[pid  4968] 09:58:11.420257 open("/afs/.../home/xxx/.lyxpipe.in", O_RDWR|
O_LARGEFILE) = -1 ENOENT (No such file or directory)
[pid  4968] 09:58:11.420326 open("/afs/.../home/xxx/.lyxpipe.in", O_RDWR|
O_CREAT|O_TRUNC|O_LARGEFILE, 0666) = 13

The regular file messes up the usual select/pipe semantics. It would be better 
(as a short term solution) to show the user a clean error message instead, 
something like "Sorry, but this functionality is unavailable because the file 
system of your home directory does not support FIFOs."

2. (long-term solution) Place the FIFO somewhere where they are supported for 
sure, e.g. in /tmp/kde-username/.


Thank you,
Alexander




More information about the pkg-kde-extras mailing list