[Bug 202932] sysutils/rsyslog8 endless loop on FreeBSD 10.2

bugzilla-noreply at freebsd.org bugzilla-noreply at freebsd.org
Sun Sep 6 16:51:41 UTC 2015


https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=202932

            Bug ID: 202932
           Summary: sysutils/rsyslog8 endless loop on FreeBSD 10.2
           Product: Ports & Packages
           Version: Latest
          Hardware: Any
                OS: Any
            Status: New
          Severity: Affects Many People
          Priority: ---
         Component: Individual Port(s)
          Assignee: brd at FreeBSD.org
          Reporter: fbsd.bugzilla at fenyo.net
             Flags: maintainer-feedback?(brd at FreeBSD.org)
          Assignee: brd at FreeBSD.org

Created attachment 160781
  --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=160781&action=edit
correcting the endless loop bug

Hi,

Bug ID 200429 (endless loop when started at boot time), that had been corrected
on FreeBSD 10.1, came back with FreeBSD 10.2, due to kernel behaviour changes.

When the /dev/console device is revoked, writing to the device sets errno to:
- ENXIO with FreeBSD 10.1 kernel
- EIO with FreeBSD 10.2 kernel

The following program can be used to see this behaviour change:
------------------------------------------------------------------
#include <stdio.h>
#include <sys/types.h>
#include <unistd.h>
#include <fcntl.h>
extern int errno;
int main() {
  int id = open("/dev/console", O_RDWR);
  revoke("/dev/console");
  int ret = write(id, "X", 1);
  if (ret < 0) printf("errno=%d\n", errno);
  return 0;
}
------------------------------------------------------------------
It returns 6 (ENXIO) on FreeBSD 10.1 and 5 (EIO) on FreeBSD 10.2.

To make rsyslog8 work correctly, here is a new version of
sysutils/rsyslog8/files/patch-runtime_stream.c, in which I've added
modifications to correct the bug.

Note that the bug had been previously corrected in the main stream, in the
rsyslog8 original sources, not by a FreeBSD patch. But I've not sent a patch
proposal to the main stream this time because I suspect that the new behaviour
of the kernel is unwanted. So, I will open a bug report for this new behaviour,
and depending on the result, I may, or not, send back a bug report to the main
stream.

Sincerely,

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the freebsd-ports-bugs mailing list