Re: [PATCH 2/2] s390/mm: use ipte range to invalidate multiple page table entries

2016-07-06 Thread Martin Schwidefsky
On Wed, 06 Jul 2016 17:26:08 +0800 "Hillf Danton" wrote: > > > > You are still a bit cryptic, > > > Sorry, Sir, simply because I'm not native English speaker. > > > are you trying to tell me that your hint is > > about trying to avoid the preempt_enable() call? > >

Re: [PATCH 2/2] s390/mm: use ipte range to invalidate multiple page table entries

2016-07-06 Thread Martin Schwidefsky
On Wed, 06 Jul 2016 17:26:08 +0800 "Hillf Danton" wrote: > > > > You are still a bit cryptic, > > > Sorry, Sir, simply because I'm not native English speaker. > > > are you trying to tell me that your hint is > > about trying to avoid the preempt_enable() call? > > > Yes, since we are

Re: [PATCH 2/2] s390/mm: use ipte range to invalidate multiple page table entries

2016-07-06 Thread Hillf Danton
> > You are still a bit cryptic, > Sorry, Sir, simply because I'm not native English speaker. > are you trying to tell me that your hint is > about trying to avoid the preempt_enable() call? > Yes, since we are already in the context with page table lock held. thanks Hillf

Re: [PATCH 2/2] s390/mm: use ipte range to invalidate multiple page table entries

2016-07-06 Thread Hillf Danton
> > You are still a bit cryptic, > Sorry, Sir, simply because I'm not native English speaker. > are you trying to tell me that your hint is > about trying to avoid the preempt_enable() call? > Yes, since we are already in the context with page table lock held. thanks Hillf

Re: [PATCH 2/2] s390/mm: use ipte range to invalidate multiple page table entries

2016-07-06 Thread Martin Schwidefsky
On Wed, 06 Jul 2016 14:42:16 +0800 "Hillf Danton" wrote: > > > > > > > > +void ptep_invalidate_range(struct mm_struct *mm, unsigned long start, > > > > + unsigned long end, pte_t *ptep) > > > > +{ > > > > + unsigned long nr; > > > > + > >

Re: [PATCH 2/2] s390/mm: use ipte range to invalidate multiple page table entries

2016-07-06 Thread Martin Schwidefsky
On Wed, 06 Jul 2016 14:42:16 +0800 "Hillf Danton" wrote: > > > > > > > > +void ptep_invalidate_range(struct mm_struct *mm, unsigned long start, > > > > + unsigned long end, pte_t *ptep) > > > > +{ > > > > + unsigned long nr; > > > > + > > > > + if

Re: [PATCH 2/2] s390/mm: use ipte range to invalidate multiple page table entries

2016-07-06 Thread Hillf Danton
> > > > > > +void ptep_invalidate_range(struct mm_struct *mm, unsigned long start, > > > +unsigned long end, pte_t *ptep) > > > +{ > > > + unsigned long nr; > > > + > > > + if (!MACHINE_HAS_IPTE_RANGE || mm_has_pgste(mm)) > > > + return; > > > + preempt_disable(); > > >

Re: [PATCH 2/2] s390/mm: use ipte range to invalidate multiple page table entries

2016-07-06 Thread Hillf Danton
> > > > > > +void ptep_invalidate_range(struct mm_struct *mm, unsigned long start, > > > +unsigned long end, pte_t *ptep) > > > +{ > > > + unsigned long nr; > > > + > > > + if (!MACHINE_HAS_IPTE_RANGE || mm_has_pgste(mm)) > > > + return; > > > + preempt_disable(); > > >

Re: [PATCH 2/2] s390/mm: use ipte range to invalidate multiple page table entries

2016-07-06 Thread Martin Schwidefsky
On Wed, 06 Jul 2016 12:03:28 +0800 "Hillf Danton" wrote: > > > > +void ptep_invalidate_range(struct mm_struct *mm, unsigned long start, > > + unsigned long end, pte_t *ptep) > > +{ > > + unsigned long nr; > > + > > + if (!MACHINE_HAS_IPTE_RANGE

Re: [PATCH 2/2] s390/mm: use ipte range to invalidate multiple page table entries

2016-07-06 Thread Martin Schwidefsky
On Wed, 06 Jul 2016 12:03:28 +0800 "Hillf Danton" wrote: > > > > +void ptep_invalidate_range(struct mm_struct *mm, unsigned long start, > > + unsigned long end, pte_t *ptep) > > +{ > > + unsigned long nr; > > + > > + if (!MACHINE_HAS_IPTE_RANGE || mm_has_pgste(mm)) > >

Re: [PATCH 2/2] s390/mm: use ipte range to invalidate multiple page table entries

2016-07-05 Thread Hillf Danton
> > +void ptep_invalidate_range(struct mm_struct *mm, unsigned long start, > +unsigned long end, pte_t *ptep) > +{ > + unsigned long nr; > + > + if (!MACHINE_HAS_IPTE_RANGE || mm_has_pgste(mm)) > + return; > + preempt_disable(); > + nr = (end -

Re: [PATCH 2/2] s390/mm: use ipte range to invalidate multiple page table entries

2016-07-05 Thread Hillf Danton
> > +void ptep_invalidate_range(struct mm_struct *mm, unsigned long start, > +unsigned long end, pte_t *ptep) > +{ > + unsigned long nr; > + > + if (!MACHINE_HAS_IPTE_RANGE || mm_has_pgste(mm)) > + return; > + preempt_disable(); > + nr = (end -