master/slave.c
changeset 2027 ac35f4d38a31
parent 1998 0330fdcbdd1f
child 2029 5ef6507fc77a
equal deleted inserted replaced
2026:68c1c31522a2 2027:ac35f4d38a31
   192     while (!list_empty(&slave->slave_sdo_requests)) {
   192     while (!list_empty(&slave->slave_sdo_requests)) {
   193         ec_master_sdo_request_t *request =
   193         ec_master_sdo_request_t *request =
   194             list_entry(slave->slave_sdo_requests.next,
   194             list_entry(slave->slave_sdo_requests.next,
   195                 ec_master_sdo_request_t, list);
   195                 ec_master_sdo_request_t, list);
   196         list_del_init(&request->list); // dequeue
   196         list_del_init(&request->list); // dequeue
   197         EC_SLAVE_WARN(slave, "Discarding SDO request,"
   197         EC_SLAVE_WARN(slave, "Discarding SDO request %p,"
   198                 " slave about to be deleted.\n");
   198                 " slave about to be deleted.\n",request);
   199         request->req.state = EC_INT_REQUEST_FAILURE;
   199         request->req.state = EC_INT_REQUEST_FAILURE;
       
   200         kref_put(&request->refcount,ec_master_sdo_request_release);
   200         wake_up(&slave->sdo_queue);
   201         wake_up(&slave->sdo_queue);
   201     }
   202     }
   202 
   203 
   203     while (!list_empty(&slave->foe_requests)) {
   204     while (!list_empty(&slave->foe_requests)) {
   204         ec_master_foe_request_t *request =
   205         ec_master_foe_request_t *request =