svn commit: r338679 - head/lib/libusb
Kyle Evans
kevans at freebsd.org
Wed Oct 2 12:55:58 UTC 2019
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.
Thanks,
Kyle Evans
More information about the svn-src-all
mailing list