From patchwork Mon Oct 22 10:36:06 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Igor Konopko X-Patchwork-Id: 10651907 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 5F33E13A4 for ; Mon, 22 Oct 2018 10:40:08 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 5BDA228897 for ; Mon, 22 Oct 2018 10:40:08 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 500DF28901; Mon, 22 Oct 2018 10:40:08 +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,MAILING_LIST_MULTI, RCVD_IN_DNSWL_HI autolearn=ham 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 F0C9B28897 for ; Mon, 22 Oct 2018 10:40:07 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728639AbeJVS6G (ORCPT ); Mon, 22 Oct 2018 14:58:06 -0400 Received: from mga12.intel.com ([192.55.52.136]:43133 "EHLO mga12.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728388AbeJVS6G (ORCPT ); Mon, 22 Oct 2018 14:58:06 -0400 X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga007.jf.intel.com ([10.7.209.58]) by fmsmga106.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 22 Oct 2018 03:40:06 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.54,411,1534834800"; d="scan'208";a="83140009" Received: from gklab-106-154.igk.intel.com ([10.102.106.154]) by orsmga007.jf.intel.com with ESMTP; 22 Oct 2018 03:40:05 -0700 From: Igor Konopko To: mb@lightnvm.io, javier@cnexlabs.com, hans.ml.holmberg@owltronix.com Cc: linux-block@vger.kernel.org, igor.j.konopko@intel.com Subject: [PATCH v2 0/5] lightnvm: Flexible metadata Date: Mon, 22 Oct 2018 12:36:06 +0200 Message-Id: <20181022103611.39271-1-igor.j.konopko@intel.com> X-Mailer: git-send-email 2.14.4 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 This series of patches extends the way how pblk can store L2P sector metadata. After this set of changes any size of NVMe metadata (including 0) is supported. Patches are rebased on top of block/for-next since there was no ocssd/for-4.21 branch yet. Changes v1 --> v2: -Revert sector meta size back to 16b for pblk -Dma pool for larger oob meta are handled in core instead of pblk -Pblk oob meta helpers uses __le64 as input outpu instead of u64 -Other minor fixes based on v1 patch review Igor Konopko (5): lightnvm: pblk: Move lba list to partial read context lightnvm: pblk: Helpers for OOB metadata lightnvm: Flexible DMA pool entry size lightnvm: Disable interleaved metadata lightnvm: pblk: Support for packed metadata drivers/lightnvm/core.c | 45 +++++++++++++++++++++++---- drivers/lightnvm/pblk-core.c | 66 ++++++++++++++++++++++++++++++++++------ drivers/lightnvm/pblk-init.c | 43 ++++++++++++++++++++++++-- drivers/lightnvm/pblk-map.c | 20 +++++++----- drivers/lightnvm/pblk-rb.c | 3 ++ drivers/lightnvm/pblk-read.c | 63 +++++++++++++++++++++----------------- drivers/lightnvm/pblk-recovery.c | 22 ++++++++------ drivers/lightnvm/pblk-sysfs.c | 7 +++++ drivers/lightnvm/pblk-write.c | 14 ++++++--- drivers/lightnvm/pblk.h | 47 ++++++++++++++++++++++++++-- drivers/nvme/host/lightnvm.c | 9 ++++-- include/linux/lightnvm.h | 5 ++- 12 files changed, 272 insertions(+), 72 deletions(-)