Author: hselasky
Date: Mon Jan 24 17:38:37 2011
New Revision: 217793
URL: http://svn.freebsd.org/changeset/base/217793

Log:
  Add more sanity checks for USB_HOST_ALIGN input values. Re-factor existing
  checks for readability.
  
  Approved by:  thompsa (mentor)

Modified:
  head/sys/dev/usb/usb_freebsd.h

Modified: head/sys/dev/usb/usb_freebsd.h
==============================================================================
--- head/sys/dev/usb/usb_freebsd.h      Mon Jan 24 17:08:26 2011        
(r217792)
+++ head/sys/dev/usb/usb_freebsd.h      Mon Jan 24 17:38:37 2011        
(r217793)
@@ -46,12 +46,15 @@
 #define        USB_TD_GET_PROC(td) (td)->td_proc
 #define        USB_PROC_GET_GID(td) (td)->p_pgid
 
-#if defined(USB_HOST_ALIGN) && (USB_HOST_ALIGN != 0)
-/* USB_HOST_ALIGN is already defined and valid */
-#else
+#if (!defined(USB_HOST_ALIGN)) || (USB_HOST_ALIGN <= 0)
+/* Use default value. */
 #undef USB_HOST_ALIGN
 #define        USB_HOST_ALIGN    8             /* bytes, must be power of two 
*/
 #endif
+/* Sanity check for USB_HOST_ALIGN: Verify power of two. */
+#if ((-USB_HOST_ALIGN) & USB_HOST_ALIGN) != USB_HOST_ALIGN
+#error "USB_HOST_ALIGN is not power of two."
+#endif
 #define        USB_FS_ISOC_UFRAME_MAX 4        /* exclusive unit */
 #define        USB_BUS_MAX 256                 /* units */
 #define        USB_MAX_DEVICES 128             /* units */
_______________________________________________
[email protected] mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "[email protected]"

Reply via email to