[lvc-project] [PATCH] mm/vma: Fix hugetlb accounting error in copy_vma()

Fedor Pchelkin pchelkin at ispras.ru
Fri Feb 7 15:39:00 MSK 2025


On Mon, 27. Jan 17:32, Daniil Dulov wrote:
> diff --git a/mm/vma.c b/mm/vma.c
> index bb2119e5a0d0..dbc68b7cd0ec 100644
> --- a/mm/vma.c
> +++ b/mm/vma.c
> @@ -1772,6 +1772,9 @@ struct vm_area_struct *copy_vma(struct vm_area_struct **vmap,
>  	return new_vma;
>  
>  out_vma_link:
> +	/* Avoid vm accounting in close() operation */
> +	new_vma->vm_start = new_vma->vm_end;
> +	new_vma->vm_pgoff = 0;

Даниил, можно попробовать переработать патч, уведя добавляемую логику в
отдельную функцию (возможно inline). Где эту функцию лучше будет
расположить - отдельный вопрос. Точно не в mm/vma.c, а где-то в
hugetlb-файлах. Таким образом данный функционал будет ассоциирован
конкретно с hugetlb и в какой-то степени устранит замечание Lorenzo.

>  	vma_close(new_vma);
>  
>  	if (new_vma->vm_file)



More information about the lvc-project mailing list