From patchwork Wed Dec 20 17:22:00 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Matias_Bj=C3=B8rling?= X-Patchwork-Id: 10126017 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id C605B60245 for ; Wed, 20 Dec 2017 17:24:36 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id ADDE0283BF for ; Wed, 20 Dec 2017 17:24:36 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id A2E53286E4; Wed, 20 Dec 2017 17:24:36 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.0 required=2.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, RCVD_IN_DNSWL_HI autolearn=unavailable version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 09DAB283BF for ; Wed, 20 Dec 2017 17:24:36 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756107AbdLTRXJ (ORCPT ); Wed, 20 Dec 2017 12:23:09 -0500 Received: from mail-wm0-f67.google.com ([74.125.82.67]:38391 "EHLO mail-wm0-f67.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755830AbdLTRWf (ORCPT ); Wed, 20 Dec 2017 12:22:35 -0500 Received: by mail-wm0-f67.google.com with SMTP id 64so11125850wme.3 for ; Wed, 20 Dec 2017 09:22:34 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bjorling.me; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=20/xj1Fsyz20DOOwe52MlvfNdfM+3D55J5GwNsjdZmc=; b=UrjU3LsztNb0At0evj2mipsPmmkryTzQZlXHwxpctMJtlgsSXSUMkEgzJI2Iuv6g9+ D9xX7JUlZo84Xwk09k9pUX27Qowu3aqb3b9uoi5RAdhJ0IhF7cIf7enD90FKAdkZi0ww hSpVipm25/u/VbMdC9/BpRoqp/Njg7v48NcAQ= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=20/xj1Fsyz20DOOwe52MlvfNdfM+3D55J5GwNsjdZmc=; b=sru13PXBOyFzE6BgHMFuQH0te4zivfknY9cFhe1/W1P/+YD1mWFqrEGGfInoFTamam V6cud23mjyWkr0GpM2gOydpYtrK/t9/kdvZOZ4PQvT0MLMMW24VuF0mIotoj8toTqBXi EanjpFLMNrB3K9MZjmxUV78aza8Ai7DTmCQDXj6RHbm7nQ+HBzfYBMXBf64Q3TiGEIc7 Tp20TKR/BgI6vE0KnBF09fdJo9KTtXXFTKAc97ZgDNQBGoCBSaQ8QRxzUcuqEycaKCI5 JT8gt3RL0bYK8G0Ssek6/DT4ynuq4Q8SSCs8F76K5ShvlaMeyrsxvUZURcid7wdMIgqE cFcg== X-Gm-Message-State: AKGB3mJUVpDwA/j/SRPuz42hQ9w/1gdCTgtQjCrVv3DmjSvKl5fmpY60 cQhc4qmPxjkgB3WNS3LhwMGhekG1 X-Google-Smtp-Source: ACJfBouxciN9UQf/ESiv2XcH6dU1ZwcVD8DvW+uHKE6d45skqWj3l/sdmq9hNCEkma18OvbX4D4e6w== X-Received: by 10.80.168.162 with SMTP id k31mr6671593edc.253.1513790553754; Wed, 20 Dec 2017 09:22:33 -0800 (PST) Received: from skyninja.cnexlabs.com (6164211-cl69.boa.fiberby.dk. [193.106.164.211]) by smtp.gmail.com with ESMTPSA id 26sm15339120eds.67.2017.12.20.09.22.32 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 20 Dec 2017 09:22:33 -0800 (PST) From: =?UTF-8?q?Matias=20Bj=C3=B8rling?= To: linux-block@vger.kernel.org, linux-kernel@vger.kernel.org Cc: =?UTF-8?q?Javier=20Gonz=C3=A1lez?= , =?UTF-8?q?Matias=20Bj=C3=B8rling?= Subject: [PATCH 20/25] lightnvm: pblk: do not log recovery read errors Date: Wed, 20 Dec 2017 18:22:00 +0100 Message-Id: <20171220172205.26464-21-m@bjorling.me> X-Mailer: git-send-email 2.9.3 In-Reply-To: <20171220172205.26464-1-m@bjorling.me> References: <20171220172205.26464-1-m@bjorling.me> MIME-Version: 1.0 Sender: linux-block-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-block@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP From: Javier González On scan recovery, reads can fail. This happens because the first page for each line is read in order to determined if the line has been used (and thus needs to be recovered), or not. This can lead to "empty page" read errors. Since these errors are normal, do not log them, as they are confusing when reviewing the logs. Signed-off-by: Javier González Signed-off-by: Matias Bjørling --- drivers/lightnvm/pblk-core.c | 6 +++--- drivers/lightnvm/pblk.h | 1 + 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/drivers/lightnvm/pblk-core.c b/drivers/lightnvm/pblk-core.c index 22cdafd..5692d33 100644 --- a/drivers/lightnvm/pblk-core.c +++ b/drivers/lightnvm/pblk-core.c @@ -742,7 +742,7 @@ static int pblk_line_submit_smeta_io(struct pblk *pblk, struct pblk_line *line, cmd_op = NVM_OP_PWRITE; flags = pblk_set_progr_mode(pblk, PBLK_WRITE); lba_list = emeta_to_lbas(pblk, line->emeta->buf); - } else if (dir == PBLK_READ) { + } else if (dir == PBLK_READ_RECOV || dir == PBLK_READ) { bio_op = REQ_OP_READ; cmd_op = NVM_OP_PREAD; flags = pblk_set_read_mode(pblk, PBLK_READ_SEQUENTIAL); @@ -802,7 +802,7 @@ static int pblk_line_submit_smeta_io(struct pblk *pblk, struct pblk_line *line, if (rqd.error) { if (dir == PBLK_WRITE) pblk_log_write_err(pblk, &rqd); - else + else if (dir == PBLK_READ) pblk_log_read_err(pblk, &rqd); } @@ -816,7 +816,7 @@ int pblk_line_read_smeta(struct pblk *pblk, struct pblk_line *line) { u64 bpaddr = pblk_line_smeta_start(pblk, line); - return pblk_line_submit_smeta_io(pblk, line, bpaddr, PBLK_READ); + return pblk_line_submit_smeta_io(pblk, line, bpaddr, PBLK_READ_RECOV); } int pblk_line_read_emeta(struct pblk *pblk, struct pblk_line *line, diff --git a/drivers/lightnvm/pblk.h b/drivers/lightnvm/pblk.h index 430d076..cb38990 100644 --- a/drivers/lightnvm/pblk.h +++ b/drivers/lightnvm/pblk.h @@ -60,6 +60,7 @@ enum { PBLK_READ = READ, PBLK_WRITE = WRITE,/* Write from write buffer */ PBLK_WRITE_INT, /* Internal write - no write buffer */ + PBLK_READ_RECOV, /* Recovery read - errors allowed */ PBLK_ERASE, };