On Tue, 2015-03-24 at 11:23 +0530, Aneesh Kumar K.V wrote:
> >>/* assume we don't have huge pages in vmalloc space... */
> >>addr = (pte_pfn(*p) << PAGE_SHIFT) | (addr & ~PAGE_MASK);
> >> + local_irq_restore(flags);
> >>return __va(addr);
> >> }
> >
> > This is called in real mode, I
Benjamin Herrenschmidt writes:
> On Mon, 2015-03-23 at 20:30 +0530, Aneesh Kumar K.V wrote:
>
>> -static inline pte_t *lookup_linux_ptep(pgd_t *pgdir, unsigned long hva,
>> +static inline pte_t lookup_linux_pte(pgd_t *pgdir, unsigned long hva,
>> unsigned long *p
On Mon, 2015-03-23 at 20:30 +0530, Aneesh Kumar K.V wrote:
> -static inline pte_t *lookup_linux_ptep(pgd_t *pgdir, unsigned long hva,
> +static inline pte_t lookup_linux_pte(pgd_t *pgdir, unsigned long hva,
>unsigned long *pte_sizep)
> {
> pte_t *ptep;
>
We can disable a THP split or a hugepage collapse by disabling irq.
We do send IPI to all the cpus in the early part of split/collapse,
and disabling local irq ensure we don't make progress with
split/collapse. Before using the pte_t pointer returned by
find_linux_pte_or_hugepte(), we need to make