[LU-1402] cfs_alloc_flags_to_gfp should translate CFS_ALLOC_HIGH to __GFP_HIGHMEM instead of __GFP_HIGH Created: 14/May/12  Updated: 16/Jun/12  Resolved: 11/Jun/12

Status: Resolved
Project: Lustre
Component/s: None
Affects Version/s: None
Fix Version/s: Lustre 2.3.0

Type: Bug Priority: Major
Reporter: Isaac Huang (Inactive) Assignee: Di Wang
Resolution: Fixed Votes: 0
Labels: None

Issue Links:
Related
is related to LU-1513 Test failure on test lustre-initializ... Closed
Severity: 3
Bugzilla ID: 22,135
Rank (Obsolete): 4596

 Description   

According to the comment above CFS_ALLOC_HIGH, the flag allows allocator to return memory in the highmen zone:
/* allow to return page beyond KVM. It has to be mapped into KVM by

  • cfs_page_map(); */

But cfs_alloc_flags_to_gfp() converts it to __GFP_HIGH, which according to kernel header:
#define __GFP_HIGH 0x20 /* Should access emergency pools? */

I think __GFP_HIGHMEM should be used instead. Also it makes sense to rename CFS_ALLOC_HIGH to CFS_ALLOC_HIGHMEM to avoid further confusion.



 Comments   
Comment by Isaac Huang (Inactive) [ 14/May/12 ]

Fix pushed to http://review.whamcloud.com/2732

Comment by Liang Zhen (Inactive) [ 14/May/12 ]

Isaac, there is a patch which can totally clean up our allocators: http://review.whamcloud.com/#change,2523
it will be landed to 2.3 after review and test

we probably don't need a separate patch to reduce code conflict? I guess it's not a critical bug because __GFP_HIGHMEM don't have too many use cases in Lustre and most are in obdecho,

Comment by Peter Jones [ 11/Jun/12 ]

Landed for 2.3

Generated at Sat Feb 10 01:16:18 UTC 2024 using Jira 9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c.