diff options
author | Haavard Skinnemoen <haavard.skinnemoen@atmel.com> | 2008-03-27 10:24:12 -0400 |
---|---|---|
committer | Haavard Skinnemoen <haavard.skinnemoen@atmel.com> | 2008-03-27 10:31:57 -0400 |
commit | a2a395256134a24d906d5e67e03e853c580b37ed (patch) | |
tree | 752692d1d77fdad32484c6d5d50005d0de48f367 /arch/avr32/kernel/setup.c | |
parent | 957ecd7dc835d40d110e8c8f460d1956420f86b1 (diff) |
avr32: Fix bug in early resource allocation code
add_reserved_region() tries to keep the resource list sorted, so when
looking for a place to insert the new resource, it may break out
before the last entry.
When this happens, the list is broken in two because the sibling field
of the new entry doesn't point to the next resource. Fix it by
updating the new resource's sibling field appropriately.
Signed-off-by: Haavard Skinnemoen <haavard.skinnemoen@atmel.com>
Diffstat (limited to 'arch/avr32/kernel/setup.c')
-rw-r--r-- | arch/avr32/kernel/setup.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/avr32/kernel/setup.c b/arch/avr32/kernel/setup.c index e66a07a928cd..2687b730e2d0 100644 --- a/arch/avr32/kernel/setup.c +++ b/arch/avr32/kernel/setup.c | |||
@@ -163,6 +163,7 @@ add_reserved_region(resource_size_t start, resource_size_t end, | |||
163 | new->start = start; | 163 | new->start = start; |
164 | new->end = end; | 164 | new->end = end; |
165 | new->name = name; | 165 | new->name = name; |
166 | new->sibling = next; | ||
166 | new->flags = IORESOURCE_MEM; | 167 | new->flags = IORESOURCE_MEM; |
167 | 168 | ||
168 | *pprev = new; | 169 | *pprev = new; |