On 10 Mar 2004, Eric W. Biederman wrote:
It has the additional comment:
/* Get the resource granularity */ gran = 1UL << resource->gran;
/* For a non bridge resource granularity and alignment are the same. * For a bridge resource align is the largest needed alignment below * the bridge. While the granularity is simply how many low bits of the * address cannot be set. */
/* Get the limit (rounded up) */ limit = base + ((resource->size + gran - 1UL) & ~(gran - 1UL)) -1UL;
not to worry, Ollie and I fixed it too. We're going to have some real collisions when you commit.
We are using the round() function for clarity, e.g. limit = base + round(resource->size, gran) - 1UL;
ron