From owner-freebsd-emulation@FreeBSD.ORG Tue Jan 22 12:35:19 2008 Return-Path: Delivered-To: freebsd-emulation@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id B00FB16A420 for ; Tue, 22 Jan 2008 12:35:19 +0000 (UTC) (envelope-from nm@web.am) Received: from mx1.web.am (mx1.web.am [217.113.0.68]) by mx1.freebsd.org (Postfix) with ESMTP id D744F13C4DD for ; Tue, 22 Jan 2008 12:35:18 +0000 (UTC) (envelope-from nm@web.am) Received: from localhost (localhost.web.am [127.0.0.1]) by localhost (Postfix) with SMTP id 1E7FF61D2F; Tue, 22 Jan 2008 16:34:56 +0400 (AMT) Received: from aldan.web.am (unknown [217.113.20.82]) by mx1.web.am (Postfix) with ESMTP id 91A3B61D3C; Tue, 22 Jan 2008 16:34:55 +0400 (AMT) Message-ID: <4795E304.3000209@web.am> Date: Tue, 22 Jan 2008 16:35:16 +0400 From: Gaspar Chilingarov User-Agent: Thunderbird 2.0.0.9 (X11/20080116) MIME-Version: 1.0 To: Boris Samorodov References: <61386061@bb.ipt.ru> <4795CF12.5010003@web.am> <64902368@bb.ipt.ru> In-Reply-To: <64902368@bb.ipt.ru> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: Alexander@Leidinger.net, freebsd-emulation@freebsd.org Subject: Re: ports/119880: emulators/linux_base-f7 - [linux] OpenOffice 2.x fails after portupgrade with "error writing file" X-BeenThere: freebsd-emulation@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Development of Emulators of other operating systems List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Jan 2008 12:35:19 -0000 Boris Samorodov wrote: > (CCing Alexander Leidinger) > > On Tue, 22 Jan 2008 15:10:10 +0400 Gaspar Chilingarov wrote: >> Boris Samorodov wrote: >>> The port itself doesn't install LINUXBASE/tmp (it is removed before >>> install). Take a look at the Makefile: >>> ----- >>> ... >>> REMOVE_DIRS= boot dev home initrd root tmp var/log var/run var/tmp >>> ... >>> ----- >>> >>> Seems that you have a stale directory. Please check it up. > >> I got the source of the problem. > >> If you run OpenOffice using root account, > > I never use user applications using root account. I know about this, and I do not use them too. Anyway, there may be another linux app, which behaves in the same way and which should be run under root. > >> it creates /compat/linux/tmp >> with illegal permissions. > > I'd say that this is an openoffice bug (unless it behaves so only > under linuxulator but not native linux)... It won't behave so under linux, because mkdir will report error creating direcory, which really exists. > >> Shouldn't linuxolator report to linux applications that /tmp exists, >> even if we have no /compat/linux/tmp, but have /tmp ? This is a trace >> of opeoffice calls > >> 42087 soffice.bin CALL close(0xc) >> 42087 soffice.bin RET close 0 >> 42087 soffice.bin CALL linux_mkdir(0xffffc5fc,0x1ff) >> 42087 soffice.bin NAMI "/compat/linux" >> 42087 soffice.bin NAMI "/compat/linux/tmp" >> 42087 soffice.bin RET linux_mkdir 0 >> 42087 soffice.bin CALL umask(0x3f) >> 42087 soffice.bin RET umask 18/0x12 >> 42087 soffice.bin CALL linux_open(0xffffc4e4,0x18800,0xffffc4e8) >> 42087 soffice.bin NAMI "/compat/linux/tmp" >> 42087 soffice.bin NAMI "/compat/linux" >> 42087 soffice.bin NAMI "/compat/linux/tmp" >> 42087 soffice.bin RET linux_open 12/0xc >> 42087 soffice.bin CALL linux_fstat64(0xc,0xffffc468,0x2935fff4) >> 42087 soffice.bin RET linux_fstat64 0 >> 42087 soffice.bin CALL linux_fcntl64(0xc,0x2,0x1) >> 42087 soffice.bin RET linux_fcntl64 0 >> 42087 soffice.bin CALL umask(0x12) >> 42087 soffice.bin RET umask 63/0x3f >> 42087 soffice.bin CALL close(0xc) >> 42087 soffice.bin RET close 0 >> 42087 soffice.bin CALL gettimeofday(0xffffd4ec,0) >> 42087 soffice.bin RET gettimeofday 0 >> 42087 soffice.bin CALL linux_mkdir(0xffffc4ec,0x1ff) >> 42087 soffice.bin NAMI "/compat/linux/tmp" >> 42087 soffice.bin NAMI "/compat/linux/tmp/sv248.tmp" >> 42087 soffice.bin RET linux_mkdir 0 >> 42087 soffice.bin CALL linux_mkdir(0xffffbd30,0x1ff) > >> As you can see, mkdir does not check, that fallback directory exists, >> but creates one under /compat/linux .... is it right? > > ...the bug is not to check for the directory existence. > BTW, what version do you use? both OO 2.0 and 2.3 behave in the same way. >> compat.linux.osrelease: 2.4.20 > > And this is not a default/supported value. I don't think it should > change something here though. > I run skype on FreeBSD and /usr/ports/updating file points that 20071101: AFFECTS: users of net/skype-devel AUTHOR: beech@FreeBSD.org The skype-devel port has been upgraded to version 1.4.0.118. This requires a sysctl change to run. After upgrading, please do: "sysctl compat.linux.osrelease=2.4.20" from a terminal. Also add: "compat.linux.osrelease=2.4.20" to your /etc/sysctl.conf to make this change at boot time. > While linux_base port is installed we create a link only for > LINUXBASE/usr/tmp. That is because a corresponding directory > does not exist at FreeBSD. I see. Well, anyway, may be it makes sense to close this bug report. It got documented on the net and some one with similar errors will find it easily on the net :) because solution is as simple as remove /compat/linux/tmp it's enougth I think. PS. I'll nag OO developers a little with this issue -- may be it will be fixed. Thank you all, Gaspar -- Gaspar Chilingarov System Administrator, Network security consulting t +37493 419763 (mob) i 63174784 e nm@web.am w http://gasparchilingarov.com/