Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

linuxÖÐusbÇý¶¯µÄtimeroutÎÊÌâ

ÔÚbulk·¢ËͺͽÓÊÕUSBÊý¾Ýʱºò.ºÜ¶à»áµ÷ÓÃÒ»¸öusb_submit_urbº¯Êý.  ÇëÎÊÈçºÎÉèÖÃtimeroutʱ¼äÒç³öÈÃUSBÔڹ涨µÄʱ¼äÄÚÎÞ·¨Íê³É¾Í·ÅÆú¸Ãurb²Ù×÷. ÎÒû·¢ÏÖÔÚÄÄÀï¿ÉÒÔÉèÖÃtimerout²ÎÊý°¡.



Õâ¸öÄãµÄ¿´¿´ÄãµÄUSBÇý¶¯Ìṩ¸øÄãµÄ½Ó¿Ú¡£

¸ú kmallocÒ»Ñù£¬¼È¿ÉÒÔÓÃÔÚÖжÏÉÏÏÂÎÄ£¬Ò²¿ÉÒÔÓÃÔÚ½ø³ÌÉÏÏÂÎÄ£¬Ò²Ã»Óеط½ÉèÖÃkmallocµÄ³¬Ê±
usb_submit_urbÒ²Ò»Ñù

usb_bulk_msg() ¿ÉÒÔʵÏÖtimeout

usb_bulk_msg() ¿ØÖÆ´«ÊäȷʵÊÇ¿ÉÒÔʵÏÖtimeout. ÅúÁ¿´«Êä¾ÍÊÇ¿´²»³öÈçºÎʵÏÖtimeout. ÎÒ¿´ÁËÎÒµÄusbÇý¶¯Ò²Ã»¿´µ½ÓÐÈκεÄtimeout²ÎÊý, ÕâÑùÈç¹ûUSB´«Êä¶ÂÈûÊÇ·ñ»áµ¼ÖÂϵͳµÄusbËøËÀ? 

linuxûÄÇô²»¾­¸ã°É
¿ÉÒÔµ÷ÓÃusb_submit_urbÖ®ºó²é¿´struct urbµÄstatusÅжÏÊÇ·ñ³É¹¦
¾ÍÊÇ˵ËüÒ²ÔÊÐíʧ°Ü£¬¿ØÖÆÈ¨»¹»¹¸øÄ㣬²»»áÒ»Ö±Ö´ÐÐÏÂÈ¥µÄ

ȷʵ»á·µ»Ø²¢ÇÒurb->statusΪʧ°Ü±êÖ¾. ÎÒÏëÖªµÀUSBÊÇÔõôÅжÏÊÇʧ°ÜµÄ? ÊÇÔÚijʱ¼ä¶ÎÄÚÎÞ·¨·¢ËÍ/½ÓÊÕµ½Êý¾ÝÅж¨ÎªÊ§°ÜÂð?
ÁíÍâ. Èç¹ûÊǽÓÊÕÒ»¸öUSBÊý¾Ý°üʱºò,ÊÇͨ¹ýʲôÀ´Åжϳɹ¦½ÓÊÕµ½¸ÃÍêÕûÊý¾Ý°ü? ÎÒ¿´µ½ÎÒµÄUSBÓ¦Óò㲢ûÓд«¸ÃÊý¾Ý°ü´óС²ÎÊý. Ö»ÌṩÁËÒ»¸ö4kBµÄbuff¸øurb. 

usb_fill_int_urb ÀïÓÐÒ»¸ö²ÎÊýÖ¸¶¨»º³åÇø´óС£¬¶ÔÓ¦struct urbÀïµÄtransfer_buffer_length

ÎÒ»¹Ã»ÓзÖÎöusb_submit_urbµÄÄÜÁ¦
²é¿´´úÂëµÃÖªusb_submit_urbµ÷ÓÃÁË usb_hcd_submit_urb
usb_hcd_submit_urb Àï×îºó
if (atomic_read(&urb->reject))
    wake_up(&usb_kill_urb_queue);
urb->rejectÊÇÖ»ÄÜÓÉUSBºËÐĺÍÖ÷»ú¿ØÖÆÆ÷·ÃÎʵ쬱»ÖÃλ±íʾ´«Ê佫ʧ°Ü
ÓÚÊÇ»½ÐÑÁËusb_kill_urb_queue ¶


Ïà¹ØÎÊ´ð£º

linux ÏÂusbÉ豸Çý¶¯ÎÊÌ⣿

linux ÏÂusbÉ豸£¬ÔÚrootȨÏÞÏ£¬É豸¿ÉÒÔÕý³£ÕÒµ½Çý¶¯£¬ 
µ«ÔÚÆÕͨÓû§ÏÂÕÒ²»µ½É豸Çý¶¯£¬
ÔõÑù²Å¿ÉÒÔÔÚÆÕͨÓû§ÏÂʹÓÃusbÉ豸£¿
Çë¸ßÊÖÖ¸½Ì
°ï¶¥Ï¡¢

ûÓöµ½¹ý£¬ÎÒÓõÄfedoraÆÕͨÓû§Ä¬ÈϵÄÒ²ÄÜÓðɣ ......

linuxÏÂÁ¬½ÓoracleÊý¾Ý¿âÂý - Oracle / ¸ß¼¶¼¼Êõ

±¾À´Ã»ÎÊÌâµÄ£¬µ«ÊÇÏÖÔÚ²»¹ÜÓÃʲô¹¤¾ßÁ¬Êý¾Ý¿â¶¼ºÜÂý£¬ÒòΪºóÀ´·þÎñÆ÷Öжà¼ÓÁË¿éÍø¿¨£¬¶øÊý¾Ý¿â¼àÌýÉèÖõϹÊÇ·þÎñÆ÷Ãû£¬ÎÒÏë»á²»»áÊÇÕâ¸öÎÊÌ⣬Çë½Ì¸ßÊÖ£¬²¢Ñ¯Îʽâ¾ö·½·¨£¡Ð»Ð»
×Ô¼ºÏȶ¥ÏÂ

°Ñºó¼ÓµÄÍø¿¨ÄõôÔÚ ......

cÓïÑÔʵÏÖlinux timeÏà¹Øº¯Êý - C/C++ / CÓïÑÔ

ÏÖÔÚÐèÒªÔÚÒ»¸öǶÈëʽϵͳÖÐʵÏÖʱ¼äº¯Êý£¬±àÒëÆ÷δÌṩtime¿âº¯Êý£¬ÇëÎÊ´ó¼ÒÈçºÎÓÃcÓïÑÔʵÏÖʱ¼äº¯Êý°¡£¿
ÄêÔÂÈÕʱ·ÖÃë µ½ ÕûÊýÃ루´Ó1970Ä꿪ʼ£© Ö®¼äµÄÏà¹Ø×ª»»°¡
ÀàËÆmktime ºÍlocaltimeµÄ¹¦ÄÜ£¬Ð»Ð»
mktime ......

linux ³¬Ê±ÖØ´« - Linux/UnixÉçÇø / ³ÌÐò¿ª·¢Çø

½«ËùÒª·¢Ë͵Ätcp°ü·ÅÔÚ·¢ËͶÓÁÐÖУ¬Èç¹ûÔÚ15ÃëÄÚûÊÕµ½ACK£¬¾ÍÖØ·¢£¬ÏëÇëÎÊ´ó¼Ò£¬ÕâÑùÊDz»ÊÇÒª¶Ôÿ¸öTCP°ü¼Ó¶¨Ê±Æ÷°¢£¬³ýÁËÓÃalarm,»¹ÄÜÓÃʲôÁË£¿
Äã¸ãÓ¦Óõϰ²»ÐèÒª¹ØÐÄtcpЭÒéÕ»ÊÇÔõô´¦ÀíµÄ°¡
tcpЭÒéÕ»ÓÐÖØ· ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ