Received: by 2002:ad5:474a:0:0:0:0:0 with SMTP id i10csp1621132imu; Tue, 6 Nov 2018 01:24:23 -0800 (PST) X-Google-Smtp-Source: AJdET5cR8/adpaZXfkJPb7utO+h5LOaO0H0AzgSXbU6jgY2UWSzpYspD6rqEBD0DKOm2PHiiC4eT X-Received: by 2002:a17:902:9b83:: with SMTP id y3-v6mr6905823plp.113.1541496263003; Tue, 06 Nov 2018 01:24:23 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1541496262; cv=none; d=google.com; s=arc-20160816; b=IF0VU8odtLvsGxsCOnSI3wU9WEgXIzQjl/pu7H/hFTYaKbhNoAo5RV55F9/Mh6FrwT 587PCmqlGc9B0yAIo/11u6F24CC60OHUHSJGfpR93NcvnzHL3amtAg+Oyd/EV8pUt9O9 dYN8hMecrIQ1nctMoA/C/Do+J4RUsoPYLbXJ0R5RMQNTT95vYETsBl8UlstO6af6lHDK n5T6V4BcLLjcbTNubSNgVeXvl2YLfOY6jDdTjVjKNPWhWqcG6W4uBVcTQEPJnWR5u1ZV nabegXLym0XslqUExQFtb+58q6hdvC2wuiRUzijDoHJvOJlN5c5G9tiMQ3ofGt28Flv7 F7yw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:cc:to:subject:message-id:date:from :references:in-reply-to:mime-version:dkim-signature; bh=rlRXtxyBTWqlbWk0rrvDcwsQSfNabCivduvMrSeh33Q=; b=x7UASMhCoYD0VA8zbB9njRYuD0MlhK0CWLTPpAhwiwEE38zqpuoXSVhz0zagmE1OK8 NprcqSC34rHMYxaRgz4EmFs+U0DgDDvse04medKI5CubIPeseFrZUO1z4y14ambZkDNr dXYIoICEi/vadwszN8R2Qa2y80eY5wNUBKTQvbjzVdmjXcsCIoPkIgSc0yeosycFYpnI mYRWNyXLFKidtT1RE8rd49ei/zjOEvPJRzHkprh36jNJLkbDiAP0T7KX+AfpUUlkR6q5 2li8lP2TQf74ffsdJ4X2h6XGKebnqo4I839UKEM+m37xxcxmLvaDxFQGsSlh1TWuSoJ+ /gNA== ARC-Authentication-Results: i=1; mx.google.com; dkim=temperror (no key for signature) header.i=@szeredi.hu header.s=google header.b=oIi9HXph; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id f23-v6si45048384pgl.207.2018.11.06.01.24.07; Tue, 06 Nov 2018 01:24:22 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=temperror (no key for signature) header.i=@szeredi.hu header.s=google header.b=oIi9HXph; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1730315AbeKFSrr (ORCPT + 99 others); Tue, 6 Nov 2018 13:47:47 -0500 Received: from mail-it1-f193.google.com ([209.85.166.193]:52004 "EHLO mail-it1-f193.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1729349AbeKFSrr (ORCPT ); Tue, 6 Nov 2018 13:47:47 -0500 Received: by mail-it1-f193.google.com with SMTP id h13so16897760itl.1 for ; Tue, 06 Nov 2018 01:23:29 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=szeredi.hu; s=google; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=rlRXtxyBTWqlbWk0rrvDcwsQSfNabCivduvMrSeh33Q=; b=oIi9HXphln/F0ZqV2xeDzeRKbXntqPXDvoFnxD5dLaxE9aRulBryf1ae3RhJqkm53l +9XvLDLfTgho1rjr90OulrOXTLHHRBmUQmmbhfDtC07iLuqckrCTjzTUCA6fA6ENhceV ogaGfmv8P/h2wIOUfgDI3Z+rm2DcbuKjaKuYs= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=rlRXtxyBTWqlbWk0rrvDcwsQSfNabCivduvMrSeh33Q=; b=p4vyi9TZEpNcU6XBHxYe2viVAGu0+d/tDtJQnUGORYWxJYMTxydh4GVF+gp75NenGr C1+5pu7O1+e1GSBDDxP5yKH1n6SOQ3cM30hP3iiJRvEkzQdoKBcONK5DEyvSfsOTTHTP THbdYz4ewrk2xc0eVHxCbaLTqnMSS9u67Uvpfca2nmG7h0lP0C7QD7oR6W7KO7xTAzcA tVYDDz/uNdmZkzHh6mY5H6tnAD1gn/xsXwfCareo9aUoJjvGqoyUApKWRZGPPHSCQQGP PV/K/LLFM7WC+4sNXQcJuA/Cakj0wYiZhz67jeJay0itL3KEBhM5Cqmsur2cb13VFavo SSNw== X-Gm-Message-State: AGRZ1gLsDbQ6LNqUhyTKryxf9kk3l40MQno4+V1+aBQema2ZuG6UGDtI 43Q5T96IC1Y1YXyBHAiy+x0u77JGI5kRvzv0a9Y2Kg== X-Received: by 2002:a02:9951:: with SMTP id d17-v6mr22421065jak.78.1541496208782; Tue, 06 Nov 2018 01:23:28 -0800 (PST) MIME-Version: 1.0 Received: by 2002:a6b:ac42:0:0:0:0:0 with HTTP; Tue, 6 Nov 2018 01:23:28 -0800 (PST) X-Originating-IP: [94.21.144.184] In-Reply-To: <154149557692.17196.12607896696117775780.stgit@localhost.localdomain> References: <154149557692.17196.12607896696117775780.stgit@localhost.localdomain> From: Miklos Szeredi Date: Tue, 6 Nov 2018 10:23:28 +0100 Message-ID: Subject: Re: [PATCH] fuse: Put leaked request on error path of fuse_retrieve() To: Kirill Tkhai Cc: linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, Nov 6, 2018 at 10:13 AM, Kirill Tkhai wrote: > fuse_request_send_notify_reply() may fail, and this case > it remains leaked (fuse_retrieve_end(), which is called > on error path, does not do that). Also, fc->num_waiting, > will never be decremented, and fuse_wait_aborted() will > never finish. So, put the request patently. > > Signed-off-by: Kirill Tkhai Posted same patch yesterday for a syzbot report. How did you notice this? Thanks, Miklos > --- > fs/fuse/dev.c | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff --git a/fs/fuse/dev.c b/fs/fuse/dev.c > index ae813e609932..6fe330cc9709 100644 > --- a/fs/fuse/dev.c > +++ b/fs/fuse/dev.c > @@ -1768,8 +1768,10 @@ static int fuse_retrieve(struct fuse_conn *fc, struct inode *inode, > req->in.args[1].size = total_len; > > err = fuse_request_send_notify_reply(fc, req, outarg->notify_unique); > - if (err) > + if (err) { > fuse_retrieve_end(fc, req); > + fuse_put_request(fc, req); > + } > > return err; > } >