Thread (36 messages) 36 messages, 4 authors, 2011-10-17

[PATCH v3 1/6] iommu/core: split mapping to page sizes as supported by the hardware

From: Ohad Ben-Cohen <hidden>
Date: 2011-09-27 13:29:00
Also in: kvm, linux-omap, lkml

On Tue, Sep 27, 2011 at 4:12 PM, Roedel, Joerg [off-list ref] wrote:
You pass a pointer to an unsigned long for the page-size bitmap. This
allows to use an array of unsigned long. But a single unsigned long is
sufficient
This is fine; I can change that if you like it better (though without
doing the change below this is probably moot).
and you can use functions like ffs() and fls() together with
shifting. These functions often translate to a single intruction in the
binary. The find_next_bit function has much more overhead because it
needs to handle the array-of-ulong case.
So you're suggesting to re-implement find_next_bit() using ffs()/fls()
and shifting ?

What's the point ?

Sure, if we'll have a proven performance issue while using
find_next_bit() we can think of doing this, but at this stage, this
sounds to me like a premature optimization which isn't too elegant.

At this point I strongly prefer readable, maintainable and easier to
debug code over optimization which isn't proven to be necessary.

Thanks,
Ohad.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help