Date: Sun, 1 Apr 2007 16:51:08 +0100 (BST) From: Robert Watson <rwatson@FreeBSD.org> To: Julian Elischer <julian@FreeBSD.org> Cc: cvs-src@FreeBSD.org, src-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: Re: cvs commit: src/sys/compat/linux linux_file.c linux_util.h src/sys/i386/linux linux.h linux_dummy.c linux_proto.h linux_syscall.h linux_sysent.c syscalls.master src/sys/amd64/linux32 linux.h linux32_dummy.c linux32_proto.h ... Message-ID: <20070401165018.I18301@fledge.watson.org> In-Reply-To: <20070401104935.C75869@fledge.watson.org> References: <200703290211.l2T2BlHv081735@repoman.freebsd.org> <20070401104935.C75869@fledge.watson.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Sun, 1 Apr 2007, Robert Watson wrote: > On Thu, 29 Mar 2007, Julian Elischer wrote: > >> julian 2007-03-29 02:11:46 UTC >> >> FreeBSD src repository >> >> Modified files: >> sys/compat/linux linux_file.c linux_util.h >> sys/i386/linux linux.h linux_dummy.c linux_proto.h >> linux_syscall.h linux_sysent.c >> syscalls.master >> sys/amd64/linux32 linux.h linux32_dummy.c linux32_proto.h >> linux32_syscall.h linux32_sysent.c >> syscalls.master >> Log: >> Implement the openat() linux syscall >> Submitted by: Roman Divacky (rdivacky@) >> MFC after: 2 weeks > > The locking and reference counting in this patch is highly dubious; also, > vn_fullpath() should really not be used this way, as it fails whenever > vnodes fall out of the name cache or a file system doesn't use the namecache > (i.e., it is purely advisory). If we're going to do openat() in the Linux > emulation layer, let's instead implement it properly in the FreeBSD system > call code as a first class service and then wrap it the way we wrap other > system calls. Please do not MFC this patch as-is. Looking at the code again, there's another serious bug in it: linux_at() fails to validate that the passed file descriptor is actually a vnode file descriptor type before dereferencing its f_vnode field and treating it as a vnode. Robert N M Watson Computer Laboratory University of Cambridge
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20070401165018.I18301>