From owner-freebsd-bugs@FreeBSD.ORG Mon May 25 08:54:34 2015 Return-Path: Delivered-To: freebsd-bugs@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id C25EAB85 for ; Mon, 25 May 2015 08:54:34 +0000 (UTC) (envelope-from bugzilla-noreply@freebsd.org) Received: from kenobi.freebsd.org (kenobi.freebsd.org [IPv6:2001:1900:2254:206a::16:76]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 922DF1B2 for ; Mon, 25 May 2015 08:54:34 +0000 (UTC) (envelope-from bugzilla-noreply@freebsd.org) Received: from bugs.freebsd.org ([127.0.1.118]) by kenobi.freebsd.org (8.14.9/8.14.9) with ESMTP id t4P8sYOb074125 for ; Mon, 25 May 2015 08:54:34 GMT (envelope-from bugzilla-noreply@freebsd.org) From: bugzilla-noreply@freebsd.org To: freebsd-bugs@FreeBSD.org Subject: [Bug 200439] Executing 32 bit binary under 10.1/amd64 Date: Mon, 25 May 2015 08:54:34 +0000 X-Bugzilla-Reason: AssignedTo X-Bugzilla-Type: new X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: Base System X-Bugzilla-Component: kern X-Bugzilla-Version: 10.1-RELEASE X-Bugzilla-Keywords: X-Bugzilla-Severity: Affects Many People X-Bugzilla-Who: freebsd@natsoft.com.au X-Bugzilla-Status: New X-Bugzilla-Priority: --- X-Bugzilla-Assigned-To: freebsd-bugs@FreeBSD.org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: bug_id short_desc product version rep_platform op_sys bug_status bug_severity priority component assigned_to reporter Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-Bugzilla-URL: https://bugs.freebsd.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 25 May 2015 08:54:34 -0000 https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=200439 Bug ID: 200439 Summary: Executing 32 bit binary under 10.1/amd64 Product: Base System Version: 10.1-RELEASE Hardware: amd64 OS: Any Status: New Severity: Affects Many People Priority: --- Component: kern Assignee: freebsd-bugs@FreeBSD.org Reporter: freebsd@natsoft.com.au The fcntl call in the following code will produce an error#14 if it is compiled static under 32 bit FreeBSD and executed on FreeBSD 10.1 amd64 ie "Could not lock TestLock.TXT Error:14" This code does not produce an error when run under FreeBSD 10.0 amd64 It does not produce an error if run under FreeBSD 10.1 i386 It does not product an error if compiled 64 bit and run under FreeBSD 10.1 amd64 I used FreeBSD 7.0 to compile the code with the following command: cc testlock.c -otestlock -static If I move the "struct flock oLock" out of the function and make it global by placing immediately prior to main after the stdio.h include the code works in all instances. There must be an issue with running i386 code when the struct is defined inside the function. All is ok when the struct is defined globally outside of the function. #include #include #include #include #include #include int main(int iArgv, char** cpArgc) { struct flock oLock; int iFile; iFile = open("TestLock.TXT",O_CREAT|O_RDWR,0666); if (iFile <= 0) { printf("Could not open TestLock.TXT Error:%d\r\n",errno); return 0; } oLock.l_type = F_WRLCK; oLock.l_whence = SEEK_SET; oLock.l_start = 0; oLock.l_len = 1; if (fcntl(iFile,F_SETLK,&oLock) < 0) { printf("Could not lock TestLock.TXT Error:%d\r\n",errno); return 0; } close(iFile); return 0; } -- You are receiving this mail because: You are the assignee for the bug.