On Wed, Feb 17, 2016 at 01:49:43AM +0300, Rozhuk Ivan wrote:
> On Mon, 11 Jan 2016 09:21:49 +1000
> Peter Hutterer <peter.hutte...@who-t.net> wrote:
> 
> > > 3. Fix unplug deadlock: cuse (webcamd) cant remove opened device
> > > (and devd does not send remove event), xorg get infinite read error
> > > from unplugged device and write error to log.  
> > 
> > please fix the kernel driver for this. also, why is this a problem
> > with webcamd? wacom tablets don't usually require a webcam daemon to
> > be running...
> 
> I have no time to investigate this.
> webcamd contain linux kernel drivers for many usb devices, it create "fake" 
> devices in /dev/ and proxy requests to real devices via libusb.
> This problem some where in cuse kernel module that creates user controlled 
> devices in /dev/.
> 
> 
> > > 4. Small code optimization.  
> > 
> > as for the other patches, please submit them as signed-off
> > git-formatted patches to this list so we can review and apply them.
> > thanks.
> 
> Is attached files format ok?

no, please use git-format-patch to create the patches and split them up into
logical entities, with an explanatory commit message for each. e.g. the
fsource patch isn't logically connected to adding the new device IDs and
should go into two separate patches. you already grouped them into 4 logical
categories in your original email, please group the patches the same way.

Cheers,
   Peter
 

> --- src/wcmValidateDevice.c.orig
> +++ src/wcmValidateDevice.c
> @@ -34,6 +34,7 @@
>  {
>       int match = 0;
>       InputInfoPtr pDevices = xf86FirstLocalDevice();
> +     char* fsource = xf86CheckStrOption(pInfo->options, "_source", "");
>  
>       for (; !match && pDevices != NULL; pDevices = pDevices->next)
>       {
> @@ -51,7 +52,6 @@
>               if (pInfo != pDevices)
>               {
>                       WacomCommonPtr pCommon = 
> ((WacomDevicePtr)pDevices->private)->common;
> -                     char* fsource = xf86CheckStrOption(pInfo->options, 
> "_source", "");
>                       char* psource = xf86CheckStrOption(pDevices->options, 
> "_source", "");
>  
>                       if (pCommon->min_maj &&
> @@ -62,10 +62,11 @@
>                               if (strcmp(fsource, psource))
>                                       match = 1;
>                       }
> -                     free(fsource);
>                       free(psource);
>               }
>       }
> +     free(fsource);
> +
>       if (match)
>               xf86Msg(X_WARNING, "%s: device file already in use by %s. "
>                       "Ignoring.\n", pInfo->name, pDevices->name);
> @@ -205,6 +206,10 @@
>               case 0x314: /* Intuos Pro S */
>               case 0x315: /* Intuos Pro M */
>               case 0x317: /* Intuos Pro L */
> +             case 0x33B: /* Intuos Draw small */
> +             case 0x33C: /* Intuos Art/Photo/Comic small */
> +             case 0x33D: /* Intuos Draw medium */
> +             case 0x33E: /* Intuos Art medium */
>               case 0x26:  /* I5 */
>               case 0x27:  /* I5 */
>               case 0x28:  /* I5 */
> @@ -623,8 +628,10 @@
>  
>       if (!source) /* xorg.conf device, don't auto-pick type */
>               goto out;
> -
> -     if (source && strcmp(source, "server/hal") && strcmp(source, 
> "server/udev"))
> +     if (strcmp(source, "server/hal") &&
> +         strcmp(source, "server/udev") &&
> +         strcmp(source, "server/devd") &&
> +         strcmp(source, "server/wscons"))
>               goto out;
>  
>       /* no type specified, so we need to pick the first one applicable

> --- src/wcmUSB.c~
> +++ src/wcmUSB.c
> @@ -23,10 +23,17 @@
>  
>  #include "xf86Wacom.h"
>  
> +#ifdef __linux__
>  #include <asm/types.h>
> +#endif
>  #include <linux/input.h>
>  #include <sys/utsname.h>
> +#ifdef __linux__
>  #include <linux/version.h>
> +#else
> +#define LINUX_VERSION_CODE 1
> +#define KERNEL_VERSION(a,b,c) 0
> +#endif
>  
>  #define MAX_USB_EVENTS 32
>  
> @@ -276,6 +283,11 @@
>       { WACOM_VENDOR_ID, 0x315,200000, 200000, &usbIntuosPro,  "Intuos Pro M" 
>         },
>       { WACOM_VENDOR_ID, 0x317,200000, 200000, &usbIntuosPro,  "Intuos Pro L" 
>         },
>  
> +     { WACOM_VENDOR_ID, 0x33B,200000, 200000, &usbIntuos5,    "Intuos Draw 
> small"    },
> +     { WACOM_VENDOR_ID, 0x33C,200000, 200000, &usbIntuos5,    "Intuos 
> Art/Photo/Comic small"},
> +     { WACOM_VENDOR_ID, 0x33D,200000, 200000, &usbIntuos5,    "Intuos Draw 
> medium"   },
> +     { WACOM_VENDOR_ID, 0x33E,200000, 200000, &usbIntuos5,    "Intuos Art 
> medium"    },
> +
>       { WACOM_VENDOR_ID, 0x3F, 200000, 200000, &usbCintiqV5,   "Cintiq 21UX"  
>         },
>       { WACOM_VENDOR_ID, 0xC5, 200000, 200000, &usbCintiqV5,   "Cintiq 20WSX" 
>         },
>       { WACOM_VENDOR_ID, 0xC6, 200000, 200000, &usbCintiqV5,   "Cintiq 12WX"  
>         },


------------------------------------------------------------------------------
Site24x7 APM Insight: Get Deep Visibility into Application Performance
APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month
Monitor end-to-end web transactions and take corrective actions now
Troubleshoot faster and improve end-user experience. Signup Now!
http://pubads.g.doubleclick.net/gampad/clk?id=272487151&iu=/4140
_______________________________________________
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel

Reply via email to