From owner-freebsd-emulation Wed Dec 12 5:22:30 2001 Delivered-To: freebsd-emulation@freebsd.org Received: from atlantis.homeip.net (a30032.upc-a.chello.nl [62.163.30.32]) by hub.freebsd.org (Postfix) with SMTP id BEDC837B419 for ; Wed, 12 Dec 2001 05:22:23 -0800 (PST) Received: (qmail 9598 invoked from network); 12 Dec 2001 13:22:22 -0000 Received: from temp.ourhome.nl (HELO jeremy.ourhome.nl) (192.168.1.20) by atlantis.ourhome.nl with SMTP; 12 Dec 2001 13:22:22 -0000 Date: Wed, 12 Dec 2001 14:21:54 +0100 From: Willem van Engen To: "Andrew Gallatin" Cc: freebsd-emulation@freebsd.org Subject: Re: flexlm: works with linux_base-6, fails with linux_base-7 Message-Id: <20011212142154.2fcf4740.wvengen@stack.nl> In-Reply-To: <15382.23861.710621.118157@grasshopper.cs.duke.edu> References: <20011210115204.6ddde325.wvengen@stack.nl> <15382.5752.295875.987980@grasshopper.cs.duke.edu> <20011211184131.0425b1fd.wvengen@stack.nl> <15382.23861.710621.118157@grasshopper.cs.duke.edu> X-Mailer: Sylpheed version 0.6.5 (GTK+ 1.2.10; i386--freebsd4.4) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-freebsd-emulation@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.org On Tue, 11 Dec 2001 14:23:33 -0500 (EST) "Andrew Gallatin" wrote: > > Willem van Engen writes: > > > So this is a fcntl64(fd, F_SETLK, {0,0,0,F_WRLCK,SEEK_CUR}). > > When I look at it with linux_base-6, the same arguments are used. > > At the moment I have no clue. > > I don't see anything obvious either. Are you sure that the > bsd_flock contains the same thing in the linux_base-6 case? Acutally no, there is a difference. I got lost in printf %[l][l]x stuff. linux_base-7: linux(2810): fcntl64(4, 00000006, *) > fcntl_bsd(4, F_SETLK, flock) > bsd.l_start = 0, lin.l_start = 0 > bsd.l_len = bfbff15000000000, lin.l_len = bfbff15000000000 > bsd.l_pid= 280cbc80, lin.l_pid = 280cbc80 > bsd.l_type= 3, lin.l_type = 1 > bsd.l_whence= 1, lin.l_whence = 1 linux_base-6: linux(2801): fcntl(4, 00000006, *) > fcntl_bsd(4, F_SETLK, flock) > bsd.l_start = 0, lin.l_start = 0 > bsd.l_len = 0, lin.l_len = 0 > bsd.l_pid= 0, lin.l_pid = 0 > bsd.l_type= 3, lin.l_type = 1 > bsd.l_whence= 1, lin.l_whence = 1 > If so, there might be some other difference that's causing the > fnctl to fail. > > The next thing I'd do is to set a ddb breakpoint in linux_fcntl64 & > step through its call to fcntl(). Or just instrument the F_SETLK path > of fcntl, but that mgith lead to too many printfs. I did some kernel debugging, and iirc the error 22 occured in /sys/kern/kern_descrip.c line 324 at VOP_ADVLOCK. But I'm not entirely sure and currently I have problems with symbols tables and remote kgdb, so I can't check it now. Anyway, if you see anything, great, but it's getting time-consuming so I'll investigate it further at a later time. Thanks for your help so far :) - Willem > > Cheers, > > Drew To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-emulation" in the body of the message