On 2/17/12 5:58 PM, Matt Thomas wrote:
On Feb 17, 2012, at 2:54 PM, Julio Merino wrote:
On 2/17/12 5:45 PM, Matt Thomas wrote:
On Feb 17, 2012, at 2:43 PM, Julio Merino wrote:
So the modules are broken on purpose?
Yes.
Interesting. If that's the case, shouldn't we break PAGE_SIZE for all
platforms and keep things consistent?
For those with variable page sizes (like powerpc or mips), yes.
I was asking about *all* platforms regardless of whether they have
static or variable page sizes. Keeping this inconsistent seems like a
very easy way of writing non-portable code...
The modules that are broken (see the referenced PR for a list) fail due to a
missing uvmexp_pagesize symbol (*not* PAGE_SIZE itself), which I assumed was
there to prevent depending on the PAGE_SIZE compile-time constant. I
understand this information not being statically-available because of
variable-page sizes in these platforms.
properly should use uvmexp.pagesize instead.
Aha, I see. Does it make sense to keep the test after renaming
PAGE_SIZE to uvmexp.pagesize? It's a public symbol after all and we
really should have tests for these, I think.
Do we need to go over the broken modules one by one and replace
PAGE_SIZE with uvmexp.pagesize? (I'm expecting this won't be as easy as
it sounds due to preprocessor conditionals et. al.)
Thanks!