pmd/pud_populate is the right interface to be used to set the respective
page table entries. Some architectures like ppc64 do assume that set_pmd/pud_at
can only be used to set a hugepage PTE. Since we are not setting up a hugepage
PTE here, use the pmd/pud_populate interface.
Signed-off-by: Anees
On Thu, Jun 10, 2021 at 1:36 AM Aneesh Kumar K.V
wrote:
>
> @@ -306,8 +306,7 @@ static bool move_normal_pud(struct vm_area_struct *vma,
> unsigned long old_addr,
>
> VM_BUG_ON(!pud_none(*new_pud));
>
> - /* Set the new pud */
> - set_pud_at(mm, new_addr, new_pud, pud);
> +
Linus Torvalds writes:
> On Thu, Jun 10, 2021 at 1:36 AM Aneesh Kumar K.V
> wrote:
>>
>> @@ -306,8 +306,7 @@ static bool move_normal_pud(struct vm_area_struct *vma,
>> unsigned long old_addr,
>>
>> VM_BUG_ON(!pud_none(*new_pud));
>>
>> - /* Set the new pud */
>> - set_pud_at
On Sun, Jun 13, 2021 at 02:36:13PM +0530, Aneesh Kumar K.V wrote:
> IIUC the reason why we do have pmd_pgtable() is that pgtable_t type
> is arch dependent. On some architecture it is pte_t * and on the other
> struct page *. The reason being highmem and level 4 page table can
> be located in highm
On 6/13/21 4:20 PM, Matthew Wilcox wrote:
On Sun, Jun 13, 2021 at 02:36:13PM +0530, Aneesh Kumar K.V wrote:
IIUC the reason why we do have pmd_pgtable() is that pgtable_t type
is arch dependent. On some architecture it is pte_t * and on the other
struct page *. The reason being highmem and level
On Sun, Jun 13, 2021 at 2:06 AM Aneesh Kumar K.V
wrote:
>
> IIUC the reason why we do have pmd_pgtable() is that pgtable_t type
> is arch dependent. On some architecture it is pte_t * and on the other
> struct page *. The reason being highmem and level 4 page table can
> be located in highmem.
Ho
Le 13/06/2021 à 13:13, Aneesh Kumar K.V a écrit :
On 6/13/21 4:20 PM, Matthew Wilcox wrote:
On Sun, Jun 13, 2021 at 02:36:13PM +0530, Aneesh Kumar K.V wrote:
IIUC the reason why we do have pmd_pgtable() is that pgtable_t type
is arch dependent. On some architecture it is pte_t * and on the o