Re: [PATCH 15/20] Move swsusp __pa() dependent code to arch portion

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


On Wed, Mar 07, 2007 at 11:47:40PM +0100, Pavel Machek wrote:
> Hi!
> 
> > o __pa() should be used only on kernel linearly mapped virtual addresses
> >   and not on kernel text and data addresses.
> > 
> > o Hibernation code needs to determine the physical address associated
> >   with kernel symbol to mark a section boundary which contains pages which
> >   don't have to be saved and restored during hibernate/resume operation.
> > 
> > o Move this piece of code in arch dependent section. So that architectures
> >   which don't have kernel text/data mapped into kernel linearly mapped
> >   region can come up with their own ways of determining physical addresses
> >   associated with a kernel text.
> > 
> > Signed-off-by: Vivek Goyal <vgoyal@xxxxxxxxxx>
> 
> ...hmm, but that means 3 copies of same code. Can we put the
> 

Actually it is not exactly same code. i386 and x86_64 use __pa_symbol()
and powerpc uses __pa() for determining physical address associated with
a kernel text symbol. That's the precise intent here. Leave it to arch
code to decide how to calculate physical address associated with a kernel
symbol.

> > +/*
> > + *	pfn_is_nosave - check if given pfn is in the 'nosave' section
> > + */
> > +
> > +int pfn_is_nosave(unsigned long pfn)
> > +{
> > +	unsigned long nosave_begin_pfn = __pa_symbol(&__nosave_begin) >> PAGE_SHIFT;
> > +	unsigned long nosave_end_pfn = PAGE_ALIGN(__pa_symbol(&__nosave_end)) >> PAGE_SHIFT;
> > +	return (pfn >= nosave_begin_pfn) && (pfn < nosave_end_pfn);
> > +}
> 
> ...in asm-generic/suspend.h (or something) and then just include it?
> 									Pavel

As code is not exactly same, we can't put it in asm-generic/suspend.h.

Thanks
Vivek
_______________________________________________
fastboot mailing list
fastboot@xxxxxxxxxxxxxx
https://lists.osdl.org/mailman/listinfo/fastboot


[Netdev]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Photo]     [Yosemite]     [Yosemite Forum]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]     [Linux Media]     [Linux Resources]

Powered by Linux