From owner-freebsd-hackers@FreeBSD.ORG Mon Jun 21 00:25:29 2010 Return-Path: Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id EEED8106564A; Mon, 21 Jun 2010 00:25:28 +0000 (UTC) (envelope-from yanefbsd@gmail.com) Received: from mail-vw0-f54.google.com (mail-vw0-f54.google.com [209.85.212.54]) by mx1.freebsd.org (Postfix) with ESMTP id 736E88FC0C; Mon, 21 Jun 2010 00:25:28 +0000 (UTC) Received: by vws1 with SMTP id 1so206397vws.13 for ; Sun, 20 Jun 2010 17:25:27 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:received:in-reply-to :references:date:message-id:subject:from:to:cc:content-type :content-transfer-encoding; bh=LkRkTEiIH0iV/SpcgTve2+Emc0r1FuOx0k6++Cj81Jg=; b=IUb3+7FTLbFA4aGJhL1kyLIwklOmT8SchMsAeKkFMMIqjWArLsRLfwVV7reWh4IEMB ZuSNu3L15kAKQhOyhlCAE+2RzHDKcGpIlspEV7lrwfAdNUz2YI+4vh26dzBvsNVbd8vJ lUZDZxG4GTHPxkQdGo6vMLVXRSlCplelF1EcI= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type:content-transfer-encoding; b=SVM39me2GwGJFe6DWE4q/sA9YQboEPPMSk6vlusSUJskyBKL6bksSUs1m6CocsHRRu R0Igs5vli/+GDngyeTH4ynMeJJKk5CiZKunmWlxoosDBPQ3N2VGqSKNxauzibd8/MCI1 aTFDkn9yZh8EdK5Lc4dJjWDl6vLh8moxRbrMw= MIME-Version: 1.0 Received: by 10.229.248.129 with SMTP id mg1mr2043269qcb.137.1277079927500; Sun, 20 Jun 2010 17:25:27 -0700 (PDT) Received: by 10.229.80.75 with HTTP; Sun, 20 Jun 2010 17:25:27 -0700 (PDT) In-Reply-To: References: Date: Sun, 20 Jun 2010 17:25:27 -0700 Message-ID: From: Garrett Cooper To: Andrew Thompson Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Cc: Stathis Kamperis , standards@freebsd.org, FreeBSD-Hackers Subject: Re: Are POSIX mqueues supposed to be functional on FreeBSD? X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Jun 2010 00:25:29 -0000 On Sun, Jun 20, 2010 at 4:41 PM, Andrew Thompson wrot= e: > On 21 June 2010 10:11, Garrett Cooper wrote: >> On Sun, Jun 20, 2010 at 3:06 PM, Stathis Kamperis w= rote: >>> 2010/6/21 Garrett Cooper : >>>> =A0 =A0Err... I ran an mqueue test and it popped up with ENOSYS. Which >>>> makes me wonder, are POSIX mqueues implemented 100% on FreeBSD? I >>>> looked into sys/kern/uip_mqueue.c and it _appears_ functional, but I >>> >>> Hi, >>> >>> did you first load the respective kernel module (mqueuefs or something >>> like that) ? >> >> Duh... should have checked that first I suppose: no, it isn't loaded. >> However, it doesn't appear to compile with my copy of src: >> >> # make -C /sys/modules/mqueue/ all install >> Warning: Object directory not changed from original /usr/src/sys/modules= /mqueue >> cc -O2 -pipe -fno-strict-aliasing -pipe -O2 -march=3Dnocona -Werror >> -D_KERNEL -DKLD_MODULE -nostdinc =A0 -I. -I@ -I@/contrib/altq >> -finline-limit=3D8000 --param inline-unit-growth=3D100 --param >> large-function-growth=3D1000 -fno-common =A0-fno-omit-frame-pointer >> -mcmodel=3Dkernel -mno-red-zone =A0-mfpmath=3D387 -mno-sse -mno-sse2 >> -mno-sse3 -mno-mmx -mno-3dnow =A0-msoft-float >> -fno-asynchronous-unwind-tables -ffreestanding -fstack-protector >> -std=3Diso9899:1999 -fstack-protector -Wall -Wredundant-decls >> -Wnested-externs -Wstrict-prototypes =A0-Wmissing-prototypes >> -Wpointer-arith -Winline -Wcast-qual =A0-Wundef -Wno-pointer-sign >> -fformat-extensions -c >> /usr/src/sys/modules/mqueue/../../kern/uipc_mqueue.c >> /usr/src/sys/modules/mqueue/../../kern/uipc_mqueue.c:48:24: error: >> opt_compat.h: No such file or directory >> *** Error code 1 >> >> Stop in /usr/src/sys/modules/mqueue. >> # find /usr/src/ -name opt_compat.h >> >> So I'll need to hunt down what's going on with the missing header. > > opt_* headers are auto-generated by the kernel config. Just add > opt_compat.h to sys/modules/mqueue/Makefile right after opt_posix.h I did some reading and opt_compat is generated by options COMPAT_* in KERNC= ONF. For whatever reason my source tree wasn't prebuilt, so I reran buildkernel and everything was fine once again. Thanks, -Garrett