Re: [PATCH] md/raid0: use kvzalloc/kvfree for strip_zone and devlist allocations
"Yu Kuai" <[email protected]>
| Newsgroups | gmane.linux.raid,gmane.linux.kernel,gmane.linux.kernel.mm |
|---|---|
| Message-ID | <[email protected]> |
Hi, 在 2026/3/9 7:42, Gregory Price 写道: > syzbot reported a WARNING at mm/page_alloc.c:__alloc_frozen_pages_noprof() > triggered by create_strip_zones() in the RAID0 driver. > > When raid_disks is large, the allocation size exceeds MAX_PAGE_ORDER (4MB > on x86), causing WARN_ON_ONCE_GFP(order > MAX_PAGE_ORDER). > > Convert the strip_zone and devlist allocations from kzalloc/kzalloc_objs to > kvzalloc/kvzalloc_objs, which first attempts a contiguous allocation with > __GFP_NOWARN and then falls back to vmalloc for large sizes. Convert the > corresponding kfree calls to kvfree. > > Both arrays are pure metadata lookup tables (arrays of pointers and zone > descriptors) accessed only via indexing, so they do not require physically > contiguous memory. > > Reported-by:[email protected] Reported-by should be followed by Closes tag, applied tom md-7.1 with following tag: Closes:[syzbot] [mm?] WARNING in create_strip_zones - syzbot <https://lore.kernel.org/all/[email protected]/> > Signed-off-by: Gregory Price<[email protected]> > --- > drivers/md/raid0.c | 18 +++++++++--------- > 1 file changed, 9 insertions(+), 9 deletions(-) -- Thansk, Kuai