MIME-Version: | 1.0 |
X-Spam-Status: | No, score=-1.999 tagged_above=-99.9 required=10 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001] autolearn=ham |
X-Spam-Flag: | NO |
X-Virus-Checked: | Checked |
Content-Type: | multipart/alternative; boundary="001a113e8e56a06ff70537eb77b5" |
Message-ID: | <CACqqGWcUt3d6CLmM-R=WfwE-5+c3OhSD3HkL_kLb9p9HYxSHMw [...] mail.gmail.com> |
X-Received: | by 10.37.14.84 with SMTP id 81mr23087821ybo.115.1468859347376; Mon, 18 Jul 2016 09:29:07 -0700 (PDT) |
X-Virus-Scanned: | Debian amavisd-new at bestpractical.com |
X-Spam-Score: | -1.999 |
Received: | from localhost (localhost [127.0.0.1]) by hipster.bestpractical.com (Postfix) with ESMTP id 7ED3924026A for <cpan-bug+IO-KQueue [...] hipster.bestpractical.com>; Mon, 18 Jul 2016 12:29:18 -0400 (EDT) |
Received: | from hipster.bestpractical.com ([127.0.0.1]) by localhost (hipster.bestpractical.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id M8JBRm6zaJaI for <cpan-bug+IO-KQueue [...] hipster.bestpractical.com>; Mon, 18 Jul 2016 12:29:17 -0400 (EDT) |
Received: | from la.mx.develooper.com (x1.develooper.com [207.171.7.70]) by hipster.bestpractical.com (Postfix) with SMTP id AF8B52400B6 for <bug-IO-KQueue [...] rt.cpan.org>; Mon, 18 Jul 2016 12:29:16 -0400 (EDT) |
Received: | (qmail 20718 invoked by alias); 18 Jul 2016 16:29:15 -0000 |
Received: | from mail-yw0-f198.google.com (HELO mail-yw0-f198.google.com) (209.85.161.198) by la.mx.develooper.com (qpsmtpd/0.28) with ESMTP; Mon, 18 Jul 2016 09:29:11 -0700 |
Received: | by mail-yw0-f198.google.com with SMTP id c124so261407135ywd.1 for <bug-IO-KQueue [...] rt.cpan.org>; Mon, 18 Jul 2016 09:29:11 -0700 (PDT) |
Received: | by 10.13.209.131 with HTTP; Mon, 18 Jul 2016 09:29:06 -0700 (PDT) |
Authentication-Results: | hipster.bestpractical.com (amavisd-new); dkim=pass header.i= [...] dyn.com |
Delivered-To: | cpan-bug+IO-KQueue [...] hipster.bestpractical.com |
Subject: | IO-KQueue: fflags type causing errors |
Return-Path: | <mali [...] dyn.com> |
X-RT-Mail-Extension: | io-kqueue |
X-Original-To: | cpan-bug+IO-KQueue [...] hipster.bestpractical.com |
X-Spam-Check-BY: | la.mx.develooper.com |
Dkim-Signature: | v=1; a=rsa-sha256; c=relaxed/relaxed; d=dyn.com; s=google; h=mime-version:from:date:message-id:subject:to; bh=KTbUaCY8PRapsnxVQXHovbiyrwSykqLXTfnzIvrR4X4=; b=dn/IdfW8EGGEeRJ1ZHsQZr+MNfigeBLS9lPtxPMBTORhoo2DrRo/A7kNJ2s4j6dCxG 7X+/qQjXoQJ1JvJiQiLYsD97hX39/uvy3hzVmfaNyLE6KyXWRl80dXdm8p3ZgInT4xZz 4XjwyShtC7yGznKHBXhzTherZivnCHhq6dR0Y= |
X-Google-Dkim-Signature: | v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=KTbUaCY8PRapsnxVQXHovbiyrwSykqLXTfnzIvrR4X4=; b=iqbPJdqnLGf6AKVNFWTjO5BZl8n5qOnb9ey7RoHIeJYwCAliEfv2SyEMKUwhklwlDK W4Qc1/CqNyCqeVyr474hu9OSEMGccafyKPejKvRg59wk1rb0nae4HX6+JWIpFSWNeTTO KcQOAJAb6yeLbzMQ9qi5gKTyFGUp/McutNEFlccPgLpn/kOZP7jpn6xjdtqkoOjyflxJ XB746vafjKzUteAj8qNDpDpixwu9HD7TPGyJ8bLzex73AckN5fD9PdCNuSXPb+HFYGBS U8PQAydzTrsguLb2WDJQtnGSSgWawT1pAQR/hC5FqHVCHP5j993QqkK2TMAz0tTOVcSz xG6A== |
Date: | Mon, 18 Jul 2016 12:29:06 -0400 |
X-Spam-Level: | |
To: | bug-IO-KQueue [...] rt.cpan.org |
From: | Chaudhry Usman Ali <mali [...] dyn.com> |
X-GM-Message-State: | ALyK8tKKlcjxW+Sr4xq6LdmAUKEURn/MrICay3TOP1MAMWm3BythZU5KcxPvgILBXANPVqvirG65jtwlNQ9UzR8U |
X-RT-Interface: | |
Content-Length: | 0 |
content-type: | text/plain; charset="utf-8" |
X-RT-Original-Encoding: | utf-8 |
Content-Length: | 1908 |
Hi there,
Thank you for writing this module. I would like to report a bug in
IO::KQueue.
*Information:*
*http://search.cpan.org/CPAN/authors/id/M/MS/MSERGEANT/IO-KQueue-0.34.tar.gz
<http://search.cpan.org/CPAN/authors/id/M/MS/MSERGEANT/IO-KQueue-0.34.tar.gz>*
*IO-KQueue version: 0.34*
*Perl version: perl 5, version 20, subversion 3 (v5.20.3)*
*Operating System: FreeBSD 10.3-RELEASE-p4 amd64*
While testing it against perl 5.20.x, we realized that NOTE_EXIT flag is
not working because of a misconfigured flag value in KQUEUE.xs.
When you look at the NOTE_EXIT value in /usr/include/sys/event.h,
#define NOTE_EXIT 0x80000000 /* process exited */
It is being handled as u_short value for fflags in KQueue.xs
void
46 EV_SET(kq, ident, filter, flags, fflags = 0, data = 0, udata = NULL)
47 kqueue_t kq
48 uintptr_t ident
49 short filter
50 u_short flags
51 u_short fflags
52 intptr_t data
53 SV * udata
The u_short type is not able to handle the flag. This causes many
failures, zombie process generation being one of them. This behaviour was
not an issue in early versions of perl as we tested it on perl 5.8.9 as
well as perl 5.20.x. This apparently has become an issue now that leads to
failures involving EV_SET.
The solution in our case is a one line fix to change the flag to unsigned
int
--- KQueue.xs.orig 2016-07-15 19:52:38.017626000 +0000
+++ KQueue.xs 2016-07-15 19:53:56.167569000 +0000
@@ -48,7 +48,7 @@
uintptr_t ident
short filter
u_short flags
- u_short fflags
+ unsigned int fflags
intptr_t data
SV * udata
PREINIT:
On patching the port, with the above patch, the issue is resolved.
https://github.com/freebsd/freebsd-ports/tree/94e30f557b8550477e18f4bda4a23cb2c606c64f/devel/p5-IO-KQueue
Can you please advise? Thank you
*Mani*
content-type: | text/html; charset="utf-8" |
Content-Transfer-Encoding: | quoted-printable |
X-RT-Original-Encoding: | utf-8 |
Content-Length: | 3022 |