From owner-freebsd-hackers@FreeBSD.ORG Fri Mar 15 16:54:43 2013 Return-Path: Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 77B65BA2 for ; Fri, 15 Mar 2013 16:54:43 +0000 (UTC) (envelope-from sebastian.huber@embedded-brains.de) Received: from mail.embedded-brains.de (host-82-135-62-35.customer.m-online.net [82.135.62.35]) by mx1.freebsd.org (Postfix) with ESMTP id 3833BD5A for ; Fri, 15 Mar 2013 16:54:42 +0000 (UTC) Received: by mail.embedded-brains.de (Postfix, from userid 65534) id 1F80C652CFD; Fri, 15 Mar 2013 17:46:28 +0100 (CET) X-Spam-Checker-Version: SpamAssassin 3.2.5 (2008-06-10) on fidibusdmz X-Spam-Level: X-Spam-Status: No, score=-4.0 required=5.0 tests=ALL_TRUSTED,AWL,BAYES_00 autolearn=ham version=3.2.5 Received: from [192.168.96.64] (eb0024.eb.z [192.168.96.64]) by mail.embedded-brains.de (Postfix) with ESMTP id 06F1A6524D9 for ; Fri, 15 Mar 2013 17:46:28 +0100 (CET) Message-ID: <51435063.7050907@embedded-brains.de> Date: Fri, 15 Mar 2013 17:46:27 +0100 From: Sebastian Huber User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130105 Thunderbird/17.0.2 MIME-Version: 1.0 To: FreeBSD Hackers Subject: Purpose of kqueue_task? Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 8bit X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Mar 2013 16:54:43 -0000 Hello, I want to port the FreeBSD kqueue implementation to another operating system (RTEMS in this case) to improve the Erlang support. I have difficulties to understand the purpose of the kqueue_task. This function runs asynchronously. It obtains some locks and wakes up the normal kqueue channel if (kq->kq_state & KQ_TASKDRAIN) == KQ_TASKDRAIN. This state is only set in kqueue_close(). So most of the time the kqueue_task only obtains some locks, clears a flag (KQ_TASKSCHED) and releases the locks? -- Sebastian Huber, embedded brains GmbH Address : Dornierstr. 4, D-82178 Puchheim, Germany Phone : +49 89 189 47 41-16 Fax : +49 89 189 47 41-09 E-Mail : sebastian.huber@embedded-brains.de PGP : Public key available on request. Diese Nachricht ist keine geschäftliche Mitteilung im Sinne des EHUG.