[Pkg-acpi-devel] Bug#719659: acpid ignores its unix socket on systems with many event interfaces

Ben Winslow rain at bluecherry.net
Wed Aug 14 02:42:00 UTC 2013

Package: acpid
Version: 1:2.0.19-1
Severity: important
Tags: upstream

acpid's fd watching code (connection_list.c) currently sets
MAX_CONNECTIONS to 20, but it also opens every single event interface
in /dev/input.  A modern machine with a modern kernel can easily have
20+ event interfaces, consuming the entire fd list.  When the socket
is opened (after the event interfaces), add_connection() fails and
acpid ignores the socket.  The first 10 connections to
/var/run/acpid.socket will succeed (the size of the listen() queue) and any
additional connections will block until acpid is killed.

I marked this important because of the way it exhibits itself: Xorg is
the main user of the acpid socket on my system, and it reopens the
socket each time the console is changed (including a wake from
suspend).  After the 10th wake or console switch back to X, the X
server will block on the connect() to /var/run/acpid.socket and render
the system completely unusable from the console.  (It is possible to
recover by restarting acpid over an ssh session, though.)

The upstream sourceforge project does not allow bug reports, so I'm
reporting through the Debian BTS and Ccing the author.  The simplest
fix would be simply raising MAX_CONNECTIONS in connection_list.c, but
it would be better if acpid just died when it was unable to track its
unix socket -- this is not the first time this exact scenario has
happened (see Debian bug #565908).

-- System Information:
Debian Release: jessie/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (1, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 3.8-2-amd64 (SMP w/2 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages acpid depends on:
ii  kmod      9-3
ii  libc6     2.17-92
ii  lsb-base  4.1+Debian12

Versions of packages acpid recommends:
ii  acpi-support-base  0.141-2

acpid suggests no packages.

-- no debconf information

More information about the Pkg-acpi-devel mailing list