> 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

Reply via email to