[PATCH 0/4] resources: Add lookup_resource()

From: Geert Uytterhoeven
Date: Sat May 21 2011 - 15:40:08 EST

The resource system is a nice existing subsystem to implement simple allocators
on top of.
Unfortunately, there's no official method to find an existing resource by a
resource start address, which is needed for a freeing function that just takes
the start address of the region to free.

Currently there are 3 users of the resource subsystem that implement this by
traversing the resource tree theirselves:
- The Amiga Chip RAM allocator on m68k,
- iomap()/iounmap() on sparc,
- DMA allocation API on sparc.
They all lack locking of the resource tree, as resource_lock is static in

Hence this patchset adds lookup_resource() and converts the above users to it.

[1/4] sparc: _sparc_find_resource() should check for exact matches
[2/4] resources: Add lookup_resource()
[3/4] m68k/amiga: Chip RAM - Use lookup_resource()
[4/4] sparc: iounmap() and *_free_coherent() - Use lookup_resource()



Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@xxxxxxxxxxxxxx

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/