| From robert.richter@amd.com Tue Dec 13 14:38:03 2011 |
| From: Xiao Guangrong <xiaoguangrong@cn.fujitsu.com> |
| Date: Tue, 13 Dec 2011 00:40:34 +0100 |
| Subject: export __get_user_pages_fast() function |
| To: Greg KH <greg@kroah.com> |
| Cc: <stable@vger.kernel.org>, oprofile-list <oprofile-list@lists.sourceforge.net> |
| Message-ID: <1323733236-1402-2-git-send-email-robert.richter@amd.com> |
| |
| |
| From: Xiao Guangrong <xiaoguangrong@cn.fujitsu.com> |
| |
| commit 45888a0c6edc305495b6bd72a30e66bc40b324c6 upstream. |
| |
| Backport for stable kernel v2.6.32.y to v2.6.36.y. |
| |
| Needed for next patch: |
| |
| oprofile, x86: Fix nmi-unsafe callgraph support |
| |
| This function is used by KVM to pin process's page in the atomic context. |
| |
| Define the 'weak' function to avoid other architecture not support it |
| |
| Acked-by: Nick Piggin <npiggin@suse.de> |
| Signed-off-by: Xiao Guangrong <xiaoguangrong@cn.fujitsu.com> |
| Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com> |
| Signed-off-by: Robert Richter <robert.richter@amd.com> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> |
| --- |
| mm/util.c | 13 +++++++++++++ |
| 1 file changed, 13 insertions(+) |
| |
| --- a/mm/util.c |
| +++ b/mm/util.c |
| @@ -233,6 +233,19 @@ void arch_pick_mmap_layout(struct mm_str |
| } |
| #endif |
| |
| +/* |
| + * Like get_user_pages_fast() except its IRQ-safe in that it won't fall |
| + * back to the regular GUP. |
| + * If the architecture not support this fucntion, simply return with no |
| + * page pinned |
| + */ |
| +int __attribute__((weak)) __get_user_pages_fast(unsigned long start, |
| + int nr_pages, int write, struct page **pages) |
| +{ |
| + return 0; |
| +} |
| +EXPORT_SYMBOL_GPL(__get_user_pages_fast); |
| + |
| /** |
| * get_user_pages_fast() - pin user pages in memory |
| * @start: starting user address |