From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753889AbbIBK7w (ORCPT ); Wed, 2 Sep 2015 06:59:52 -0400 Received: from mail-wi0-f182.google.com ([209.85.212.182]:37654 "EHLO mail-wi0-f182.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752893AbbIBK7u (ORCPT ); Wed, 2 Sep 2015 06:59:50 -0400 Message-ID: <55E6D6A4.605@bjorling.me> Date: Wed, 02 Sep 2015 12:59:48 +0200 From: =?UTF-8?B?TWF0aWFzIEJqw7hybGluZw==?= Organization: Paletta User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.7.0 MIME-Version: 1.0 To: Dongsheng Yang , hch@infradead.org, axboe@fb.com, linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org, linux-nvme@lists.infradead.org CC: jg@lightnvm.io, Stephen.Bates@pmcs.com, keith.busch@intel.com, =?UTF-8?B?TWF0aWFzIEJqw7hybGluZw==?= Subject: Re: [PATCH v7 0/5] Support for Open-Channel SSDs References: <1438957791-24632-1-git-send-email-mb@lightnvm.io> <55E6721F.4040307@cn.fujitsu.com> In-Reply-To: <55E6721F.4040307@cn.fujitsu.com> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org >> Any feedback is greatly appreciated. > > Hi Matias, > After a reading of your code, that's a great idea. > I tried it with null_nvm and qemu-nvm. I have two questions > here. Hi Yang, thanks for taking a look. I appreciate it. > (1), Why we name it lightnvm? IIUC, this framework > can work for other flashes not only NVMe protocol. Indeed, there are people that work on using it with rapidio. It can also work with SATA/SAS, etc. The lightnvm name came from the technique to offload devices (which contains non-volatile memory) so they only care about managing the media. In that sense "light" nvm. I'm open to other suggestions. I really wanted the OpenNVM / OpenSSD name, but they where already taken. > (2), There are gc and bm, but where is the wear leveling? > In hardware? It should be implemented within each target. The rrpc module implements it within its gc routines. Currently rrpc only looks at the least about of invalid pages. The PE cycles should also be taken into account. Properly some weighted function to decide the cost. Similar to the cost-based gc used in the DFTL paper. > > Thanx > Yang