USB_ATTACH_SETUP macros question
Tofig Suleymanov
tofik at oxygen.az
Thu Aug 17 12:39:03 UTC 2006
> On Thu, Aug 17, 2006 at 05:10:02PM +0500, Tofig Suleymanov wrote:
>> Hello hackers,
>>
>> is there anybody to explain why do we have infinite loop inside of
>> USB_ATTACH_SETUP macros inside of usb_port.h ? How does his loop gets
>> escaped when we use it in some usb driver ?
>>
>> #define USB_ATTACH_SETUP \
>> do { \
>> sc->sc_dev = self; \
>> device_set_desc_copy(self, devinfo); \
>> device_printf(self, "%s\n", devinfo); \
>> } while (0);
>>
>> Thank you !
>>
>> Tofig Suleymanov
>>
> This isn't an infinite loop, in fact it will never be executed.
>
> Baldur
>
Made a little test which shows that this code is going to be executed only
once.How did i miss that :) Now the other question comes next:
Why don not we use just:
#define USB_ATTACH_SETUP \
sc->sc_dev = self; \
device_set_desc_copy(self, devinfo); \
device_printf(self, "%s\n", devinfo);
?
Thank you,
Tofig Suleymanov
More information about the freebsd-usb
mailing list