aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/mempolicy.h
diff options
context:
space:
mode:
authorLee Schermerhorn <lee.schermerhorn@hp.com>2008-04-28 05:13:08 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2008-04-28 11:58:23 -0400
commitf0be3d32b05d3fea2fcdbbb81a39dac2a7163169 (patch)
tree5794ce6a8befbce82cd3e44ff15fbf3bb5f2f3bf /include/linux/mempolicy.h
parent3b1163006332302117b1b2acf226d4014ff46525 (diff)
mempolicy: rename mpol_free to mpol_put
This is a change that was requested some time ago by Mel Gorman. Makes sense to me, so here it is. Note: I retain the name "mpol_free_shared_policy()" because it actually does free the shared_policy, which is NOT a reference counted object. However, ... The mempolicy object[s] referenced by the shared_policy are reference counted, so mpol_put() is used to release the reference held by the shared_policy. The mempolicy might not be freed at this time, because some task attached to the shared object associated with the shared policy may be in the process of allocating a page based on the mempolicy. In that case, the task performing the allocation will hold a reference on the mempolicy, obtained via mpol_shared_policy_lookup(). The mempolicy will be freed when all tasks holding such a reference have called mpol_put() for the mempolicy. Signed-off-by: Lee Schermerhorn <lee.schermerhorn@hp.com> Cc: Christoph Lameter <clameter@sgi.com> Cc: David Rientjes <rientjes@google.com> Cc: Mel Gorman <mel@csn.ul.ie> Cc: Andi Kleen <ak@suse.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'include/linux/mempolicy.h')
-rw-r--r--include/linux/mempolicy.h10
1 files changed, 5 insertions, 5 deletions
diff --git a/include/linux/mempolicy.h b/include/linux/mempolicy.h
index 319fd342b1b7..507bf5e29f24 100644
--- a/include/linux/mempolicy.h
+++ b/include/linux/mempolicy.h
@@ -71,7 +71,7 @@ struct mm_struct;
71 * 71 *
72 * Freeing policy: 72 * Freeing policy:
73 * Mempolicy objects are reference counted. A mempolicy will be freed when 73 * Mempolicy objects are reference counted. A mempolicy will be freed when
74 * mpol_free() decrements the reference count to zero. 74 * mpol_put() decrements the reference count to zero.
75 * 75 *
76 * Copying policy objects: 76 * Copying policy objects:
77 * mpol_copy() allocates a new mempolicy and copies the specified mempolicy 77 * mpol_copy() allocates a new mempolicy and copies the specified mempolicy
@@ -98,11 +98,11 @@ struct mempolicy {
98 * The default fast path of a NULL MPOL_DEFAULT policy is always inlined. 98 * The default fast path of a NULL MPOL_DEFAULT policy is always inlined.
99 */ 99 */
100 100
101extern void __mpol_free(struct mempolicy *pol); 101extern void __mpol_put(struct mempolicy *pol);
102static inline void mpol_free(struct mempolicy *pol) 102static inline void mpol_put(struct mempolicy *pol)
103{ 103{
104 if (pol) 104 if (pol)
105 __mpol_free(pol); 105 __mpol_put(pol);
106} 106}
107 107
108extern struct mempolicy *__mpol_copy(struct mempolicy *pol); 108extern struct mempolicy *__mpol_copy(struct mempolicy *pol);
@@ -190,7 +190,7 @@ static inline int mpol_equal(struct mempolicy *a, struct mempolicy *b)
190 return 1; 190 return 1;
191} 191}
192 192
193static inline void mpol_free(struct mempolicy *p) 193static inline void mpol_put(struct mempolicy *p)
194{ 194{
195} 195}
196 196