diff options
author | Christoph Hellwig <hch@infradead.org> | 2010-01-20 16:55:30 -0500 |
---|---|---|
committer | Alex Elder <aelder@sgi.com> | 2010-01-21 14:44:56 -0500 |
commit | bdfb04301fa5fdd95f219539a9a5b9663b1e5fc2 (patch) | |
tree | 6d50b1c71d1f227cf1800ee0531a475266ef6da8 /fs/xfs/xfs_itable.c | |
parent | a14a348bff2f99471a28e5928eb6801224c053d8 (diff) |
xfs: replace KM_LARGE with explicit vmalloc use
We use the KM_LARGE flag to make kmem_alloc and friends use vmalloc
if necessary. As we only need this for a few boot/mount time
allocations just switch to explicit vmalloc calls there.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Alex Elder <aelder@sgi.com>
Diffstat (limited to 'fs/xfs/xfs_itable.c')
-rw-r--r-- | fs/xfs/xfs_itable.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/fs/xfs/xfs_itable.c b/fs/xfs/xfs_itable.c index 940307a6a60b..3af02314c605 100644 --- a/fs/xfs/xfs_itable.c +++ b/fs/xfs/xfs_itable.c | |||
@@ -408,8 +408,10 @@ xfs_bulkstat( | |||
408 | (XFS_INODE_CLUSTER_SIZE(mp) >> mp->m_sb.sb_inodelog); | 408 | (XFS_INODE_CLUSTER_SIZE(mp) >> mp->m_sb.sb_inodelog); |
409 | nimask = ~(nicluster - 1); | 409 | nimask = ~(nicluster - 1); |
410 | nbcluster = nicluster >> mp->m_sb.sb_inopblog; | 410 | nbcluster = nicluster >> mp->m_sb.sb_inopblog; |
411 | irbuf = kmem_zalloc_greedy(&irbsize, PAGE_SIZE, PAGE_SIZE * 4, | 411 | irbuf = kmem_zalloc_greedy(&irbsize, PAGE_SIZE, PAGE_SIZE * 4); |
412 | KM_SLEEP | KM_MAYFAIL | KM_LARGE); | 412 | if (!irbuf) |
413 | return ENOMEM; | ||
414 | |||
413 | nirbuf = irbsize / sizeof(*irbuf); | 415 | nirbuf = irbsize / sizeof(*irbuf); |
414 | 416 | ||
415 | /* | 417 | /* |
@@ -727,7 +729,7 @@ xfs_bulkstat( | |||
727 | /* | 729 | /* |
728 | * Done, we're either out of filesystem or space to put the data. | 730 | * Done, we're either out of filesystem or space to put the data. |
729 | */ | 731 | */ |
730 | kmem_free(irbuf); | 732 | kmem_free_large(irbuf); |
731 | *ubcountp = ubelem; | 733 | *ubcountp = ubelem; |
732 | /* | 734 | /* |
733 | * Found some inodes, return them now and return the error next time. | 735 | * Found some inodes, return them now and return the error next time. |