On Tue, Jan 08, 2013 at 07:49:21AM -0700, Liu Bo wrote: > During fsync, we put the changed parts(i.e. extent map) into the log tree, > and we ship these parts from a list of modified_extents to a local list > to process, of course, we must increment the refs of the extent maps to > avoid it from getting evicted from cache. > > The problem is > we don't hold the tree writer lock all the time of iterating the local list, > and it is possible that other threads hack in and delete the extent map from > the local list silently. So we'll end up with memory leak here. > > I hit this when testing xfstest 274 with mount options 'autodefrag,compress=zlib'. > > With this fix, the memory leak has gone away. This isn't going to work, we use the LOGGING flag to make sure the em isn't merged as well. Thanks, Josef -- To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html
