Merge branch 'linux-4.7' of git://github.com/skeggsb/linux into drm-fixes
[deliverable/linux.git] / arch / arm / kernel / process.c
index 4adfb46e3ee93276ea506b723eb11e33c57459f4..4a803c5a1ff7276859b823a7b9b02dc24ee6e564 100644 (file)
@@ -193,9 +193,9 @@ EXPORT_SYMBOL_GPL(thread_notify_head);
 /*
  * Free current thread data structures etc..
  */
-void exit_thread(void)
+void exit_thread(struct task_struct *tsk)
 {
-       thread_notify(THREAD_NOTIFY_EXIT, current_thread_info());
+       thread_notify(THREAD_NOTIFY_EXIT, task_thread_info(tsk));
 }
 
 void flush_thread(void)
@@ -420,7 +420,8 @@ int arch_setup_additional_pages(struct linux_binprm *bprm, int uses_interp)
        npages = 1; /* for sigpage */
        npages += vdso_total_pages;
 
-       down_write(&mm->mmap_sem);
+       if (down_write_killable(&mm->mmap_sem))
+               return -EINTR;
        hint = sigpage_addr(mm, npages);
        addr = get_unmapped_area(NULL, hint, npages << PAGE_SHIFT, 0, 0);
        if (IS_ERR_VALUE(addr)) {
This page took 0.103804 seconds and 5 git commands to generate.