From owner-freebsd-x11@freebsd.org Sat Mar 11 11:57:45 2017 Return-Path: Delivered-To: freebsd-x11@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C12CAD08421 for ; Sat, 11 Mar 2017 11:57:45 +0000 (UTC) (envelope-from bugzilla-noreply@freebsd.org) Received: from kenobi.freebsd.org (kenobi.freebsd.org [IPv6:2001:1900:2254:206a::16:76]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id A5F9011A2 for ; Sat, 11 Mar 2017 11:57:45 +0000 (UTC) (envelope-from bugzilla-noreply@freebsd.org) Received: from bugs.freebsd.org ([127.0.1.118]) by kenobi.freebsd.org (8.15.2/8.15.2) with ESMTP id v2BBvigW016753 for ; Sat, 11 Mar 2017 11:57:45 GMT (envelope-from bugzilla-noreply@freebsd.org) From: bugzilla-noreply@freebsd.org To: freebsd-x11@FreeBSD.org Subject: [Bug 196678] x11-servers/xorg-server: make config/devd recognize /dev/input/eventX from multimedia/webcamd Date: Sat, 11 Mar 2017 11:57:44 +0000 X-Bugzilla-Reason: AssignedTo X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: Ports & Packages X-Bugzilla-Component: Individual Port(s) X-Bugzilla-Version: Latest X-Bugzilla-Keywords: patch X-Bugzilla-Severity: Affects Some People X-Bugzilla-Who: rezny@freebsd.org X-Bugzilla-Status: In Progress X-Bugzilla-Resolution: X-Bugzilla-Priority: --- X-Bugzilla-Assigned-To: freebsd-x11@FreeBSD.org X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: Message-ID: In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: https://bugs.freebsd.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 X-BeenThere: freebsd-x11@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: X11 on FreeBSD -- maintaining and support List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 11 Mar 2017 11:57:45 -0000 https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D196678 --- Comment #69 from Matthew Rezny --- (In reply to Vladimir Kondratyev from comment #66) Your reply confirms the problem is as I suspected. Thank you for pointing o= ut those patches to evdev and wacom. I had a look at the webcam and wacom code= and determined the problem is in the the patch in xf86-input-wacom. if (priv->isParent && errno =3D=3D EINVAL) { WacomDevicePtr other; for (other =3D common->wcmDevices; other; other =3D other->next) { xf86Msg(X_INFO, "%s: removing automatically added device.\n", other->pInfo->name); DeleteInputDeviceRequest(other->pInfo->dev); } } else /* for all other errors, hope that the hotplugging code will * remove the device */ if (errno !=3D EAGAIN && errno !=3D EINTR) LogMessageVerbSigSafe(X_ERROR, 0, "%s: Error reading wacom device : %s\= n", pInfo->name, strerror(errno)); I should have pasted the exact error message before as it makes it clear webcamd is not the culprit. Since the log message was "Error reading wacom device: Invalid argument", the value of errno must already be EINVAL (it is translated correctly by webcamd), so to be getting the log spam the problem must be that priv->isParent is false. I removed that so it's just "if (errn= o =3D=3D EINVAL)" and now the hot plugging works correctly. [497841.487] (II) Wacom Graphire3 6x8 Pen cursor: removing automatically ad= ded device. [497841.487] (II) UnloadModule: "wacom" [497841.487] (II) Wacom Graphire3 6x8 Pen eraser: removing automatically ad= ded device. [497841.488] (II) UnloadModule: "wacom" [497841.488] (II) Wacom Graphire3 6x8 Pen stylus: removing automatically ad= ded device. [497841.489] (II) config/devd: removing input device /dev/input/event0 [497841.489] (II) UnloadModule: "wacom" Those log messages suggest that is the child devices (stylus, eraser, and cursor) which get culled by this condition, then devd send a removal notice= for /dev/input/event0 and the config code commands the device removal. Maybe th= at was supposed to have been "if (!priv->isParent && errno =3D=3D EINVAL)". Jan: As you are the maintainer of the wacom DDX, do you have any input on t= he wacom situation? What is the correct condition to call DeleteInputDeviceRequest? --=20 You are receiving this mail because: You are the assignee for the bug.=