Date: Sat, 11 Mar 2017 11:57:44 +0000 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 Message-ID: <bug-196678-8047-FeMsNwGvJm@https.bugs.freebsd.org/bugzilla/> In-Reply-To: <bug-196678-8047@https.bugs.freebsd.org/bugzilla/> References: <bug-196678-8047@https.bugs.freebsd.org/bugzilla/>
next in thread | previous in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D196678 --- Comment #69 from Matthew Rezny <rezny@freebsd.org> --- (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.=
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-196678-8047-FeMsNwGvJm>