Received: by 2002:ad5:474a:0:0:0:0:0 with SMTP id i10csp255724imu; Thu, 8 Nov 2018 01:06:26 -0800 (PST) X-Google-Smtp-Source: AJdET5cQL8PuX9UdCVrmxN03ej9XREknksoW6BTMNYyuxaQzFDP2+KC996dXOCeObBvhj4lfb7Mb X-Received: by 2002:a62:85:: with SMTP id 127-v6mr3729369pfa.24.1541667985888; Thu, 08 Nov 2018 01:06:25 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1541667985; cv=none; d=google.com; s=arc-20160816; b=pz1YFsHyEnz9CAy2DXanG1OUqV75OaW/mqqUN9hN556rtiy3UdoyczvrmLLGWMyLLO 3YOoLxts87lCxH9PDRfgwuc0yNu/MWtb8iSmKWMooXtrc5LEHx/dqznj00T1olg3WsoO 9h2xZ+GG4SQQ1f1bZlphhYa7rI2RSdkbXq+pKeR9oQSBdTHDzvc0+6T17g4yH/K6xYFp qov1EQW+WP6wFpKe4pL48rRt9C4e5+17pjaPpNto54iFF7eRS0phgIkf872qCYGb9v5J AF5phOqZQSb3l0vWTWeJvj0mMHNAZ10IOLhHcYDiw/wFFrLiLZ5cn/6UGM3P2WVEzIfR dgQw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:to:from:subject; bh=2WKKtvKbMEhI8X0C73SHE98ItWSlwLT7BOz5LYCQOd0=; b=kSR40fnpR8IWzCiKxYaaMss7xdceLM0jBR1OMmsEsSBSoNDpWFOcIHjN8VuVJH96fC aQhFyzkky5fi/tX4U+vOXm1FcyKK7V4YKHUN/rE8I/wEPoAZSBJ0cdiiL2lvnNKdqxn8 W1o5fYP9+6EnJRGHBggS3dDOYelSxiAQX2HDQYqKpboNtCtgRNvgUxrKrtbA1DatQTvh hOribYYa79BlbV45XqrzuOyHEmsCRM2q+XY5D4mr3nH2eiMnJX/yulb/FyVVObB/r172 2iiotlww9fXquRgkkTOCcvz1O2ZHlP7VYoFgPkcSDWeQBjwytYbStvRxkX3F7RmDEise l3mA== ARC-Authentication-Results: i=1; mx.google.com; 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; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=virtuozzo.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id d10-v6si3055158pgh.385.2018.11.08.01.06.10; Thu, 08 Nov 2018 01:06:25 -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; 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; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=virtuozzo.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727155AbeKHSkK (ORCPT + 99 others); Thu, 8 Nov 2018 13:40:10 -0500 Received: from relay.sw.ru ([185.231.240.75]:36788 "EHLO relay.sw.ru" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726642AbeKHSkJ (ORCPT ); Thu, 8 Nov 2018 13:40:09 -0500 Received: from [172.16.25.169] (helo=localhost.localdomain) by relay.sw.ru with esmtp (Exim 4.90_1) (envelope-from ) id 1gKgFs-00062g-UZ; Thu, 08 Nov 2018 12:05:37 +0300 Subject: [PATCH v2 4/5] fuse: Do some refactoring in fuse_dev_do_write() From: Kirill Tkhai To: miklos@szeredi.hu, ktkhai@virtuozzo.com, linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org Date: Thu, 08 Nov 2018 12:05:36 +0300 Message-ID: <154166793678.10655.10074946877439295638.stgit@localhost.localdomain> In-Reply-To: <154166765576.10655.15178401490817622677.stgit@localhost.localdomain> References: <154166765576.10655.15178401490817622677.stgit@localhost.localdomain> User-Agent: StGit/0.18 MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This is needed for next patch. Signed-off-by: Kirill Tkhai --- fs/fuse/dev.c | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/fs/fuse/dev.c b/fs/fuse/dev.c index cc9e5a9bb147..7684fb7dc680 100644 --- a/fs/fuse/dev.c +++ b/fs/fuse/dev.c @@ -1947,18 +1947,14 @@ static ssize_t fuse_dev_do_write(struct fuse_dev *fud, __fuse_get_request(req); spin_unlock(&fpq->lock); - err = -EINVAL; - if (nbytes != sizeof(struct fuse_out_header)) { - fuse_put_request(fc, req); - goto err_finish; - } - - if (oh.error == -ENOSYS) + if (nbytes != sizeof(struct fuse_out_header)) + nbytes = -EINVAL; + else if (oh.error == -ENOSYS) fc->no_interrupt = 1; else if (oh.error == -EAGAIN) queue_interrupt(&fc->iq, req); - fuse_put_request(fc, req); + fuse_put_request(fc, req); fuse_copy_finish(cs); return nbytes; }