Files
mirror_zfs/include
Brian Behlendorf eb0f407a2b Add PF_NOFS debugging flag
PF_NOFS is a per-process debug flag which is set in current->flags to
detect when a process is performing an unsafe allocation.  All tasks
with PF_NOFS set must strictly use KM_PUSHPAGE for allocations because
if they enter direct reclaim and initiate I/O they may deadlock.

When debugging is disabled, any incorrect usage will be detected and
a call stack with a warning will be printed to the console.  The flags
will then be automatically corrected to allow for safe execution.  If
debugging is enabled this will be treated as a fatal condition.

To avoid any risk of conflicting with the existing PF_ flags.  The
PF_NOFS bit shadows the rarely used PF_MUTEX_TESTER bit.  Only when
CONFIG_RT_MUTEX_TESTER is not set, and we know this bit is unused,
will the PF_NOFS bit be valid.  Happily, most existing distributions
ship a kernel with CONFIG_RT_MUTEX_TESTER disabled.

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
2012-08-27 12:00:55 -07:00
..
2012-08-27 11:46:23 -07:00
2012-08-27 11:46:23 -07:00
2012-08-27 11:46:23 -07:00
2012-08-27 11:46:23 -07:00
2012-08-27 12:00:55 -07:00
2012-08-27 11:46:23 -07:00
2012-08-27 11:46:23 -07:00
2010-05-17 15:18:00 -07:00
2012-02-09 16:41:46 -08:00
2010-05-17 15:18:00 -07:00
2010-07-20 13:29:35 -07:00
2011-06-21 14:02:46 -07:00
2010-05-17 15:18:00 -07:00
2010-05-17 15:18:00 -07:00