> I am writing sendpage (this is called when sendfile system call is used)
> function for my protocol. User application calls with socket and filename,
> kernel maps file and pass struct page * to sendpage function.
>
> I use following expression to get virtual address and copy data
>
> virtual_address = phys_to_virt(page_to_pfn(page) << PAGE_SHIFT);
>
> This works fine on Pentium III machine with 515324 KB memory, but when I run
> same code on Xeon with 2074604 KB memory, I get
>
> Unable to handle kernel paging request at virtual address 3ab6c000
>
> Is this because this address (struct page *) is not mapped ? how do I check
> in my code whether it is mapped or not, since it is mapped on Pentium.
>
> Thanks for help.
Guys I need help.
On i386 machine, I get
* page 0xc1342180
* virtual da10c00
and on Xeon
* page 0xc1fc5ce0
* virtual 0x3a09d000
Is virtual address in case of Xeon not mapped ? do I need to map it ?
_________________________________________________________________
Put your friends on the big screen with Windows Vista® + Windows Live™.
http://www.microsoft.com/windows/shop/specialoffers.mspx?ocid=TXT_TAGLM_CPC_MediaCtr_bigscreen_102007
--
To unsubscribe from this list: send an email with
"unsubscribe kernelnewbies" to [EMAIL PROTECTED]
Please read the FAQ at http://kernelnewbies.org/FAQ