Skip to contentSkip to conversation

arch/s390/mm/pgtable.c:744:18: error: implicit declaration of function '

PATCH Janosch Frank 1 participant 1 message Jul 27, 2018 1 message not in the archive s390

lore
Share & tools
lore

A message that is not in the archive (sent off-list or not yet received): 20180727105551.72804e05@mschwideX1

#1 lore raw
Quoted 9 lines · Martin Schwidefsky
Quoted 6 lines · On Fri, 27 Jul 2018 10:13:42 +0200 Janosch Frank <[email protected]> wrote:
Quoted 5 lines · Christian Borntraeger

This is with

# CONFIG_TRANSPARENT_HUGEPAGE is not set
# CONFIG_HUGETLBFS is not set

Quoted 8 lines
Quoted 6 lines
Quoted 2 lines

so we need to fence this.
With hugetlbfs enabled this compiles (and also works fine).

We can either ifdef this three times or create a pmd_alloc_map in pgtable.h.

I think that's Martin's call to make.

Hmm, we have a similar sequence in pgtable.c:test_and_clear_guest_dirty

We had a similar sequence, I removed it :)

Quoted 12 lines
        pgd = pgd_offset(mm, addr);
        p4d = p4d_alloc(mm, pgd, addr);
        if (!p4d)
                return false;
        pud = pud_alloc(mm, p4d, addr);
        if (!pud)
                return false;
        pmd = pmd_alloc(mm, pud, addr);
        if (!pmd)
                return false;
Quoted 3 lines

Why not refactor this sequence into a separate function local to pgtable.c? That way we can avoid using huge_pte_alloc in set_guest_storage_key.

Will do