On Wed 18-09-19 16:02:52, Xiubo Li wrote:
On 2019/9/18 15:25, Michal Hocko wrote:Ohh, I do not think this would be senseless. I just think that the NOIO
On Wed 18-09-19 04:58:20, xiubli@xxxxxxxxxx wrote:Yeah, it true.
From: Xiubo Li <xiubli@xxxxxxxxxx>Historically GFP_NOIO has always implied GFP_NOFS as well. I can imagine
The GFP_NOIO means all further allocations will implicitly drop
both __GFP_IO and __GFP_FS flags and so they are safe for both the
IO critical section and the the critical section from the allocation
recursion point of view. Not only the __GFP_IO, which a bit confusing
when reading the code or using the save/restore pair.
that this might come as an surprise for somebody not familiar with the
code though.
I am wondering whether your update of the documentationThe "Documentation/core-api/gfp_mask-from-fs-io.rst" is already very detail
would be better off at __GFP_FS, __GFP_IO resp. GFP_NOFS, GFP_NOIO level.
This interface is simply a way to set a scoped NO{IO,FS} context.
about them all.
This fixing just means to make sure that it won't surprise someone who is
having a quickly through some code and not familiar much about the detail.
It may make not much sense ?
implying NOFS as well should be described at the level where they are
documented rather than the api you have chosen.