From owner-freebsd-current@FreeBSD.ORG Sun Jun 14 15:30:46 2009 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id D1447106566C for ; Sun, 14 Jun 2009 15:30:46 +0000 (UTC) (envelope-from a_best01@uni-muenster.de) Received: from zivm-out1.uni-muenster.de (ZIVM-OUT1.UNI-MUENSTER.DE [128.176.192.8]) by mx1.freebsd.org (Postfix) with ESMTP id 64ADE8FC2A for ; Sun, 14 Jun 2009 15:30:45 +0000 (UTC) (envelope-from a_best01@uni-muenster.de) X-IronPort-AV: E=Sophos;i="4.42,218,1243807200"; d="scan'208";a="274472288" Received: from zivmaildisp2.uni-muenster.de (HELO ZIVMAILUSER03.UNI-MUENSTER.DE) ([128.176.188.143]) by zivm-relay1.uni-muenster.de with ESMTP; 14 Jun 2009 17:30:45 +0200 Received: by ZIVMAILUSER03.UNI-MUENSTER.DE (Postfix, from userid 149459) id 466631B075E; Sun, 14 Jun 2009 17:30:45 +0200 (CEST) Date: Sun, 14 Jun 2009 17:30:44 +0200 (CEST) From: Alexander Best Sender: Organization: Westfaelische Wilhelms-Universitaet Muenster To: Chagin Dmitry Message-ID: In-Reply-To: <20090614151717.GA26276@dchagin.static.corbina.ru> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Cc: freebsd-current@freebsd.org Subject: Re: linux syscall get_robust_list causes panic X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 14 Jun 2009 15:30:47 -0000 wow. thanks for the fix. after applying the patch the panic no longer occurs. great job! :-) hope this'll make it into CURRENT quickly. ;) cheers. Chagin Dmitry schrieb am 2009-06-14: > On Sun, Jun 14, 2009 at 04:27:45PM +0200, Alexander Best wrote: > > hi there, > > i tried to run the latest release (20090531) of the linux test > > project (ltp) > > with emulators/linux_dist-gentoo-stage3. however the kernel panics > > after ltp's > > get_robust_list(2) test. set_robust_list(2) passes without any > > problems. > > i've attached a screenshot of the panic and the source which is > > causing the > > panic. you won't be able to compile it without ltp however. after > > installing > > and compiling ltp the source and the executable can be found in > > "/usr/local/gentoo-stage3/ltp-full-20090531/testcases/kernel/syscalls/get_robust_list". > > simply running the > > "/usr/local/gentoo-stage3/ltp-full-20090531/testcases/kernel/syscalls/get_robust_list/get_robust_list01" > > executable results in a panic. > > unfortunately i cannot supply a complete bt, because i only own a > > usb keyboard > > which doesn't respond after the panic. actually i'm a bit surprised > > the > > debugger was started, because i have "KDB_UNATTENDED" in my kernel > > conf. any > > reason the machine doesn't reboot and save the dump to > > /var/crash/vmcore.*? > please, try inlined patch. > diff --git a/sys/compat/linux/linux_futex.c > b/sys/compat/linux/linux_futex.c > index cb04cd8..0f781fc 100644 > --- a/sys/compat/linux/linux_futex.c > +++ b/sys/compat/linux/linux_futex.c > @@ -707,8 +707,10 @@ linux_get_robust_list(struct thread *td, struct > linux_get_robust_list_args *args > /* XXX: ptrace? */ > if (priv_check(td, PRIV_CRED_SETUID) || > priv_check(td, PRIV_CRED_SETEUID) || > - p_candebug(td, p)) > + p_candebug(td, p)) { > + PROC_UNLOCK(p); > return (EPERM); > + } > head = em->robust_futexes; > PROC_UNLOCK(p);