summaryrefslogtreecommitdiffstats
path: root/init/initramfs.c
diff options
context:
space:
mode:
authorNathan Scott <nathans@sgi.com>2006-08-10 14:40:41 +1000
committerNathan Scott <nathans@sgi.com>2006-08-10 14:40:41 +1000
commit0e1edbd99994270023cea5afe593f972eb09a778 (patch)
treee4b2618172c17426d200ec435c24daaf606e2437 /init/initramfs.c
parent9f737633e6ee54fc174282d49b2559bd2208391d (diff)
downloadkernel-crypto-0e1edbd99994270023cea5afe593f972eb09a778.tar.gz
kernel-crypto-0e1edbd99994270023cea5afe593f972eb09a778.tar.xz
kernel-crypto-0e1edbd99994270023cea5afe593f972eb09a778.zip
[XFS] Fix xfs_free_extent related NULL pointer dereference.
We recently fixed an out-of-space deadlock in XFS, and part of that fix involved the addition of the XFS_ALLOC_FLAG_FREEING flag to some of the space allocator calls to indicate they're freeing space, not allocating it. There was a missed xfs_alloc_fix_freelist condition test that did not correctly test "flags". The same test would also test an uninitialised structure field (args->userdata) and depending on its value either would or would not return early with a critical buffer pointer set to NULL. This fixes that up, adds asserts to several places to catch future botches of this nature, and skips sections of xfs_alloc_fix_freelist that are irrelevent for the space-freeing case. SGI-PV: 955303 SGI-Modid: xfs-linux-melb:xfs-kern:26743a Signed-off-by: Nathan Scott <nathans@sgi.com>
Diffstat (limited to 'init/initramfs.c')
0 files changed, 0 insertions, 0 deletions