Re: [PATCH 2/2] x86/mm/pat: Change free_memtype() to free shrinking range

From: Thomas Gleixner
Date: Sun Dec 20 2015 - 04:29:04 EST


Toshi,

On Wed, 9 Dec 2015, Toshi Kani wrote:
> diff --git a/arch/x86/mm/pat_rbtree.c b/arch/x86/mm/pat_rbtree.c
> index 6393108..d6faef8 100644
> --- a/arch/x86/mm/pat_rbtree.c
> +++ b/arch/x86/mm/pat_rbtree.c
> @@ -107,7 +112,12 @@ static struct memtype *memtype_rb_exact_match(struct rb_root *root,
> while (match != NULL && match->start < end) {
> struct rb_node *node;
>
> - if (match->start == start && match->end == end)
> + if ((match_type == MEMTYPE_EXACT_MATCH) &&
> + (match->start == start) && (match->end == end))
> + return match;
> +
> + if ((match_type == MEMTYPE_SHRINK_MATCH) &&
> + (match->start < start) && (match->end == end))

Confused. If we shrink a mapping then I'd expect that the start of the
mapping stays the same and the end changes. I certainly miss something
here, but if the above is correct, then it definitely needs a big fat
comment explaining it.

Thanks,

tglx


--
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/