#9836 BLOC 1.5-sof: BUG() in if_sdio_handle_cmd()

Zarro Boogs per Child bugtracker at laptop.org
Wed Jan 6 09:09:33 EST 2010


#9836: BUG() in if_sdio_handle_cmd()
--------------------------------+-------------------------------------------
           Reporter:  dsaxena   |       Owner:  dsaxena            
               Type:  defect    |      Status:  new                
           Priority:  blocker   |   Milestone:  1.5-software-update
          Component:  kernel    |     Version:  1.5-B3             
         Resolution:            |    Keywords:                     
        Next_action:  diagnose  |    Verified:  0                  
Deployment_affected:            |   Blockedby:                     
           Blocking:            |  
--------------------------------+-------------------------------------------

Comment(by dsd):

 sequence of events:

  * cmd 6 (scan) submitted
  * cmd 6 response received
  * system starts to suspend
  * cmd 43 (host sleep cfg) submitted
  * cmd 43 response received
  * cmd 45 (host sleep activate) submitted
  * cmd 45 response received
  * CPU goes to sleep
  * CPU woken up by incoming packet
  * event 1 arrives (unknown)
  * event 18 arrives (MACREG_INT_CODE_HOST_AWAKE)
    * NOTE: this event does arrive on every resume. in fact, it can be seen
 as the cause of the crash - when it arrives, the crash happens soon after
  * in response to event 18, lbs_send_confirmwake() '''directly''' submits
 cmd 44 (wakeup confirm) (without going through the normal
 queuing/threading infrastructure) '''and does not wait for response'''
  * cmd 6 (scan) submitted as normal
  * cmd 44 response received (wakeup confirm)
    * full response contents: 44 80 08 00 ae 00 00 00
    * '''not processed''' due to what happens immediately after...:
  * cmd 6 response received
  * cmd 43 (host sleep cfg) submitted
  * cmd 43 response received but this triggers the BUG() due to attempting
 to overwrite the unprocessed wakeup confirm response from above

 so, 2 issues at hand:
  1. firmware only generates event 18 sometimes - shouldn't it be
 consistent?
  2. handling of event 18 submits cmd 44 without expecting or waiting for a
 response

-- 
Ticket URL: <http://dev.laptop.org/ticket/9836#comment:20>
One Laptop Per Child <http://laptop.org/>
OLPC bug tracking system


More information about the Bugs mailing list