read_extent_buffer(leaf, tmp, ptr, inline_size);
+ max_size = min_t(unsigned long, PAGE_CACHE_SIZE, max_size);
ret = btrfs_decompress(compress_type, tmp, page,
extent_offset, inline_size, max_size);
- /*
- * Zero out any bytes at the end of the extent. This does not
- * happen often, but it does happen.
- */
- WARN_ON(max_size > PAGE_CACHE_SIZE);
- if (max_size < PAGE_CACHE_SIZE) {
- char *map = kmap(page);
- memset(map + max_size, 0, PAGE_CACHE_SIZE - max_size);
- kunmap(page);
- }
kfree(tmp);
return ret;
}