Re: [PATCH 03/12] mm: Share the anon_vma ref counts between KSMand page migration

From: Mel Gorman
Date: Fri Feb 19 2010 - 16:58:46 EST


On Fri, Feb 19, 2010 at 04:42:18PM -0500, Rik van Riel wrote:
> On 02/18/2010 01:02 PM, Mel Gorman wrote:
>
>> struct anon_vma {
>> spinlock_t lock; /* Serialize access to vma list */
>> -#ifdef CONFIG_KSM
>> - atomic_t ksm_refcount;
>> -#endif
>> -#ifdef CONFIG_MIGRATION
>> - atomic_t migrate_refcount;
>> +#if defined(CONFIG_KSM) || defined(CONFIG_MIGRATION)
>> +
>> + /*
>> + * The refcount is taken by either KSM or page migration
>> + * to take a reference to an anon_vma when there is no
>> + * guarantee that the vma of page tables will exist for
>> + * the duration of the operation. A caller that takes
>> + * the reference is responsible for clearing up the
>> + * anon_vma if they are the last user on release
>> + */
>> + atomic_t refcount;
>
> Calling it just refcount is probably confusing, since
> the anon_vma is also referenced by being on the chain
> with others.
>
> Maybe "other_refcount" because it is refcounts taken
> by things other than VMAs? I am sure there is a better
> name possible...
>

external_refcount is about as good as I can think of to explain what's
going on :/

--
Mel Gorman
Part-time Phd Student Linux Technology Center
University of Limerick IBM Dublin Software Lab
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/