svn commit: r338679 - head/lib/libusb

Hans Petter Selasky hps at selasky.org
Wed Oct 2 12:59:21 UTC 2019


On 2019-10-02 14:55, Kyle Evans wrote:
> On Fri, Sep 14, 2018 at 8:41 AM Hans Petter Selasky
> <hselasky at freebsd.org> wrote:
>>
>> Author: hselasky
>> Date: Fri Sep 14 13:41:37 2018
>> New Revision: 338679
>> URL: https://svnweb.freebsd.org/changeset/base/338679
>>
>> Log:
>>    Improve LibUSB debugging by simultaneously allowing both function
>>    and transfer prints. Make sure the debug level comes from the
>>    correct USB context.
>>
>>    Found by:             Ludovic Rousseau <ludovic.rousseau+freebsd at gmail.com>
>>    PR:                   231264
>>    MFC after:            1 week
>>    Approved by:          re (kib)
>>    Sponsored by:         Mellanox Technologies
>>
>> Modified:
>>    head/lib/libusb/libusb10.h
>>    head/lib/libusb/libusb10_io.c
>>
>> Modified: head/lib/libusb/libusb10.h
>> ==============================================================================
>> --- head/lib/libusb/libusb10.h  Fri Sep 14 01:52:34 2018        (r338678)
>> +++ head/lib/libusb/libusb10.h  Fri Sep 14 13:41:37 2018        (r338679)
>> @@ -41,22 +41,24 @@
>>   #define        HOTPLUG_LOCK(ctx) pthread_mutex_lock(&(ctx)->hotplug_lock)
>>   #define        HOTPLUG_UNLOCK(ctx) pthread_mutex_unlock(&(ctx)->hotplug_lock)
>>
>> -#define        DPRINTF(ctx, dbg, format, args...) do { \
>> -    if ((ctx)->debug == dbg) {                 \
>> -       switch (dbg) {                          \
>> -       case LIBUSB_DEBUG_FUNCTION:             \
>> -               printf("LIBUSB_FUNCTION: "      \
>> -                   format "\n", ## args);      \
>> -               break;                          \
>> -       case LIBUSB_DEBUG_TRANSFER:             \
>> -               printf("LIBUSB_TRANSFER: "      \
>> -                   format "\n", ## args);      \
>> -               break;                          \
>> -       default:                                \
>> -               break;                          \
>> -       }                                       \
>> -    }                                          \
>> -} while(0)
>> +#define        DPRINTF(ctx, dbg, format, ...) do {                     \
>> +       switch (dbg) {                                          \
>> +       case LIBUSB_DEBUG_FUNCTION:                             \
>> +               if ((ctx)->debug & LIBUSB_DEBUG_FUNCTION) {     \
>> +                       printf("LIBUSB_FUNCTION: "              \
>> +                              format "\n", ## __VA_ARGS__);    \
>> +               }                                               \
>> +               break;                                          \
>> +       case LIBUSB_DEBUG_TRANSFER:                             \
>> +               if ((ctx)->debug & LIBUSB_DEBUG_TRANSFER) {     \
>> +                       printf("LIBUSB_TRANSFER: "              \
>> +                              format "\n", ## __VA_ARGS__);    \
>> +               }                                               \
>> +               break;                                          \
>> +       default:                                                \
>> +               break;                                          \
>> +       }                                                       \
>> +} while (0)
>>
>>   /* internal structures */
>>
> 
> Hi,
> 
> How are people/users of libusb supposed to disable these messages
> after this? The only thing stopping them was the debug level in the
> context, I guess, because DPRINTF is always compiled to this and the
> users of DPRINTF are just invoking it all willy-nilly.
> 

Feel free to submit a patch. Maybe you need to make a new option for 
user-space like WITH_USB_DEBUG ....

--HPS



More information about the svn-src-all mailing list