From: Michal Hocko <mhocko@suse.cz>
To: linux-mm@kvack.org
Cc: Andrew Morton <akpm@linux-foundation.org>,
Johannes Weiner <hannes@cmpxchg.org>,
David Rientjes <rientjes@google.com>,
Dave Chinner <david@fromorbit.com>, Theodore Ts'o <tytso@mit.edu>,
Mel Gorman <mgorman@suse.de>,
Tetsuo Handa <penguin-kernel@I-love.SAKURA.ne.jp>,
"David S. Miller" <davem@davemloft.net>,
sparclinux@vger.kernel.org, Vipul Pandya <vipul@chelsio.com>,
netdev@vger.kernel.org, LKML <linux-kernel@vger.kernel.org>
Subject: [RFC 1/4] mm: Clarify __GFP_NOFAIL deprecation status
Date: Mon, 2 Mar 2015 14:54:40 +0100 [thread overview]
Message-ID: <1425304483-7987-2-git-send-email-mhocko@suse.cz> (raw)
In-Reply-To: <1425304483-7987-1-git-send-email-mhocko@suse.cz>
__GFP_NOFAIL is documented as a deprecated flag since 478352e789f5 (mm:
add comment about deprecation of __GFP_NOFAIL). This has discouraged
people from using it but in some cases an opencoded endless loop around
allocator has been used instead. So the allocator is not aware of the
de facto __GFP_NOFAIL allocation because this information was not
communicated properly.
Let's make clear that if the allocation context really cannot effort
failure because there is no good failure policy then using __GFP_NOFAIL
is preferable to opencoding the loop outside of the allocator.
Signed-off-by: Michal Hocko <mhocko@suse.cz>
---
include/linux/gfp.h | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/include/linux/gfp.h b/include/linux/gfp.h
index 51bd1e72a917..0cf9c2772988 100644
--- a/include/linux/gfp.h
+++ b/include/linux/gfp.h
@@ -57,8 +57,10 @@ struct vm_area_struct;
* _might_ fail. This depends upon the particular VM implementation.
*
* __GFP_NOFAIL: The VM implementation _must_ retry infinitely: the caller
- * cannot handle allocation failures. This modifier is deprecated and no new
- * users should be added.
+ * cannot handle allocation failures. New users should be evaluated carefuly
+ * (and the flag should be used only when there is no reasonable failure policy)
+ * but it is definitely preferable to use the flag rather than opencode endless
+ * loop around allocator.
*
* __GFP_NORETRY: The VM implementation must not retry indefinitely.
*
--
2.1.4
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
next prev parent reply other threads:[~2015-03-02 13:55 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-03-02 13:54 [RFC PATCH 0/4] Clarify and cleanup some __GFP_NOFAIL usage Michal Hocko
2015-03-02 13:54 ` Michal Hocko [this message]
2015-03-02 20:34 ` [RFC 1/4] mm: Clarify __GFP_NOFAIL deprecation status David Rientjes
2015-03-02 13:54 ` [RFC 2/4] jbd2: revert must-not-fail allocation loops back to GFP_NOFAIL Michal Hocko
2015-03-02 20:33 ` David Rientjes
2015-03-02 21:42 ` Michal Hocko
2015-03-02 13:54 ` [RFC 3/4] sparc: remove __GFP_NOFAIL reuquirement Michal Hocko
2015-03-02 20:04 ` David Miller
2015-03-02 20:33 ` Michal Hocko
2015-03-02 20:44 ` David Miller
2015-03-02 21:36 ` [PATCH] sparc: clarify __GFP_NOFAIL allocation Michal Hocko
2015-03-02 21:45 ` David Miller
2015-03-02 13:54 ` [RFC 4/4] cxgb4: drop " Michal Hocko
2015-03-03 12:22 ` Tetsuo Handa
2015-03-03 13:18 ` Michal Hocko
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1425304483-7987-2-git-send-email-mhocko@suse.cz \
--to=mhocko@suse.cz \
--cc=akpm@linux-foundation.org \
--cc=davem@davemloft.net \
--cc=david@fromorbit.com \
--cc=hannes@cmpxchg.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=mgorman@suse.de \
--cc=netdev@vger.kernel.org \
--cc=penguin-kernel@I-love.SAKURA.ne.jp \
--cc=rientjes@google.com \
--cc=sparclinux@vger.kernel.org \
--cc=tytso@mit.edu \
--cc=vipul@chelsio.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox