From patchwork Mon Apr 30 09:10:03 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Javier_Gonz=C3=A1lez?= X-Patchwork-Id: 10371175 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 805FF60234 for ; Mon, 30 Apr 2018 09:12:53 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 72E092895B for ; Mon, 30 Apr 2018 09:12:53 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 67D13289A2; Mon, 30 Apr 2018 09:12:53 +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.9 required=2.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID, MAILING_LIST_MULTI, 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 1239F28996 for ; Mon, 30 Apr 2018 09:12:53 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753022AbeD3JMV (ORCPT ); Mon, 30 Apr 2018 05:12:21 -0400 Received: from mail-wm0-f66.google.com ([74.125.82.66]:37279 "EHLO mail-wm0-f66.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753563AbeD3JKW (ORCPT ); Mon, 30 Apr 2018 05:10:22 -0400 Received: by mail-wm0-f66.google.com with SMTP id l1so13088847wmb.2 for ; Mon, 30 Apr 2018 02:10:21 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=javigon-com.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=1i3L7z77EYR7Rvn4GeUoETVBfEAUSyMd2gVxiBFDpMw=; b=o93s9RILN6hNvh3Ny7KaVGlGZs91u9j9WgRaUnYJqhys6n9enN5MG84NuPRMVK7EfU S2QM9KOp8Bs9bp8sa6yEJVWbo6n2F79YeuVP7ZtvTGd06ftLRkfUpngO4sbmpFD0xRvl 2vKnwAoWCE+R/Sf+VY1pusPGraraFDLg1NVed0c7fggBWlUMSHOBIV5UidrzHTLjDrul wnp3VGcMv/EoZCVlRxy+NZeH08XcAaBztZbSKkmmLoYwmsJpF1qnCi6vYH1UZUl6skpw O8+6XnOFyFtQ/LfRFHGH6Oumo5BTx3bnQMEScrYNBcEeDhwSW/4ZzGxO/hleGYaANhru R7wA== 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=1i3L7z77EYR7Rvn4GeUoETVBfEAUSyMd2gVxiBFDpMw=; b=cdVDU/RDeSfXjO7n9Z4ITaEobmIW6/d38gCg6q4R3WleTK/suzSu4VomTsqqSBtY1V dRQDsuPCnX2ERkHRF8njyooe+SUz/e7GZzej48guZmFG5E2AcL+VMmZQ7nAInlvv0dDS jbQT66DalyQNICrC19DDDdeCPIYlp4KSF4HHHRuzwpbJTyTC5pUQTf+JHWYSyHPJOnsk CLvqf+SnTVzHtoApH3vhq3wzcFHjPi/QkE1t3U/oxkeAATDugi+Rs6qDxQuvCh/G2fUB GVI5fYJSaXYeHkiF1kRE0dpQoWMM9oroXyGq/lVl1FRjl6Wy9wh6mk/dGOAt2wDTrlo8 ri0g== X-Gm-Message-State: ALQs6tDps9c6dgdn+BkLvncfXS/ZVNsEZOaIo3ygHspQ6ePSbDVA8J/m 5pkt4YNGLe+sSBXefTb540HrUw== X-Google-Smtp-Source: AB8JxZr/UnnhSzwslR/Z+dHhKK8pSnFkjzWMq4UYLm6GXgsfru+8MxYOM9EAobkCEtBvhLr2qrBh3g== X-Received: by 2002:a50:b6e2:: with SMTP id f31-v6mr15670825ede.23.1525079420935; Mon, 30 Apr 2018 02:10:20 -0700 (PDT) Received: from uhalley.cnexlabs.com (6164211-cl69.boa.fiberby.dk. [193.106.164.211]) by smtp.gmail.com with ESMTPSA id b56-v6sm2108638edd.85.2018.04.30.02.10.19 (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Mon, 30 Apr 2018 02:10:20 -0700 (PDT) From: "=?UTF-8?q?Javier=20Gonz=C3=A1lez?=" X-Google-Original-From: =?UTF-8?q?Javier=20Gonz=C3=A1lez?= To: mb@lightnvm.io Cc: linux-block@vger.kernel.org, linux-kernel@vger.kernel.org, =?UTF-8?q?Javier=20Gonz=C3=A1lez?= Subject: [PATCH 05/11] lightnvm: pblk: warn in case of corrupted write buffer Date: Mon, 30 Apr 2018 11:10:03 +0200 Message-Id: <1525079409-6588-6-git-send-email-javier@cnexlabs.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1525079409-6588-1-git-send-email-javier@cnexlabs.com> References: <1525079409-6588-1-git-send-email-javier@cnexlabs.com> 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 When cleaning up buffer entries as we wrap up, their state should be "completed". If any of the entries is in "submitted" state, it means that something bad has happened. Trigger a warning immediately instead of waiting for the state flag to eventually be updated, thus hiding the issue. Signed-off-by: Javier González --- drivers/lightnvm/pblk-rb.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/drivers/lightnvm/pblk-rb.c b/drivers/lightnvm/pblk-rb.c index 7a632913475f..024a366a995c 100644 --- a/drivers/lightnvm/pblk-rb.c +++ b/drivers/lightnvm/pblk-rb.c @@ -142,10 +142,9 @@ static void clean_wctx(struct pblk_w_ctx *w_ctx) { int flags; -try: flags = READ_ONCE(w_ctx->flags); - if (!(flags & PBLK_SUBMITTED_ENTRY)) - goto try; + WARN_ONCE(!(flags & PBLK_SUBMITTED_ENTRY), + "pblk: overwriting unsubmitted data\n"); /* Release flags on context. Protect from writes and reads */ smp_store_release(&w_ctx->flags, PBLK_WRITABLE_ENTRY);