From owner-freebsd-arch@freebsd.org Tue Oct 20 18:56:02 2015 Return-Path: Delivered-To: freebsd-arch@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 60520A1AC1A for ; Tue, 20 Oct 2015 18:56:02 +0000 (UTC) (envelope-from carpeddiem@gmail.com) Received: from mail-ig0-x22e.google.com (mail-ig0-x22e.google.com [IPv6:2607:f8b0:4001:c05::22e]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 2F718109B for ; Tue, 20 Oct 2015 18:56:02 +0000 (UTC) (envelope-from carpeddiem@gmail.com) Received: by igbkq10 with SMTP id kq10so82050379igb.0 for ; Tue, 20 Oct 2015 11:56:01 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:from:date:message-id:subject:to:content-type; bh=lsOG35+d1Xl+nmn6vCKkMBK5HyhIyBmRgGeX6GdMGWQ=; b=tZ1M41HksUVp5p9iOdyADmWDsnwa9Jy3mODvdHrkLIlRVi64kexsWmFB5pt6O/v3V9 vDr6kQ/K5ePosw9B28MXllqAqwTe48xv6+R+sFgT3iFClU9WsBc00v+tt4cfaTfQxLS/ LYH/OSyqezzI0R/Mh5MkU67sHzMSMiuW6UhPUdCgGD+4uBSWy3xfdjBq9BzXsQEbnjF/ IurYuOMJyQLDhWmZ7hgwKMqHGlI3rIvKYVMws0BO35BORPuIy3NW4K266WXXbdPZLejB 0+L2nCRGVBOqs4qd+fjMI2RMWlI9ggRRz0jyMGm1zPkowb7JZqfvxEVlVyN03b/voKmb MBSA== X-Received: by 10.50.6.100 with SMTP id z4mr5510871igz.97.1445367361480; Tue, 20 Oct 2015 11:56:01 -0700 (PDT) MIME-Version: 1.0 Sender: carpeddiem@gmail.com Received: by 10.107.158.75 with HTTP; Tue, 20 Oct 2015 11:55:42 -0700 (PDT) From: Ed Maste Date: Tue, 20 Oct 2015 14:55:42 -0400 X-Google-Sender-Auth: PIUzSzuxyD5o_R-T58CB_mYFLHw Message-ID: Subject: Updating makefs(8) with updates from NetBSD To: NGie Cooper , "freebsd-arch@freebsd.org" Content-Type: text/plain; charset=UTF-8 X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 20 Oct 2015 18:56:02 -0000 On 19 October 2015 at 15:14, NGie Cooper wrote: > Hi all, > While looking quickly through makefs upstream for fixing a PR... This comment prompted a brief discussion off the mailing list, but I feel I should bring it back here as I've heard from a few others with an interest in updating makefs. Makefs originated in NetBSD, but we haven't treated it as contrib code - the initial import was done directly in usr.sbin/makefs in r186335. Since that time we've had a comprehensive sync w/ NetBSD (r214921), a sync of cd9660 support only (r224762), and a number of individual fixes either taken from NetBSD or committed to FreeBSD first and submitted to NetBSD. We also have changes that I don't believe made it to NetBSD. I'd like to see another makefs sync with NetBSD, specifically to pick up support for FAT filesystems -- -t msdos. Since a few of us have been looking at makefs updates and/or bug fixes I'd like to figure out what the best path forward is, so that we don't duplicate or waste effort. It seems the options are: (a) update makefs in usr.sbin/makefs directly, either by iterating on NetBSD changes and importing one by one, in small groups, or as one massive update (b) bring the latest NetBSD makefs into contrib, retrofit mergeinfo as best we can, and replay all of our local changes, submitting to NetBSD as we go (c) push all of our changes and in-progress bug/coverity fixes to NetBSD, then replace makefs with NetBSD's, and import the dependencies from NetBSD Option (b) or (c) seem to be cleaner and is probably less work overall -- there are more than 100 commits in NetBSD after our last sync. It has the downside of limiting work that can be done by multiple people concurrently though, and includes file system support that's not of interest to us (e.g. v7fs). Note that NetBSD's makefs is set up to build on many different host operating systems already (FreeBSD, Linux, OS X etc.) because they build it as part of their build.sh build environment. This relies on the NetBSD versions of various headers (e.g. ffs*.h) and other tools (e.g. newfs_msdos). I don't think we want to pull in another copy of those headers and tools for the sake of makefs though and prefer (b) to (c). Although I suspect it's more work overall I think we're most likely to make progress with option (a), merging over individual changes or groups of changes. I'd like to know what those who've worked on makefs updates in the past and others with an interest in makefs prefer to do here.