Make locking of ext_datagram_queue more selective

This commit is contained in:
Bjarne von Horn 2023-11-20 16:50:52 +01:00
parent 13e1e469e1
commit a54fac3090
1 changed files with 2 additions and 2 deletions

View File

@ -1732,9 +1732,7 @@ static int ec_master_eoe_thread(void *priv_data)
ec_eoe_queue(eoe);
}
// (try to) send datagrams
down(&master->ext_queue_sem);
master->send_cb(master->cb_data);
up(&master->ext_queue_sem);
}
schedule:
@ -2513,11 +2511,13 @@ void ecrt_master_send_ext(ec_master_t *master)
{
ec_datagram_t *datagram, *next;
down(&master->ext_queue_sem);
list_for_each_entry_safe(datagram, next, &master->ext_datagram_queue,
queue) {
list_del(&datagram->queue);
ec_master_queue_datagram(master, datagram);
}
up(&master->ext_queue_sem);
ecrt_master_send(master);
}