On Tue, Nov 02, 2004 at 07:31:39PM +0100, Pierre Ossman wrote:Ok. I'll stick with __GFP_REPEAT for now then. If things break in the future it should be fairly obvious that this is the problem. Any users of the driver will probably point out that it's broken rather quickly :)
Yes, I've browsed through these. __GFP_NOFAIL seems like it can hang for a very long time (I don't know if there is an upper bound on how long it will have to wait for a free page). __GFP_REPEAT seems to work good enough in this case.
My question was meant to be more along the lines of "Is there anything I can do without resorting to unstable/interal API:s?".
Not really.
They are not that unstable, I shouldnt mean that.
These defines are not as stable as system calls - VM internals might change in v2.7 and the flags also - but for v2.6 they are very likely to remain untouched.
Its just like any driver API in Linux - they change.
Just keep an eye.