From owner-freebsd-arch@freebsd.org Thu Sep 29 23:28:28 2016 Return-Path: Delivered-To: freebsd-arch@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 8D743C02EBE for ; Thu, 29 Sep 2016 23:28:28 +0000 (UTC) (envelope-from lew@perftech.com) Received: from smtp-gw.pt.net (smtp-gw.pt.net [206.210.194.15]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "smtp-gw.pt.net", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 5CDBC84C for ; Thu, 29 Sep 2016 23:28:27 +0000 (UTC) (envelope-from lew@perftech.com) X-ASG-Debug-ID: 1475190677-09411a12bf10c6ce0001-RYubVt Received: from mail.pt.net (mail.pt.net [206.210.194.11]) by smtp-gw.pt.net with ESMTP id 3CkBg42EXf0KmC7Z (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO) for ; Thu, 29 Sep 2016 18:11:17 -0500 (CDT) X-Barracuda-Envelope-From: lew@perftech.com X-Barracuda-Effective-Source-IP: mail.pt.net[206.210.194.11] X-Barracuda-Apparent-Source-IP: 206.210.194.11 Received: from localhost (localhost [IPv6:::1]) by mail.pt.net (Postfix) with ESMTP id 37C0C8425D7 for ; Thu, 29 Sep 2016 18:11:17 -0500 (CDT) Received: from mail.pt.net ([IPv6:::1]) by localhost (mail.pt.net [IPv6:::1]) (amavisd-new, port 10032) with ESMTP id fAdF59uvKqP7 for ; Thu, 29 Sep 2016 18:11:17 -0500 (CDT) Received: from localhost (localhost [IPv6:::1]) by mail.pt.net (Postfix) with ESMTP id 0E2DA8425E3 for ; Thu, 29 Sep 2016 18:11:17 -0500 (CDT) X-Virus-Scanned: amavisd-new at pt.net Received: from mail.pt.net ([IPv6:::1]) by localhost (mail.pt.net [IPv6:::1]) (amavisd-new, port 10026) with ESMTP id VfmkuZsvXc0R for ; Thu, 29 Sep 2016 18:11:17 -0500 (CDT) Received: from dhcp-221-110.perftech.com (dhcp-221-110.perftech.com [206.210.221.110]) (Authenticated sender: lew@pt.net) by mail.pt.net (Postfix) with ESMTPSA id F2F138425D7 for ; Thu, 29 Sep 2016 18:11:16 -0500 (CDT) From: Lewis Donzis Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Subject: mq on kqueue broken after upgrade to FreeBSD 11 Message-Id: <8A6CD0D3-C4D5-40DF-B2AD-4C454CC88AD1@perftech.com> X-ASG-Orig-Subj: mq on kqueue broken after upgrade to FreeBSD 11 Date: Thu, 29 Sep 2016 18:11:16 -0500 To: freebsd-arch@freebsd.org Mime-Version: 1.0 (Mac OS X Mail 9.3 \(3124\)) X-Mailer: Apple Mail (2.3124) X-Barracuda-Connect: mail.pt.net[206.210.194.11] X-Barracuda-Start-Time: 1475190677 X-Barracuda-Encrypted: ECDHE-RSA-AES256-GCM-SHA384 X-Barracuda-URL: https://smtp-gw.pt.net:443/cgi-mod/mark.cgi X-Barracuda-Scan-Msg-Size: 1027 X-Virus-Scanned: by bsmtpd at pt.net X-Barracuda-BRTS-Status: 1 X-Barracuda-Spam-Score: 0.00 X-Barracuda-Spam-Status: No, SCORE=0.00 using global scores of TAG_LEVEL=1000.0 QUARANTINE_LEVEL=1000.0 KILL_LEVEL=9.0 tests= X-Barracuda-Spam-Report: Code version 3.2, rules version 3.2.3.33333 Rule breakdown below pts rule name description ---- ---------------------- -------------------------------------------------- X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 29 Sep 2016 23:28:28 -0000 I had posted this on the userland forum, but it was suggested that I = re-post it to this mailing list, so here goes=E2=80=A6 We have applications that are using kevent() with, among other things, = POSIX message queues, so they can wake up when data is ready. As such, we were using __mq_oshandle() to get a handle from an mqd_t, = suitable for passing to kevent(). However, this function appears to have been removed from publication in = FreeBSD 11.0, although it still exists in the source. I saw some = discussion about it being a mistake to have been available previously, = but plenty of other __mq_*() functions are still public. So the question is, how is one supposed to get a kevent() on a POSIX = message queue, now that the fd is no longer available? (I realize that one could argue that it was never supported, but it does = (did) work, and why else would the kernel uipc_mqueue.c have code for = supporting it? And that's not to mention that __mq_oshandle() is still = declared in /usr/include/mqueue.h) Thanks, lew