aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--include/linux/futex.h4
-rw-r--r--kernel/futex.c11
2 files changed, 4 insertions, 11 deletions
diff --git a/include/linux/futex.h b/include/linux/futex.h
index 99650353adfa..92d420fe03f8 100644
--- a/include/linux/futex.h
+++ b/include/linux/futex.h
@@ -149,10 +149,6 @@ union futex_key {
149 int offset; 149 int offset;
150 } both; 150 } both;
151}; 151};
152int get_futex_key(u32 __user *uaddr, struct rw_semaphore *shared,
153 union futex_key *key);
154void get_futex_key_refs(union futex_key *key);
155void drop_futex_key_refs(union futex_key *key);
156 152
157#ifdef CONFIG_FUTEX 153#ifdef CONFIG_FUTEX
158extern void exit_robust_list(struct task_struct *curr); 154extern void exit_robust_list(struct task_struct *curr);
diff --git a/kernel/futex.c b/kernel/futex.c
index 32710451dc20..9dc591ab681a 100644
--- a/kernel/futex.c
+++ b/kernel/futex.c
@@ -181,8 +181,8 @@ static inline int match_futex(union futex_key *key1, union futex_key *key2)
181 * For other futexes, it points to &current->mm->mmap_sem and 181 * For other futexes, it points to &current->mm->mmap_sem and
182 * caller must have taken the reader lock. but NOT any spinlocks. 182 * caller must have taken the reader lock. but NOT any spinlocks.
183 */ 183 */
184int get_futex_key(u32 __user *uaddr, struct rw_semaphore *fshared, 184static int get_futex_key(u32 __user *uaddr, struct rw_semaphore *fshared,
185 union futex_key *key) 185 union futex_key *key)
186{ 186{
187 unsigned long address = (unsigned long)uaddr; 187 unsigned long address = (unsigned long)uaddr;
188 struct mm_struct *mm = current->mm; 188 struct mm_struct *mm = current->mm;
@@ -268,14 +268,13 @@ int get_futex_key(u32 __user *uaddr, struct rw_semaphore *fshared,
268 } 268 }
269 return err; 269 return err;
270} 270}
271EXPORT_SYMBOL_GPL(get_futex_key);
272 271
273/* 272/*
274 * Take a reference to the resource addressed by a key. 273 * Take a reference to the resource addressed by a key.
275 * Can be called while holding spinlocks. 274 * Can be called while holding spinlocks.
276 * 275 *
277 */ 276 */
278inline void get_futex_key_refs(union futex_key *key) 277static void get_futex_key_refs(union futex_key *key)
279{ 278{
280 if (key->both.ptr == 0) 279 if (key->both.ptr == 0)
281 return; 280 return;
@@ -288,13 +287,12 @@ inline void get_futex_key_refs(union futex_key *key)
288 break; 287 break;
289 } 288 }
290} 289}
291EXPORT_SYMBOL_GPL(get_futex_key_refs);
292 290
293/* 291/*
294 * Drop a reference to the resource addressed by a key. 292 * Drop a reference to the resource addressed by a key.
295 * The hash bucket spinlock must not be held. 293 * The hash bucket spinlock must not be held.
296 */ 294 */
297void drop_futex_key_refs(union futex_key *key) 295static void drop_futex_key_refs(union futex_key *key)
298{ 296{
299 if (!key->both.ptr) 297 if (!key->both.ptr)
300 return; 298 return;
@@ -307,7 +305,6 @@ void drop_futex_key_refs(union futex_key *key)
307 break; 305 break;
308 } 306 }
309} 307}
310EXPORT_SYMBOL_GPL(drop_futex_key_refs);
311 308
312static u32 cmpxchg_futex_value_locked(u32 __user *uaddr, u32 uval, u32 newval) 309static u32 cmpxchg_futex_value_locked(u32 __user *uaddr, u32 uval, u32 newval)
313{ 310{