Skip to content

Commit 916a9f3

Browse files
committed
tools headers: Update the linux/gfp_types.h copy with the kernel sources
To pick up the changes in: f3ec502 ("mm/slab: mark alloc tags empty for sheaves allocated with __GFP_NO_OBJ_EXT") 241b3a0 ("mm: clarify GFP_ATOMIC/GFP_NOWAIT doc-comment") That just adds some comments, so no changes in perf tooling, just silences this build warning: Warning: Kernel ABI header differences: diff -u tools/include/linux/gfp_types.h include/linux/gfp_types.h Please see tools/include/uapi/README. Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
1 parent ecd5a2f commit 916a9f3

1 file changed

Lines changed: 7 additions & 2 deletions

File tree

tools/include/linux/gfp_types.h

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -139,6 +139,8 @@ enum {
139139
* %__GFP_ACCOUNT causes the allocation to be accounted to kmemcg.
140140
*
141141
* %__GFP_NO_OBJ_EXT causes slab allocation to have no object extension.
142+
* mark_obj_codetag_empty() should be called upon freeing for objects allocated
143+
* with this flag to indicate that their NULL tags are expected and normal.
142144
*/
143145
#define __GFP_RECLAIMABLE ((__force gfp_t)___GFP_RECLAIMABLE)
144146
#define __GFP_WRITE ((__force gfp_t)___GFP_WRITE)
@@ -309,8 +311,10 @@ enum {
309311
*
310312
* %GFP_ATOMIC users can not sleep and need the allocation to succeed. A lower
311313
* watermark is applied to allow access to "atomic reserves".
312-
* The current implementation doesn't support NMI and few other strict
313-
* non-preemptive contexts (e.g. raw_spin_lock). The same applies to %GFP_NOWAIT.
314+
* The current implementation doesn't support NMI, nor contexts that disable
315+
* preemption under PREEMPT_RT. This includes raw_spin_lock() and plain
316+
* preempt_disable() - see "Memory allocation" in
317+
* Documentation/core-api/real-time/differences.rst for more info.
314318
*
315319
* %GFP_KERNEL is typical for kernel-internal allocations. The caller requires
316320
* %ZONE_NORMAL or a lower zone for direct access but can direct reclaim.
@@ -321,6 +325,7 @@ enum {
321325
* %GFP_NOWAIT is for kernel allocations that should not stall for direct
322326
* reclaim, start physical IO or use any filesystem callback. It is very
323327
* likely to fail to allocate memory, even for very small allocations.
328+
* The same restrictions on calling contexts apply as for %GFP_ATOMIC.
324329
*
325330
* %GFP_NOIO will use direct reclaim to discard clean pages or slab pages
326331
* that do not require the starting of any physical IO.

0 commit comments

Comments
 (0)