projects
/
firefly-linux-kernel-4.4.55.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
tracing: Do not add event files for modules that fail tracepoints
[firefly-linux-kernel-4.4.55.git]
/
kernel
/
futex.c
diff --git
a/kernel/futex.c
b/kernel/futex.c
index b26dcfc02c9489b3ca00bfd076f2208bb4964366..a283b3041072dfc2478b322a100ac4d034b681b3 100644
(file)
--- a/
kernel/futex.c
+++ b/
kernel/futex.c
@@
-61,6
+61,7
@@
#include <linux/nsproxy.h>
#include <linux/ptrace.h>
#include <linux/sched/rt.h>
#include <linux/nsproxy.h>
#include <linux/ptrace.h>
#include <linux/sched/rt.h>
+#include <linux/hugetlb.h>
#include <asm/futex.h>
#include <asm/futex.h>
@@
-286,7
+287,7
@@
again:
put_page(page);
/* serialize against __split_huge_page_splitting() */
local_irq_disable();
put_page(page);
/* serialize against __split_huge_page_splitting() */
local_irq_disable();
- if (likely(__get_user_pages_fast(address, 1,
1
, &page) == 1)) {
+ if (likely(__get_user_pages_fast(address, 1,
!ro
, &page) == 1)) {
page_head = compound_head(page);
/*
* page_head is valid pointer but we must pin
page_head = compound_head(page);
/*
* page_head is valid pointer but we must pin
@@
-365,7
+366,7
@@
again:
} else {
key->both.offset |= FUT_OFF_INODE; /* inode-based key */
key->shared.inode = page_head->mapping->host;
} else {
key->both.offset |= FUT_OFF_INODE; /* inode-based key */
key->shared.inode = page_head->mapping->host;
- key->shared.pgoff =
page_head->index
;
+ key->shared.pgoff =
basepage_index(page)
;
}
get_futex_key_refs(key);
}
get_futex_key_refs(key);