Christiaan Simons wrote:
Hi folks,
I've started to work on bug #17922, but I need some help from you folks.
If you have some spare time and want to fix this as much as I do,
please have a look at what I've just commited to mem.c rev 1.26
I've had a look. It looks fine from a reading. Also I don't think we should
handle near fits. Firstly, from the point of view of keeping it simple, and
secondly because I don't think you could sensibly handle them anyway since
you _always_ need to have an aligned struct mem following. A struct mem is
only three words after all.
Please note this doesn't address possible alignment issues yet,
I want to save this after nailing the algorithm down.
I don't think there are any in your changes, from my reading. ptr will be
aligned as long as it started off aligned. SIZEOF_STRUCT_MEM will be
appropriately aligned for the architecture, and size has been rounded up.
But I think there is a pre-existing problem - the ram array may only have
byte alignment, but mem_init assigns a (struct mem *) to its base which may
have stronger alignment constraints.
So in mem_init, it should actually be something like:
mem = (struct mem*)((ram + MEM_ALIGNMENT - 1) & ~(MEM_ALIGNMENT-1));
Jifl
--
eCosCentric http://www.eCosCentric.com/ The eCos and RedBoot experts
------["The best things in life aren't things."]------ Opinions==mine
_______________________________________________
lwip-users mailing list
[email protected]
http://lists.nongnu.org/mailman/listinfo/lwip-users