ts-7000
[Top] [All Lists]

Re: [ts-7000] Re: [2.6.28.3-m] Fix sparsemem bug

To:
Subject: Re: [ts-7000] Re: [2.6.28.3-m] Fix sparsemem bug
From: Christian Gagneraud <>
Date: Thu, 12 Feb 2009 18:37:16 +0000
charliem_1216 wrote:
> Hi Matthieu --
> 

Hi,

> No, something is still wrong with sparsemem:  I can generate an oops
> from userspace by 'cat /proc/pagetypeinfo'.  This is the same symptoms
> as reported here for FLATMEM:
> http://marc.info/?l=linux-arm-kernel&m=121933133810688&w=4

Sh*t! perhaps you should give it a try on the 2.6.28.5 which have just 
been released!

> 
> The patch there is already in the 2.6.28.4 kernel.  That's the
> ARCH_FLATMEM_HAS_HOLES patch, and it doesn't fix the problem for
> SPARSEMEM either.  (I force-enabled it for a test...).
> 
> I'm not sure where to go from here, but it seems time to post to LAK
> ML, to:
> * point out in-line function vs #define issue ... 

That's a good idea, i was thinking to check if other platforms use the 
inline function as well, but i'm on the field for now...

> * post fix for correct __virt_to_phys and __phys_to_virt #defines

Yes, and why not posting other patches as well, a good start point 
would be to submit all EP related stuff first.

> * Ask for help in fixing the above oops.

Sure, the above point would help for this, as stuff are in the 
mainline, it is more likely that problems will be fixed quicker, and 
that we'll get help from some ARM guru! :)

> 
> Let me know if you want the oops posted.  (BTW, my testing is done
> with the mapping by the #defines I posted, not the inline functions ...)

I think that's a very good idea to discuss this on the ARM mailing 
list, and (then) submit the patch.

Chris.

> 
> regards, ......... Charlie
> 
> 
> --- In  Matthieu Crapet <> wrote:
>> Hi,
>>
>> Congratulations to all of you :)
>> Anybody can confirm that the 2 defines are working fine ?
>> I will update my patchset later.
>>
>> Matthieu
>>
>>
>> charliem_1216 wrote:
>>>
>>>
>>> I think this is confusing and not needed. Why not just have the
>>> following #defines:
>>>
>>> #define __phys_to_virt(p) \
>>> (((p) & 0x07ffffff) | (((p) & 0xe0000000) ? 0x08000000 : 0) |
>>> CONFIG_PAGE_OFFSET)
>>> #define __virt_to_phys(v) \
>>> (((v) & 0x07ffffff) | (((v) & 0x08000000) ? 0xe0000000 : 0 ))
>>>
>>> regards, ......... Charlie
>>>
>>>> #define SECTION_SIZE_BITS 24
>>>> #define MAX_PHYSMEM_BITS 32
>>>>
>>>
> 
> 
> 
> 
> ------------------------------------
> 
> Yahoo! Groups Links
> 
> 
> 



------------------------------------

Yahoo! Groups Links

<*> To visit your group on the web, go to:
    http://groups.yahoo.com/group/ts-7000/

<*> Your email settings:
    Individual Email | Traditional

<*> To change settings online go to:
    http://groups.yahoo.com/group/ts-7000/join
    (Yahoo! ID required)

<*> To change settings via email:
     
    

<*> To unsubscribe from this group, send an email to:
    

<*> Your use of Yahoo! Groups is subject to:
    http://docs.yahoo.com/info/terms/

<Prev in Thread] Current Thread [Next in Thread>
Admin

Disclaimer: Neither Andrew Taylor nor the University of NSW School of Computer and Engineering take any responsibility for the contents of this archive. It is purely a compilation of material sent by many people to the birding-aus mailing list. It has not been checked for accuracy nor its content verified in any way. If you wish to get material removed from the archive or have other queries about the archive e-mail Andrew Taylor at this address: andrewt@cse.unsw.EDU.AU