summaryrefslogtreecommitdiff
path: root/include/linux/sched.h
diff options
context:
space:
mode:
authorLinux Build Service Account <lnxbuild@localhost>2019-06-30 03:26:38 -0700
committerLinux Build Service Account <lnxbuild@localhost>2019-06-30 03:26:38 -0700
commitf6f18bf58a688e45e149708a00659bd1010ef94c (patch)
treeaea1549c4c8f28ad359a92b7702481b2cb369d20 /include/linux/sched.h
parentc9d92a953ba0dffba643376ec463754a88db107a (diff)
parent17c66e9e49a181498ae3c75809c98fdbe630de28 (diff)
Merge 17c66e9e49a181498ae3c75809c98fdbe630de28 on remote branch
Change-Id: I49238aefe09bba152a8000c046959157c328f183
Diffstat (limited to 'include/linux/sched.h')
-rw-r--r--include/linux/sched.h7
1 files changed, 6 insertions, 1 deletions
diff --git a/include/linux/sched.h b/include/linux/sched.h
index 35074a03fcf4..ccd0f37dcff7 100644
--- a/include/linux/sched.h
+++ b/include/linux/sched.h
@@ -3016,12 +3016,17 @@ extern struct mm_struct * mm_alloc(void);
/* mmdrop drops the mm and the page tables */
extern void __mmdrop(struct mm_struct *);
-static inline void mmdrop(struct mm_struct * mm)
+static inline void mmdrop(struct mm_struct *mm)
{
if (unlikely(atomic_dec_and_test(&mm->mm_count)))
__mmdrop(mm);
}
+static inline bool mmget_not_zero(struct mm_struct *mm)
+{
+ return atomic_inc_not_zero(&mm->mm_users);
+}
+
/* mmput gets rid of the mappings and all user-space */
extern int mmput(struct mm_struct *);
/* same as above but performs the slow path from the async kontext. Can