On Thu, 19 Dec 2013, Rashika Kheria wrote: > Include header file include/linux/usb.h in include/linux/usb/hcd.h > because structures usb_device, usb_host_config and usb_interface have > their definitions in include/linux/usb.h. > > This eliminates the following warning in include/linux/usb/hcd.h: > include/linux/usb/hcd.h:311:44: warning: ‘struct usb_device’ declared inside parameter list [enabled by default] > include/linux/usb/hcd.h:412:10: warning: ‘struct usb_host_config’ declared inside parameter list [enabled by default] > include/linux/usb/hcd.h:614:9: warning: ‘struct usb_interface’ declared inside parameter list [enabled by default] Where does this problem show up? Any file that include linux/usb/hcd.h should include linux/usb.h first. IMO it would be better to fix the source files that don't do the includes properly. Of course, people have varying opinions on this issue. As far as I know, there is no fixed policy in the kernel about nested includes. Alan Stern -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html