On 3/25/17, Jeff Mahoney <je...@suse.com> wrote: > On 3/24/17 5:02 AM, Denis Kirjanov wrote: >> Hi guys, >> >> Looks like that current code does GFP_KERNEL allocation inside >> __link_block_group. >> the function invokes kobject_add and internally creates sysfs files >> with the GFP_KERNEL flag set. > > Yep, that's a bug. > >> But since do_chunk_alloc executes insides the btrfs transaction it's >> not allowed to sleep. > > It's allowed to sleep but isn't allowed to do reclaim that involves file > system writeback. Michal Hocko's allocation context idea would fix > this, but it's not there yet, so we'll need to defer the kobject_add > until we can use GFP_KERNEL.
Ok, I see. Can you point out to the initial patchset? Thanks! > > -Jeff > > -- > Jeff Mahoney > SUSE Labs > >