lkml.org 
[lkml]   [1998]   [Mar]   [13]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Subjectx86 memsize > 1Gb patches.
Date
From

Is the module versioning system going to pick up on differences in
CONFIG_MAX_MEMSIZE?

Functions such as phys_to_virt et. al. are going to be horribly broken when we
compile modules with a different CONFIG_MAX_MEMSIZE to the kernel we're using.
I _know_ that the correct answer might be "user education", but we're not
designing an Alpha CPU here.

Should we make an outline version of the affected functions, and force the
modules to use that instead?

If this involves too much overhead, then perhaps we could make the
kernel's value of PAGE_OFFSET available to the modules, and their inline
function could use the value of that global variable.

Something like:
(in io.h)

#ifdef MODULE
#define __io_virt(x) ((void *)(kernel_page_offset | (unsigned long)(x)))
#define __io_phys(x) ((unsigned long)(x) & ~kernel_page_offset)
#else
#define __io_virt(x) ((void *)(PAGE_OFFSET | (unsigned long)(x)))
#define __io_phys(x) ((unsigned long)(x) & ~PAGE_OFFSET)
#endif

(in i386_ksyms.c)

EXPORT_SYMBOL(kernel_page_offset);

(somewhere else)

unsigned long kernel_page_offset = PAGE_OFFSET;



---- ---- ----
David Woodhouse, Robinson College, CB3 9AN, England. (+44) 0976 658355
Dave@imladris.demon.co.uk http://dwmw2.robinson.cam.ac.uk
finger pgp@dwmw2.robinson.cam.ac.uk for PGP key.



-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu

\
 
 \ /
  Last update: 2005-03-22 13:41    [W:0.065 / U:0.296 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site