From owner-freebsd-hackers@FreeBSD.ORG Thu Mar 13 22:19:48 2014 Return-Path: Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 8168D37D for ; Thu, 13 Mar 2014 22:19:48 +0000 (UTC) Received: from mail-qa0-f41.google.com (mail-qa0-f41.google.com [209.85.216.41]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 3E72979A for ; Thu, 13 Mar 2014 22:19:47 +0000 (UTC) Received: by mail-qa0-f41.google.com with SMTP id j5so1751131qaq.0 for ; Thu, 13 Mar 2014 15:19:41 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:sender:in-reply-to:references:from :date:message-id:subject:to:cc:content-type; bh=jl12f7dQ/RnYw+UYp0NxmPuBZzUNXZWGiCXMopJcjxU=; b=dNBesr8/8rf6hShZFcNJy4bEbiuHRmS8bZQIsCA5xGe5j65tiqHlmdMLaB3f8kqBQJ mzYClVJvdSiLHCqKT2uJWBWPiWrFP/UAPxbRM68mNonWyeSAK5K2iXDgvHBN+aRbT85w O5Di1G9LCYtfZfmhGopfbJVdGUmaitlEWrBTwaFnsUKsRdZNnBMxGYzISvQySreTtuQe fiDWTkwgn6E7FwVujLRjpKW9sSTF7zy9kakmVx18kYTEcUjnD2sEOmS0KLI2IvdsjdfT pNrSrJ2qQVZHY3+VTGmAHTRaxWXcni7yqlrl3tiYx0p/z+GLADZu6l/92BS+Ccok8sT1 /Urw== X-Gm-Message-State: ALoCoQkjhkBj7htr5nJzGxQRA3Y4UZiU9X2fhjFqjUageN1rzLalJvqsvotZwXXm0v3CQiU8RiuM X-Received: by 10.140.40.5 with SMTP id w5mr5263153qgw.65.1394748798307; Thu, 13 Mar 2014 15:13:18 -0700 (PDT) MIME-Version: 1.0 Sender: jmmv@meroh.net Received: by 10.96.83.102 with HTTP; Thu, 13 Mar 2014 15:12:58 -0700 (PDT) X-Originating-IP: [222.228.90.224] In-Reply-To: <5321EF7E.7000500@gentoo.org> References: <5321EF7E.7000500@gentoo.org> From: Julio Merino Date: Fri, 14 Mar 2014 07:12:58 +0900 X-Google-Sender-Auth: lSCWhbh-Hwk_w3yaxSYAXo2t-Mc Message-ID: Subject: Re: GSoC proposition: multiplatform UFS2 driver To: Richard Yao Content-Type: text/plain; charset=ISO-8859-1 Cc: freebsd-hackers@freebsd.org, CeDeROM X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 13 Mar 2014 22:19:48 -0000 On Fri, Mar 14, 2014 at 2:48 AM, Richard Yao wrote: > On 03/12/2014 12:54 PM, CeDeROM wrote: >> My proposition is to create universal UFS2 driver that would work on >> Windows, Linux, and maybe other OS, so we can use native UFS2 as data >> partition among various OS. >> > > I like this idea. In particular, I would like to have UFS2 SU+J > available for use in certain Linux VMs and was thinking about this > possibility earlier in the week. However, I no longer qualify to be a > GSoC student and I do not have time to do it myself. > [...] > Speaking as a kernel filesystem hacker (with most of my experience in > Linux), I think this could be too ambitious depending on how you add > detail. In particular, Linux has a moving target of a VFS (which causes > much pain) and Windows' IFS is very different from the SunOS VFS that > has become the basis for implementing multiple filesystems on different > UNIX implementations and copy-cats. [...] Something worth pointing out here: in NetBSD, and thanks to rump, you can already get the *verbatim* in-kernel code of UFS2 built on a variety of host platforms. You could very easily turn the existing file system code into a FUSE file-system for Linux, for example, or write the necessary shims to bundle the code into a kernel driver. In other words and in my opinion: rewriting file system code from scratch is outside of the scope of GSoC, but writing the glue code for the above to happen doesn't sound too crazy. (The only problem may be if NetBSD's UFS2 driver is not compatible with FreeBSD's... but I believe they should be for the "basic stuff".) Some links: https://github.com/rumpkernel/buildrump.sh http://wiki.netbsd.org/rumpkernel/