public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/3] bitmap: multiword allocations and region restructuring.
@ 2006-01-27 14:04 Paul Mundt
  2006-01-27 14:05 ` [PATCH 1/3] bitmap: region cleanup Paul Mundt
                   ` (2 more replies)
  0 siblings, 3 replies; 4+ messages in thread
From: Paul Mundt @ 2006-01-27 14:04 UTC (permalink / raw)
  To: Andrew Morton, Paul Jackson; +Cc: James Bottomley, tony, linux-kernel

This trivial patch set implements a number of patches to clean up and
restructure the bitmap region code, in addition to extending the
interface to support multiword spanning allocations.

The current implementation (before this patch set) is limited by only
being able to allocate pages <= BITS_PER_LONG, as noted by the
strategically positioned BUG_ON() at lib/bitmap.c:752:

        /* We don't do regions of pages > BITS_PER_LONG.  The
	 * algorithm would be a simple look for multiple zeros in the
	 * array, but there's no driver today that needs this.  If you
	 * trip this BUG(), you get to code it... */
        BUG_ON(pages > BITS_PER_LONG);

As I seem to have been the first person to trigger this, the result ends
up being the following patch set with the help of Paul Jackson.

The final patch in the series eliminates quite a bit of code duplication,
so the bitmap code size ends up being smaller than the current
implementation as an added bonus.

After these are applied, it should already be possible to do multiword
allocations with dma_alloc_coherent() out of ranges established by
dma_declare_coherent_memory() on x86 without having to change any of the code,
and the SH store queue API will follow up on this as the other user that needs
support for this.

---

 include/linux/bitmap.h |    3 
 lib/bitmap.c           |  371 ++++++++++++++++++++++++++++---------------------
 2 files changed, 218 insertions(+), 156 deletions(-)

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2006-01-27 14:06 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-01-27 14:04 [PATCH 0/3] bitmap: multiword allocations and region restructuring Paul Mundt
2006-01-27 14:05 ` [PATCH 1/3] bitmap: region cleanup Paul Mundt
2006-01-27 14:06 ` [PATCH 2/3] bitmap: region multiword spanning support Paul Mundt
2006-01-27 14:06 ` [PATCH 3/3] bitmap: region restructuring Paul Mundt

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox