Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ZFS in kernel support. #145

Merged
merged 4 commits into from
Oct 11, 2012
Merged

ZFS in kernel support. #145

merged 4 commits into from
Oct 11, 2012

Conversation

jcumming
Copy link
Contributor

http://zfsonlinux.org in-kernel ZFS.

This is the kernel modules and utilities needed to create zfs pools and zfs filesystems, and mount them.

@shlevy shlevy merged commit b70d41d into NixOS:master Oct 11, 2012
@jcumming
Copy link
Contributor Author

Kernel 3.6 compatibility problem identified:

openzfs/spl#177

@shlevy
Copy link
Member

shlevy commented Oct 11, 2012

@jcumming Is it fixed upstream? Can we (conditionally, if needed) apply a patch locally?

@jcumming
Copy link
Contributor Author

There is a patch to fix it upstream. It looks like it does the right thing for all kernel versions. I think we can patch it locally until there is an upstream release.

@ryao
Copy link

ryao commented Oct 13, 2012

Github is awesome. I spotted this discussion because you referenced the upstream one. Anyway, Let me introduce myself. I am the Gentoo Linux ZFS maintainer and I am a regular contributor to upstream in the form of stability and compatibilty fixes. I am also listed as part of upstream's github organization, although I am strictly a volunteer.

In the past, I wrote support for newer kernels with the aim to do it before Linus tagged his release. However, my time for Linux 3.6 was too limited to finish this before Linus' tag. I posted my partial attempt in the hope that it would be useful either to me when I had time or to someone else should they have time before I did. The latter is what happened and while 3.6 support is written, I have not had adequate time to finish review of the proposed revisions to my work.

You can cherry-pick this, which is exactly what was done in Sabayon Linux. In the case of Sabayon, that was a bit rushed, but it was done under my strict guidance. My suggestion to you is to wait a few days for everyone involved at upstream to finish review. This should be merged early next week and then it would be easy to cherry pick.

Alternatively, you could also cheat by taking the version that I commit to Gentoo on the weekend after I finish my review. Historically, the version that I commit to Gentoo is logically equivalent to what is accepted into upstream.I have a strict personal rule that the only changes made to the upstream ZFS code in Gentoo's packages are stability and compatibility fixes, so you might also be interested in the other things that I back port with 3.6 support when I make that commit to Gentoo.

on Linux implementation possible if you are willing to download and build it
yourself.
'';

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There are a few things wrong here.

The first is that the SPL is GPL-licensed and you appear to be relicensing it under the CDDL, which is not permissible. As a contributor to ZFSOnLinux, I have not given consent for a license change and I doubt any other contributor has.

The second is that as far as I know, the only license conflict is when the ZFS code is a part of the kernel binary. There does not appear to be a problem when it is a separate module. in particular, no one who claims that there is a problem has done anything more than say that they do not like CDDL licensed code. They have offered no explanation of which terms of the licenses are in conflict, even upon request.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the correction! I've fixed it in #151 .

The licensing note is derived from: http://zfsonlinux.org/faq.html#WhatAboutTheLicensingIssue .

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Currently, Gentoo Linux's LiveDVD includes ZFS in binary form as does Sabayon Linux, a Gentoo derivative. That passed the Gentoo Foundation's legal review.

I had a brief chat about this in IRC with, @behlendorf, who is the ZFSOnLinux lead developer at LLNL:

12:33 < ryao> behlendorf: You might want to look at this: https://github.com/NixOS/nixpkgs/pull/145
12:36 < ryao> behlendorf: In particular, the discussion there reveals that the current FAQ entry on licensing is somewhat vague. As far as I (and others) can tell, a derived work would require building ZFS into the kernel. As a separate module, it should no different than drivers being distributed by various companies in the form of binary blobs.
12:41 < behlendorf> ryao: Thanks, I should probably rework that entry in the FAQ.
12:43 < behlendorf> ryao: And your absolutely right.  Distributing source is 100% fine and binaries are OK too as long as they are done as kernel modules.

The two of us believe that you should have no license issues.

@bluescreen303
Copy link
Contributor

Alan Cox does not seem to agree on the module part.
He recently warned nvidia about this. As nvidia does not build their driver into the kernel, but distribute a separate module, I guess this is similar and still counts as a derived work.
http://linux.slashdot.org/story/12/10/11/1918251/alan-cox-to-nvidia-you-cant-use-dma-buf

@ryao
Copy link

ryao commented Oct 15, 2012

That involves something known as a GPL exported symbol. ZFS does not use any of these. Nvidia wanted to use one and requested that the GPL restriction be removed. Alan Cox did not like that.

@bluescreen303
Copy link
Contributor

On Mon, Oct 15, 2012 at 7:21 PM, Richard Yao notifications@github.comwrote:

That involves something known as a GPL exported symbol. ZFS does not use
any of these. Nvidia wanted to use one and requested that the GPL
restriction be removed. Alan Cox did not like that.

Right, but then he warned them that even if that symbol would be exported
non-GPL, using it from a proprietary module would still not be allowed as
it counts as a derived work.

At least that's what I made of it. Perhaps he just meant to warn them that
if they would just go ahead and use it despite the GPL status of that
symbol.

Reply to this email directly or view it on GitHubhttps://github.com//pull/145#issuecomment-9453462.

@ryao
Copy link

ryao commented Oct 15, 2012

I think we can agree what Nvidia is doing has nothing to do with ZFS.

@bluescreen303
Copy link
Contributor

Fine with me,

I was just responding to the assumption that building an (external) module
does not count as a derived work, which seems to be criticized by some.

On Mon, Oct 15, 2012 at 7:28 PM, Richard Yao notifications@github.comwrote:

I think we can agree what Nvidia is doing has nothing to do with ZFS.


Reply to this email directly or view it on GitHubhttps://github.com//pull/145#issuecomment-9453712.

@behlendorf
Copy link

It's hard to make a legitimate case that ZFS is a derivative work of Linux. But don't take my word for it, here's what Linus had to say about AFS when similar concerns were raised.

edolstra pushed a commit to edolstra/nixpkgs that referenced this pull request Oct 1, 2013
Remove obsolete option in Xen domU module
chexxor pushed a commit to chexxor/nixos-configurations that referenced this pull request Nov 6, 2013
chexxor pushed a commit to chexxor/nixos-configurations that referenced this pull request Nov 6, 2013
Profpatsch pushed a commit that referenced this pull request Jun 20, 2020
This pull request was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants