[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[lwip-devel] [task #7490] Add return value to sys_mbox_post
From: |
Simon Goldschmidt |
Subject: |
[lwip-devel] [task #7490] Add return value to sys_mbox_post |
Date: |
Mon, 26 Nov 2007 19:33:19 +0000 |
User-agent: |
Mozilla/5.0 (Windows; U; Windows NT 5.1; de; rv:1.8.1.9) Gecko/20071025 Firefox/2.0.0.9 |
Follow-up Comment #9, task #7490 (project lwip):
I've put together the places where sys_mbox_post is used:
- multiple places in api_msg.c: conn->mbox (used like semaphore -> we could
convert it to a semaphore!) should not block, since tcpip_thread would be
blocked
- recv_raw(), recv_udp(), recv_tcp(): conn->recvmbox: may not block since
tcpip_thread would be blocked
- err_tcp(), accept_function(): conn->acceptmbox: may not block since
tcpip_thread would be blocked
- tcpip_input(): post work to tcpip_thread may not block since maybe called
from interrupt
tcpip_callback(), tcpip_timeout(), tcpip_apimsg(), tcpip_netifapi(): post
work to tcpip_thread (may wait since called from application thread?)
So in fact those are 6 places where sys_mbox_post may not block and 4 where
it may block (if we convert conn->mbox to a sem). I think those 6 places don't
make the code that big... And we would gain a lot of safety, in my opinion...
We would need a flag (block or don't block) and a return value for that. Or
we only take the return value and never block...
Jonathan, Kieran, what is your opinion about this?
_______________________________________________________
Reply to this item at:
<http://savannah.nongnu.org/task/?7490>
_______________________________________________
Nachricht geschickt von/durch Savannah
http://savannah.nongnu.org/
- [lwip-devel] [task #7490] Add return value to sys_mbox_post, Simon Goldschmidt, 2007/11/25
- [lwip-devel] [task #7490] Add return value to sys_mbox_post, Frédéric Bernon, 2007/11/25
- [lwip-devel] [task #7490] Add return value to sys_mbox_post, Simon Goldschmidt, 2007/11/25
- [lwip-devel] [task #7490] Add return value to sys_mbox_post, Frédéric Bernon, 2007/11/25
- [lwip-devel] [task #7490] Add return value to sys_mbox_post, Simon Goldschmidt, 2007/11/25
- [lwip-devel] [task #7490] Add return value to sys_mbox_post, Samuel Thibault, 2007/11/26
- [lwip-devel] [task #7490] Add return value to sys_mbox_post, Frédéric Bernon, 2007/11/26
- [lwip-devel] [task #7490] Add return value to sys_mbox_post, Simon Goldschmidt, 2007/11/26
- [lwip-devel] [task #7490] Add return value to sys_mbox_post, Jared Grubb, 2007/11/26
- [lwip-devel] [task #7490] Add return value to sys_mbox_post, Samuel Thibault, 2007/11/26
- [lwip-devel] [task #7490] Add return value to sys_mbox_post,
Simon Goldschmidt <=
- [lwip-devel] [task #7490] Add return value to sys_mbox_post, Frédéric Bernon, 2007/11/26
- [lwip-devel] [task #7490] Add return value to sys_mbox_post, Jonathan Larmour, 2007/11/26
- [lwip-devel] [task #7490] Add return value to sys_mbox_post, Frédéric Bernon, 2007/11/26
- [lwip-devel] [task #7490] Add return value to sys_mbox_post, Simon Goldschmidt, 2007/11/27
- [lwip-devel] [task #7490] Add return value to sys_mbox_post, Kieran Mansley, 2007/11/27