Messages in this thread | | | Date | Fri, 31 Oct 2014 17:58:36 +0100 | From | Peter Zijlstra <> | Subject | Re: [PATCH 2/5] mm: gup: add __get_user_pages_unlocked to customize gup_flags |
| |
On Thu, Oct 30, 2014 at 06:43:09PM +0100, Andrea Arcangeli wrote: > On Thu, Oct 30, 2014 at 02:17:37PM +0200, Kirill A. Shutemov wrote: > > On Wed, Oct 29, 2014 at 05:35:17PM +0100, Andrea Arcangeli wrote: > > > diff --git a/mm/gup.c b/mm/gup.c > > > index a8521f1..01534ff 100644 > > > --- a/mm/gup.c > > > +++ b/mm/gup.c > > > @@ -591,9 +591,9 @@ static __always_inline long __get_user_pages_locked(struct task_struct *tsk, > > > int write, int force, > > > struct page **pages, > > > struct vm_area_struct **vmas, > > > - int *locked, bool notify_drop) > > > + int *locked, bool notify_drop, > > > + unsigned int flags) > > > > Argument list getting too long. Should we consider packing them into a > > struct? > > It's __always_inline, so it's certainly not a runtime concern. The > whole point of using __always_inline is to optimize away certain > branches at build time.
Its also exported:
+EXPORT_SYMBOL(__get_user_pages_unlocked);
Note that __always_inline is only valid within the same translation unit (unless you get LTO working).
| |