Re: [PATCH 06/43] mm: numa: Make pte_numa() and pmd_numa() a generic implementation

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

 



On Fri, Nov 16, 2012 at 07:04:04PM +0100, Ingo Molnar wrote:
> 
> * Mel Gorman <mgorman@xxxxxxx> wrote:
> 
> > That said, your approach just ends up being heavier. [...]
> 
> Well, it's more fundamental than just whether to inline or not 
> (which I think should be a separate optimization and I won't 
> object to two-instruction variants the slightest) - but you 
> ended up open-coding change_protection() 
> via:
> 
>    change_prot_numa_range() et al
> 
> which is a far bigger problem...
> 
> Do you have valid technical arguments in favor of that 
> duplication?
> 

No, I don't and I have not claimed that it *has* to exist. In fact I've
said multiple times than I can convert to change_protection as long as
_PAGE_NUMA == _PAGE_NONE. This initial step was to build the list
of requirements without worrying about breaking existing users of
change_protection. Now that I know what the requirements are, I can convert.

> If you just embrace the PROT_NONE reuse approach of numa/core 
> then 90% of the differences in your tree will disappear and 
> you'll have a code base very close to where numa/core was 3 
> weeks ago already, modulo a handful of renames.
> 

Pointed out the missing parts in another mail already -- MIGRATE_FAULT,
pmd handling in batch, stats and a logical progression from a simple to
a complex policy.

> It's not like PROT_NONE will go away anytime soon.
> 
> PROT_NONE is available on every architecture, and we use the 
> exact semantics of it in the scheduler, we just happen to drive 
> it from a special worklet instead of a syscall, and happen to 
> have a callback to the faults when they happen...
> 
> Please stay open to that approach.
> 

I will.

If anything, me switching to prot_none would be a hell of a lot easier
than you trying to pick up the bits you're missing. I'll take a look
Monday and see what falls out.

-- 
Mel Gorman
SUSE Labs

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@xxxxxxxxx.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@xxxxxxxxx";> email@xxxxxxxxx </a>


[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]