From owner-freebsd-ports-bugs@FreeBSD.ORG Tue Mar 3 01:00:10 2009 Return-Path: Delivered-To: freebsd-ports-bugs@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 31883106566C for ; Tue, 3 Mar 2009 01:00:10 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:4f8:fff6::28]) by mx1.freebsd.org (Postfix) with ESMTP id 09C998FC17 for ; Tue, 3 Mar 2009 01:00:10 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (gnats@localhost [127.0.0.1]) by freefall.freebsd.org (8.14.3/8.14.3) with ESMTP id n231097k094313 for ; Tue, 3 Mar 2009 01:00:09 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.3/8.14.3/Submit) id n23109hh094312; Tue, 3 Mar 2009 01:00:09 GMT (envelope-from gnats) Resent-Date: Tue, 3 Mar 2009 01:00:09 GMT Resent-Message-Id: <200903030100.n23109hh094312@freefall.freebsd.org> Resent-From: FreeBSD-gnats-submit@FreeBSD.org (GNATS Filer) Resent-To: freebsd-ports-bugs@FreeBSD.org Resent-Reply-To: FreeBSD-gnats-submit@FreeBSD.org, Jose M Rodriguez Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id A6E9E1065672; Tue, 3 Mar 2009 00:55:44 +0000 (UTC) (envelope-from josemi@freebsd.jazztel.es) Received: from smtp02.jazztel.es (smtp02.jazztel.es [62.14.3.171]) by mx1.freebsd.org (Postfix) with ESMTP id 339FA8FC1A; Tue, 3 Mar 2009 00:55:43 +0000 (UTC) (envelope-from josemi@freebsd.jazztel.es) Received: from [87.217.187.167] (helo=antares.redesjm.local) by smtp02.jazztel.es with esmtpa (Exim 4.60) (envelope-from ) id 1LeIXj-00065w-BL; Tue, 03 Mar 2009 01:31:31 +0100 Received: from redesjm.local (hermes.redesjm.local [192.168.254.17]) by antares.redesjm.local (8.14.3/8.14.3) with ESMTP id n230dk7r034584; Tue, 3 Mar 2009 01:39:46 +0100 (CET) (envelope-from josemi@redesjm.local) Received: (from josemi@localhost) by redesjm.local (8.14.3/8.14.3/Submit) id n230dfYk083990; Tue, 3 Mar 2009 01:39:41 +0100 (CET) (envelope-from josemi) Message-Id: <200903030039.n230dfYk083990@redesjm.local> Date: Tue, 3 Mar 2009 01:39:41 +0100 (CET) From: Jose M Rodriguez To: FreeBSD-gnats-submit@FreeBSD.org X-Send-Pr-Version: 3.113 Cc: gnome@FreeBSD.org Subject: ports/132270: xorg-server can't load usb keyboards via config/hal X-BeenThere: freebsd-ports-bugs@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Jose M Rodriguez List-Id: Ports bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 03 Mar 2009 01:00:10 -0000 >Number: 132270 >Category: ports >Synopsis: xorg-server can't load usb keyboards via config/hal >Confidential: no >Severity: serious >Priority: medium >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Tue Mar 03 01:00:09 UTC 2009 >Closed-Date: >Last-Modified: >Originator: Jose M Rodriguez >Release: FreeBSD 7.1-RELEASE-p3 i386 >Organization: Redes JM >Environment: System: FreeBSD hermes 7.1-RELEASE-p3 FreeBSD 7.1-RELEASE-p3 #0: Mon Mar 2 03:34:41 CET 2009 root@hermes:/usr/obj/usr/src/sys/HERMES i386 machine only with usb keyboard kernel build without atkbd / kbdmux devices >Description: xorg-server can't load usb keyboards via config/hal. It fails at device open, as hal have a device key. This is not noticeable in an stock system. The presence of an atkbd without a hal device key makes xorg-server load the module. Seems that xorg-server keyboard is not device oriented and hal must not have a device key for usb keyboard >How-To-Repeat: You can see this on the Xorg logs. In systems without kernel atkbd device, xorg-server can't get a functional keyboad >Fix: Don't add a device key for usb keyborads, as is done for at ones (PS/2) - hf_device_set_input(device, "keyboard", devname); + hf_device_set_input(device, "keyboard", NULL); --- pr.patch begins here --- --- sysutils/hal/files/patch-hald_freebsd_hf-usb.c.old 2009-03-02 15:34:52.000000000 +0100 +++ sysutils/hal/files/patch-hald_freebsd_hf-usb.c 2009-03-02 04:27:23.000000000 +0100 @@ -1,5 +1,5 @@ ---- hald/freebsd/hf-usb.c.orig 2008-05-07 19:24:02.000000000 -0400 -+++ hald/freebsd/hf-usb.c 2009-02-27 14:01:46.000000000 -0500 +--- hald/freebsd/hf-usb.c.orig 2008-05-08 01:24:02.000000000 +0200 ++++ hald/freebsd/hf-usb.c 2009-03-02 04:23:32.000000000 +0100 @@ -25,13 +25,18 @@ # include #endif @@ -31,7 +31,7 @@ typedef struct { -@@ -231,7 +241,7 @@ hf_usb_get_full_config_descriptor (int f +@@ -231,7 +241,7 @@ * Adapted from usb_compute_udi() in linux2/physdev.c and * usbclass_compute_udi() in linux2/classdev.c. */ @@ -40,7 +40,7 @@ hf_usb_device_compute_udi (HalDevice *device) { g_return_if_fail(HAL_IS_DEVICE(device)); -@@ -250,12 +260,13 @@ hf_usb_device_compute_udi (HalDevice *de +@@ -250,12 +260,13 @@ hf_device_set_udi(device, "usb_device_%x_%x_%s", hal_device_property_get_int(device, "usb_device.vendor_id"), hal_device_property_get_int(device, "usb_device.product_id"), @@ -56,7 +56,16 @@ hf_usb_add_webcam_properties (HalDevice *device) { int unit; -@@ -575,6 +586,8 @@ hf_usb_probe_device (HalDevice *parent, +@@ -424,7 +435,7 @@ + hf_devtree_device_set_name(device, di->udi_devnames[0]); + + if ((devname = hf_usb_get_devname(di, "ukbd"))) /* USB keyboard */ +- hf_device_set_input(device, "keyboard", devname); ++ hf_device_set_input(device, "keyboard", NULL); + else if ((devname = hf_usb_get_devname(di, "ums"))) /* USB mouse */ + hf_device_set_input(device, "mouse", devname); + else if ((devname = hf_usb_get_devname(di, "uhid"))) /* UHID device */ +@@ -575,6 +586,8 @@ { if (hal_device_has_capability(device, "hiddev")) hf_runner_run_sync(device, 0, "hald-probe-hiddev", NULL); @@ -65,7 +74,7 @@ hf_device_add(device); } -@@ -633,9 +646,18 @@ hf_usb_privileged_init (void) +@@ -633,9 +646,18 @@ { int i; --- pr.patch ends here --- >Release-Note: >Audit-Trail: >Unformatted: