lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Mon, 09 Oct 2017 13:44:24 +0100 From: Ben Hutchings <ben@...adent.org.uk> To: linux-kernel@...r.kernel.org, stable@...r.kernel.org CC: akpm@...ux-foundation.org, "David Sterba" <dsterba@...e.com>, "Nikolay Borisov" <nborisov@...e.com>, "Liu Bo" <bo.li.liu@...cle.com> Subject: [PATCH 3.16 042/192] Btrfs: skip commit transaction if we don't have enough pinned bytes 3.16.49-rc1 review patch. If anyone has any objections, please let me know. ------------------ From: Liu Bo <bo.li.liu@...cle.com> commit 28785f70ef882e4798cd5706066a55dbf7adf80e upstream. We commit transaction in order to reclaim space from pinned bytes because it could process delayed refs, and in may_commit_transaction(), we check first if pinned bytes are enough for the required space, we then check if that plus bytes reserved for delayed insert are enough for the required space. This changes the code to the above logic. Fixes: b150a4f10d87 ("Btrfs: use a percpu to keep track of possibly pinned bytes") Tested-by: Nikolay Borisov <nborisov@...e.com> Reported-by: Nikolay Borisov <nborisov@...e.com> Reviewed-by: Nikolay Borisov <nborisov@...e.com> Signed-off-by: Liu Bo <bo.li.liu@...cle.com> Signed-off-by: David Sterba <dsterba@...e.com> Signed-off-by: Ben Hutchings <ben@...adent.org.uk> --- fs/btrfs/extent-tree.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) --- a/fs/btrfs/extent-tree.c +++ b/fs/btrfs/extent-tree.c @@ -4230,7 +4230,7 @@ static int may_commit_transaction(struct spin_lock(&delayed_rsv->lock); if (percpu_counter_compare(&space_info->total_bytes_pinned, - bytes - delayed_rsv->size) >= 0) { + bytes - delayed_rsv->size) < 0) { spin_unlock(&delayed_rsv->lock); return -ENOSPC; }
Powered by blists - more mailing lists