lwIP - A Lightweight TCP/IP stack - Tasks: task #6957, make mem_free work with NO_SYS=1...
You are not allowed to post comments on this tracker with your current authentication level.
task #6957: make mem_free work with NO_SYS=1 to free pbufs from interrupt context
Submitter: | Simon Goldschmidt <goldsimon> | ||
Submitted: | Thu 31 May 2007 08:17:48 AM UTC | ||
Category: | None | Should Start On: | Thu 31 May 2007 12:00:00 AM UTC |
Should be Finished on: | Thu 31 May 2007 12:00:00 AM UTC | Priority: | 1 - Later |
Status: | Cancelled | Privacy: | Public |
Assigned to: | None | Percent Complete: | 0% |
Open/Closed: | Closed | Planned Release: | None |
Effort: | 0.00 |
Thu 21 Jun 2007 08:17:03 PM UTC, comment #2: |
Simon Goldschmidt <goldsimon> |
Fri 08 Jun 2007 04:48:48 PM UTC, comment #1:
|
Simon Goldschmidt <goldsimon> |
Thu 31 May 2007 08:17:48 AM UTC, original submission:
With the current implementation, with NO_SYS=1, the heap is not protected from concurrent access at all. In a no-sys, interrupt driven system, we have SYS_ARCH_PROTECT to protect things like the memp pools, but have chosen not to use this to protect the heap as it turns off interrupts for too long. The downside is that (if we have no semaphores) the heap is not protected at all, which means packets can't be freed (e.g. in a TX interrupt routine) if they are of type PBUF_RAM (as most TX packets are).
|
Simon Goldschmidt <goldsimon> |
No files currently attached
Depends on the following items: None found
Items that depend on this one: None found
There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.
Follow 2 latest changes.
Date | Changed by | Updated Field | Previous Value | => | Replaced by |
---|---|---|---|---|---|
2007-06-21 | goldsimon | Status | None | Cancelled | |
Open/Closed | Open | Closed |
Powered by Savane 3.13-758e.
Corresponding source code
I think this can be closed: simply use the option MEM_USE_POOLS if this is a problem.