xserver: Branch 'master'

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Thu Jun 4 04:57:57 UTC 2020


 configure.ac                               |    9 -
 hw/xfree86/os-support/bsd/Makefile.am      |   10 -
 hw/xfree86/os-support/bsd/bsd_apm.c        |  137 -------------------
 hw/xfree86/os-support/bsd/bsd_kqueue_apm.c |  199 -----------------------------
 hw/xfree86/os-support/meson.build          |   11 -
 5 files changed, 2 insertions(+), 364 deletions(-)

New commits:
commit 5dc16f6fec672c10fc26dcaaf00df0f6bed0ef9a
Author: Matthieu Herrb <matthieu at herrb.eu>
Date:   Tue Jun 2 17:32:11 2020 +0200

    Remove BSD APM support.
    
    None of the current BSD is actually using this code.
    (checked DragonFly 5.8.1, FreeBSD 11.2, NetBSD 9.0 and OpenBSD 6.7)
    
    Signed-off-by: Matthieu Herrb <matthieu at herrb.eu>

diff --git a/configure.ac b/configure.ac
index af5df61dc..f91242267 100644
--- a/configure.ac
+++ b/configure.ac
@@ -237,15 +237,6 @@ dnl OpenBSD /dev/xf86 aperture driver
 if test -c /dev/xf86 ; then
 	AC_DEFINE(HAS_APERTURE_DRV, 1, [System has /dev/xf86 aperture driver])
 fi
-
-dnl BSD APM support 
-AC_CHECK_HEADER([machine/apmvar.h],[
-	AC_CHECK_HEADER([sys/event.h],
-		ac_cv_BSD_KQUEUE_APM=yes,
-		ac_cv_BSD_APM=yes)])
-
-AM_CONDITIONAL(BSD_APM, [test "x$ac_cv_BSD_APM" = xyes])
-AM_CONDITIONAL(BSD_KQUEUE_APM, [test "x$ac_cv_BSD_KQUEUE_APM" = xyes])
 	
 dnl glibc backtrace support check
 AC_CHECK_HEADER([execinfo.h],[
diff --git a/hw/xfree86/os-support/bsd/Makefile.am b/hw/xfree86/os-support/bsd/Makefile.am
index 90d9e555f..2311dc242 100644
--- a/hw/xfree86/os-support/bsd/Makefile.am
+++ b/hw/xfree86/os-support/bsd/Makefile.am
@@ -1,15 +1,7 @@
 noinst_LTLIBRARIES = libbsd.la
 
-# APM support.
-if BSD_KQUEUE_APM
-APM_SOURCES = $(srcdir)/bsd_kqueue_apm.c
-else 
-if BSD_APM
-APM_SOURCES = $(srcdir)/bsd_apm.c
-else
+# No APM support.
 APM_SOURCES = $(srcdir)/../shared/pm_noop.c
-endif
-endif
 
 if FREEBSD_KLDLOAD
 KMOD_SOURCES = bsd_kmod.c
diff --git a/hw/xfree86/os-support/bsd/bsd_apm.c b/hw/xfree86/os-support/bsd/bsd_apm.c
deleted file mode 100644
index dab0a9a7d..000000000
--- a/hw/xfree86/os-support/bsd/bsd_apm.c
+++ /dev/null
@@ -1,137 +0,0 @@
-#ifdef HAVE_XORG_CONFIG_H
-#include <xorg-config.h>
-#endif
-
-#include <X11/X.h>
-#include "os.h"
-#include "xf86.h"
-#include "xf86Priv.h"
-#define XF86_OS_PRIVS
-#include "xf86_OSproc.h"
-#include "xf86_OSlib.h"
-
-#include <machine/apmvar.h>
-
-#define APM_DEVICE "/dev/apm"
-
-static void *APMihPtr = NULL;
-static void bsdCloseAPM(void);
-
-static struct {
-    u_int apmBsd;
-    pmEvent xf86;
-} bsdToXF86Array[] = {
-    {APM_STANDBY_REQ, XF86_APM_SYS_STANDBY},
-    {APM_SUSPEND_REQ, XF86_APM_SYS_SUSPEND},
-    {APM_NORMAL_RESUME, XF86_APM_NORMAL_RESUME},
-    {APM_CRIT_RESUME, XF86_APM_CRITICAL_RESUME},
-    {APM_BATTERY_LOW, XF86_APM_LOW_BATTERY},
-    {APM_POWER_CHANGE, XF86_APM_POWER_STATUS_CHANGE},
-    {APM_UPDATE_TIME, XF86_APM_UPDATE_TIME},
-    {APM_CRIT_SUSPEND_REQ, XF86_APM_CRITICAL_SUSPEND},
-    {APM_USER_STANDBY_REQ, XF86_APM_USER_STANDBY},
-    {APM_USER_SUSPEND_REQ, XF86_APM_USER_SUSPEND},
-    {APM_SYS_STANDBY_RESUME, XF86_APM_STANDBY_RESUME},
-#ifdef APM_CAPABILITY_CHANGE
-    {APM_CAPABILITY_CHANGE, XF86_APM_CAPABILITY_CHANGED},
-#endif
-};
-
-static pmEvent
-bsdToXF86(int type)
-{
-    int i;
-
-    for (i = 0; i < ARRAY_SIZE(bsdToXF86Array); i++) {
-        if (type == bsdToXF86Array[i].apmBsd) {
-            return bsdToXF86Array[i].xf86;
-        }
-    }
-    return XF86_APM_UNKNOWN;
-}
-
-/*
- * APM events can be requested direclty from /dev/apm
- */
-static int
-bsdPMGetEventFromOS(int fd, pmEvent * events, int num)
-{
-    struct apm_event_info bsdEvent;
-    int i;
-
-    for (i = 0; i < num; i++) {
-
-        if (ioctl(fd, APM_IOC_NEXTEVENT, &bsdEvent) < 0) {
-            if (errno != EAGAIN) {
-                xf86Msg(X_WARNING, "bsdPMGetEventFromOS: APM_IOC_NEXTEVENT"
-                        " %s\n", strerror(errno));
-            }
-            break;
-        }
-        events[i] = bsdToXF86(bsdEvent.type);
-    }
-    return i;
-}
-
-/*
- * XXX This won't work on /dev/apm !
- *     We should either use /dev/apm_ctl (and kill apmd(8))
- *     or talk to apmd (but its protocol is not publically available)...
- */
-static pmWait
-bsdPMConfirmEventToOs(int fd, pmEvent event)
-{
-    switch (event) {
-    case XF86_APM_SYS_STANDBY:
-    case XF86_APM_USER_STANDBY:
-        if (ioctl(fd, APM_IOC_STANDBY, NULL) == 0)
-            return PM_WAIT;     /* should we stop the Xserver in standby, too? */
-        else
-            return PM_NONE;
-    case XF86_APM_SYS_SUSPEND:
-    case XF86_APM_CRITICAL_SUSPEND:
-    case XF86_APM_USER_SUSPEND:
-        if (ioctl(fd, APM_IOC_SUSPEND, NULL) == 0)
-            return PM_WAIT;
-        else
-            return PM_NONE;
-    case XF86_APM_STANDBY_RESUME:
-    case XF86_APM_NORMAL_RESUME:
-    case XF86_APM_CRITICAL_RESUME:
-    case XF86_APM_STANDBY_FAILED:
-    case XF86_APM_SUSPEND_FAILED:
-        return PM_CONTINUE;
-    default:
-        return PM_NONE;
-    }
-}
-
-PMClose
-xf86OSPMOpen(void)
-{
-    int fd;
-
-    if (APMihPtr || !xf86Info.pmFlag) {
-        return NULL;
-    }
-
-    if ((fd = open(APM_DEVICE, O_RDWR)) == -1) {
-        return NULL;
-    }
-    xf86PMGetEventFromOs = bsdPMGetEventFromOS;
-    xf86PMConfirmEventToOs = bsdPMConfirmEventToOs;
-    APMihPtr = xf86AddGeneralHandler(fd, xf86HandlePMEvents, NULL);
-    return bsdCloseAPM;
-}
-
-static void
-bsdCloseAPM(void)
-{
-    int fd;
-
-    if (APMihPtr) {
-        fd = xf86RemoveGeneralHandler(APMihPtr);
-        close(fd);
-        APMihPtr = NULL;
-    }
-}
diff --git a/hw/xfree86/os-support/bsd/bsd_kqueue_apm.c b/hw/xfree86/os-support/bsd/bsd_kqueue_apm.c
deleted file mode 100644
index b046a1aa8..000000000
--- a/hw/xfree86/os-support/bsd/bsd_kqueue_apm.c
+++ /dev/null
@@ -1,199 +0,0 @@
-/*
- * Copyright (C) 2001 The XFree86 Project, Inc.  All Rights Reserved.
- *
- * Permission is hereby granted, free of charge, to any person obtaining
- * a copy of this software and associated documentation files (the
- * "Software"), to deal in the Software without restriction, including
- * without limitation the rights to use, copy, modify, merge, publish,
- * distribute, sublicense, and/or sell copies of the Software, and to
- * permit persons to whom the Software is furnished to do so, subject to
- * the following conditions:
- *
- * The above copyright notice and this permission notice shall be
- * included in all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
- * IN NO EVENT SHALL THE XFREE86 PROJECT BE LIABLE FOR ANY CLAIM, DAMAGES
- * OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
- * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR
- * THE USE OR OTHER DEALINGS IN THE SOFTWARE.
- *
- * Except as contained in this notice, the name of the XFree86 Project
- * shall not be used in advertising or otherwise to promote the sale, use
- * or other dealings in this Software without prior written authorization
- * from the XFree86 Project.
- */
-
-#ifdef HAVE_XORG_CONFIG_H
-#include <xorg-config.h>
-#endif
-
-#include <X11/X.h>
-#include "os.h"
-#include "xf86.h"
-#include "xf86Priv.h"
-#define XF86_OS_PRIVS
-#include "xf86_OSproc.h"
-#include "xf86_OSlib.h"
-
-#include <sys/event.h>
-#include <machine/apmvar.h>
-
-#define _PATH_APM_SOCKET	"/var/run/apmdev"
-#define _PATH_APM_DEV		"/dev/apm"
-#define _PATH_APM_CTLDEV	"/dev/apmctl"
-
-static void *APMihPtr = NULL;
-static int devFd = -1;
-static int ctlFd = -1;
-static void bsdCloseAPM(void);
-
-static struct {
-    u_int apmBsd;
-    pmEvent xf86;
-} bsdToXF86Array[] = {
-    {APM_STANDBY_REQ, XF86_APM_SYS_STANDBY},
-    {APM_SUSPEND_REQ, XF86_APM_SYS_SUSPEND},
-    {APM_NORMAL_RESUME, XF86_APM_NORMAL_RESUME},
-    {APM_CRIT_RESUME, XF86_APM_CRITICAL_RESUME},
-    {APM_BATTERY_LOW, XF86_APM_LOW_BATTERY},
-    {APM_POWER_CHANGE, XF86_APM_POWER_STATUS_CHANGE},
-    {APM_UPDATE_TIME, XF86_APM_UPDATE_TIME},
-    {APM_CRIT_SUSPEND_REQ, XF86_APM_CRITICAL_SUSPEND},
-    {APM_USER_STANDBY_REQ, XF86_APM_USER_STANDBY},
-    {APM_USER_SUSPEND_REQ, XF86_APM_USER_SUSPEND},
-    {APM_SYS_STANDBY_RESUME, XF86_APM_STANDBY_RESUME},
-#ifdef APM_CAPABILITY_CHANGE
-    {APM_CAPABILITY_CHANGE, XF86_APM_CAPABILITY_CHANGED},
-#endif
-};
-
-static pmEvent
-bsdToXF86(int type)
-{
-    int i;
-
-    for (i = 0; i < ARRAY_SIZE(bsdToXF86Array); i++) {
-        if (type == bsdToXF86Array[i].apmBsd) {
-            return bsdToXF86Array[i].xf86;
-        }
-    }
-    return XF86_APM_UNKNOWN;
-}
-
-/*
- * APM events can be requested direclty from /dev/apm
- */
-static int
-bsdPMGetEventFromOS(int kq, pmEvent * events, int num)
-{
-    struct kevent ev;
-    int i, result;
-    struct timespec ts = { 0, 0 };
-
-    for (i = 0; i < num; i++) {
-        result = kevent(kq, NULL, 0, &ev, 1, &ts);
-        if (result == 0 || APM_EVENT_TYPE(ev.data) == APM_NOEVENT) {
-            /* no event */
-            break;
-        }
-        else if (result < 0) {
-            xf86Msg(X_WARNING, "bsdPMGetEventFromOS: kevent returns"
-                    " %s\n", strerror(errno));
-            break;
-        }
-        events[i] = bsdToXF86(APM_EVENT_TYPE(ev.data));
-    }
-    return i;
-}
-
-/*
- * If apmd(8) is running, he will get the events and handle them,
- * so, we've nothing to do here.
- * Otherwise, opening /dev/apmctl will succeed and we have to send the
- * confirmations to /dev/apmctl.
- */
-static pmWait
-bsdPMConfirmEventToOs(int dummyfd, pmEvent event)
-{
-    if (ctlFd < 0) {
-        if ((ctlFd = open(_PATH_APM_CTLDEV, O_RDWR)) < 0) {
-            return PM_NONE;
-        }
-    }
-    /* apmctl open succeedeed */
-    switch (event) {
-    case XF86_APM_SYS_STANDBY:
-    case XF86_APM_USER_STANDBY:
-        if (ioctl(ctlFd, APM_IOC_STANDBY, NULL) == 0)
-            return PM_WAIT;     /* should we stop the Xserver in standby, too? */
-        else
-            return PM_NONE;
-
-    case XF86_APM_SYS_SUSPEND:
-    case XF86_APM_CRITICAL_SUSPEND:
-    case XF86_APM_USER_SUSPEND:
-        if (ioctl(ctlFd, APM_IOC_SUSPEND, NULL) == 0)
-            return PM_WAIT;
-        else
-            return PM_NONE;
-        break;
-    case XF86_APM_STANDBY_RESUME:
-    case XF86_APM_NORMAL_RESUME:
-    case XF86_APM_CRITICAL_RESUME:
-    case XF86_APM_STANDBY_FAILED:
-    case XF86_APM_SUSPEND_FAILED:
-        return PM_CONTINUE;
-        break;
-    default:
-        return PM_NONE;
-    }
-}
-
-PMClose
-xf86OSPMOpen(void)
-{
-    int kq;
-    struct kevent ev;
-
-    if (APMihPtr || !xf86Info.pmFlag) {
-        return NULL;
-    }
-    if ((devFd = open(_PATH_APM_DEV, O_RDONLY)) == -1) {
-        return NULL;
-    }
-    if ((kq = kqueue()) <= 0) {
-        close(devFd);
-        return NULL;
-    }
-    EV_SET(&ev, devFd, EVFILT_READ, EV_ADD | EV_ENABLE | EV_CLEAR, 0, 0, NULL);
-    if (kevent(kq, &ev, 1, NULL, 0, NULL) < 0) {
-        close(devFd);
-        return NULL;
-    }
-
-    xf86PMGetEventFromOs = bsdPMGetEventFromOS;
-    xf86PMConfirmEventToOs = bsdPMConfirmEventToOs;
-    APMihPtr = xf86AddGeneralHandler(kq, xf86HandlePMEvents, NULL);
-    return bsdCloseAPM;
-}
-
-static void
-bsdCloseAPM(void)
-{
-    int kq;
-
-    if (APMihPtr) {
-        kq = xf86RemoveGeneralHandler(APMihPtr);
-        close(devFd);
-        devFd = -1;
-        close(kq);
-        if (ctlFd >= 0) {
-            close(ctlFd);
-            ctlFd = -1;
-        }
-        APMihPtr = NULL;
-    }
-}
diff --git a/hw/xfree86/os-support/meson.build b/hw/xfree86/os-support/meson.build
index 6e426665a..1f490a668 100644
--- a/hw/xfree86/os-support/meson.build
+++ b/hw/xfree86/os-support/meson.build
@@ -96,18 +96,9 @@ elif host_machine.system().endswith('bsd')
         'bsd/bsd_VTsw.c',
         'bsd/bsd_bell.c',
         'bsd/bsd_init.c',
+	'shared/pm_noop.c'
     ]
 
-    if cc.has_header('machine/apmvar.h')
-        if cc.has_header('sys/event.h')
-            srcs_xorg_os_support += 'bsd/bsd_kqueue_apm.c'
-        else
-            srcs_xorg_os_support += 'bsd/bsd_apm.c'
-        endif
-    else
-        srcs_xorg_os_support += 'shared/pm_noop.c'
-    endif
-
     if host_machine.cpu_family() == 'x86_64'
         srcs_xorg_os_support += 'bsd/i386_video.c'
         if host_machine.system() == 'netbsd'


More information about the xorg-commit mailing list