Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755076AbdGVSt2 (ORCPT ); Sat, 22 Jul 2017 14:49:28 -0400 Received: from mail-yw0-f172.google.com ([209.85.161.172]:36400 "EHLO mail-yw0-f172.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751960AbdGVSt0 (ORCPT ); Sat, 22 Jul 2017 14:49:26 -0400 MIME-Version: 1.0 In-Reply-To: References: <20170721225815.i6467grjen32x4kq@gmail.com> From: Dan Williams Date: Sat, 22 Jul 2017 11:49:25 -0700 Message-ID: Subject: Re: Moving ndctl development into the kernel tree? To: Ingo Molnar Cc: "torvalds@linux-foundation.org" , Johannes Thumshirn , jmoyer , "linux-nvdimm@lists.01.org" , "linux-kernel@vger.kernel.org" , Ingo Molnar , Arnaldo Carvalho de Melo , "Oliver O'Halloran" , Arnaldo Carvalho de Melo , Jiri Olsa , Namhyung Kim , Peter Zijlstra , Chris Mason Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1957 Lines: 42 On Fri, Jul 21, 2017 at 7:52 PM, Dan Williams wrote: > [ adding Chris ] > > On Fri, Jul 21, 2017 at 4:44 PM, Dan Williams wrote: >> On Fri, Jul 21, 2017 at 3:58 PM, Ingo Molnar wrote: >>> >>> * Dan Williams wrote: >>> >>>> [...] >>>> >>>> * Like perf, ndctl borrows the sub-command architecture and option >>>> parsing from git. So, this code could be refactored into something >>>> shared / generic, i.e. the bits in tools/perf/util/. >>> >>> Just as a side note, stacktool (tools/stacktool/) is using the Git sub-command and >>> options parsing code as well, and it's already sharing it with perf, via the >>> tools/lib/subcmd/ library. >>> >>> ndctl could use that as well. >> >> Ah, nice, that refactoring happened about a year after ndctl was born. >> Which brings up the next question about what to do with the git >> history, but I'd want to know if ndctl is even welcome upstream before >> digging any deeper. > > I suspect this would be similar to what Chris did to merge btrfs while > retaining the standalone history. Chris, any pointers on what worked > well and what if anything you would do differently? I.e. I'm looking > to use git filter-branch to rewrite ndctl history as if if had always > been in tools/ndctl in the kernel tree. I found this old thread > https://lkml.org/lkml/2008/10/30/523 and it seems to also recommend > using an older kernel as the branch base. So it wasn't as painful as I thought it would be, I just used the script Linus recommended in that thread. Here is what I came up with merging the last ndctl release on top of v4.9, and then applying the pending development patches re-filtered to tools/ndctl: https://git.kernel.org/pub/scm/linux/kernel/git/djbw/nvdimm.git/log/?h=for-4.14/ndctl ...the next thing would be to rework the versioning to use the kernel version and switch to using tools/lib/subcmd/.