Source-Changes-D archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: CVS commit: src



On 2/17/12 7:11 PM, Julio Merino wrote:
On 2/17/12 6:42 PM, Matt Thomas wrote:

On Feb 17, 2012, at 3:11 PM, Julio Merino wrote:

On 2/17/12 6:06 PM, Matt Thomas wrote:

On Feb 17, 2012, at 3:02 PM, Julio Merino wrote:
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.)

They should still use PAGE_SIZE which should evaluate to
uvmexp.pagesize

Now you lost me. You started saying that PAGE_SIZE is explicitly not
available, and now you say that the modules have to use PAGE_SIZE?

The problem is that PAGE_SIZE is NOT being evaluated to
uvmexp.pagesize as you mention. It's being evaluated to
uvmexp_pagesize, which does not exist and thus causes the module to
not load. And that's what this test is all about.

Hmmm. I think uvmexp_pagesize, etal is there to avoid needed uvmexp
defined.

The problem was:

--- uvm_param.h 29 Nov 2011 07:43:54 -0000 1.26
+++ uvm_param.h 17 Feb 2012 23:40:50 -0000
@@ -134,7 +134,7 @@
* If MIN_PAGE_SIZE and MAX_PAGE_SIZE are not equal, then we must use
* non-constant PAGE_SIZE, et al for LKMs.
*/
-#if (MIN_PAGE_SIZE != MAX_PAGE_SIZE)&& defined(_LKM)
+#if (MIN_PAGE_SIZE != MAX_PAGE_SIZE)&& (defined(_LKM) ||
defined(MODULAR))
#undef PAGE_SIZE
#undef PAGE_MASK
#undef PAGE_SHIFT


I have applied this patch and rebuilt the affected test module... and it
still won't load. Wasn't that supposed to be _MODULE instead of MODULAR?

Oh, but even doing that change, the module won't load either. PAGE_SIZE still ends up being defined as uvmexp_pagesize... which I believe is correct, right? because the size must be represented as a variable... but that variable is not available in the built kernel.

Home | Main Index | Thread Index | Old Index