{"shas":[["bd2f5ac97f4265523fb1397d845eabb8647c79e4","32d50ad1e384dcb9a5bf7e40fa470df5dabaf348@llnl.gov","Avoid 'rpm -q' bug for 'make pkg'\n\nRPM version 4.9.0 has been observed to generate extra debug\nmessages in certain cases.  These debug messages prevent us\nfrom cleanly acquiring the architecture.  This is clearly\nan upstream RPM bug which will get fixed.  But until then\na safe solution is to pipe the result through 'tail -1'\nto just grab the architecture bit we care about.\n\nExample 'rpm -qp spl-0.6.0-rc4.src.rpm --qf %{arch}' output:\n\nFreeing read locks for locker 0x166: 28031/47480843735008\nFreeing read locks for locker 0x168: 28031/47480843735008\nx86_64","Brian Behlendorf"],["5c03efc379693f992ebe39c6a00c7297c4a304ea","32d50ad1e384dcb9a5bf7e40fa470df5dabaf348@llnl.gov","Linux compat 2.6.39: security_inode_init_security()\n\nThe security_inode_init_security() function now takes an additional\nqstr argument which must be passed in from the dentry if available.\nPassing a NULL is safe when no qstr is available the relevant\nsecurity checks will just be skipped.\n\nCloses #246\nCloses #217\nCloses #187","Brian Behlendorf"],["2cf7f52bc42f215d4ef27d0fd75fc1b1417cb841","32d50ad1e384dcb9a5bf7e40fa470df5dabaf348@llnl.gov","Linux compat 2.6.39: mount_nodev()\n\nThe .get_sb callback has been replaced by a .mount callback\nin the file_system_type structure.  When using the new\ninterface the caller must now use the mount_nodev() helper.\n\nUnfortunately, the new interface no longer passes the vfsmount\ndown to the zfs layers.  This poses a problem for the existing\nimplementation because we currently save this pointer in the\nsuper block for latter use.  It provides our only entry point\nin to the namespace layer for manipulating certain mount options.\n\nThis needed to be done originally to allow commands like\n'zfs set atime=off tank' to work properly.  It also allowed me\nto keep more of the original Solaris code unmodified.  Under\nSolaris there is a 1-to-1 mapping between a mount point and a\nfile system so this is a fairly natural thing to do.  However,\nunder Linux they many be multiple entries in the namespace\nwhich reference the same filesystem.  Thus keeping a back\nreference from the filesystem to the namespace is complicated.\n\nRather than introduce some ugly hack to get the vfsmount and\ncontinue as before.  I'm leveraging this API change to update\nthe ZFS code to do things in a more natural way for Linux.\nThis has the upside that is resolves the compatibility issue\nfor the long term and fixes several other minor bugs which\nhave been reported.\n\nThis commit updates the code to remove this vfsmount back\nreference entirely.  All modifications to filesystem mount\noptions are now passed in to the kernel via a '-o remount'.\nThis is the expected Linux mechanism and allows the namespace\nto properly handle any options which apply to it before passing\nthem on to the file system itself.\n\nAside from fixing the compatibility issue, removing the\nvfsmount has had the benefit of simplifying the code.  This\nchange which fairly involved has turned out nicely.\n\nCloses #246\nCloses #217\nCloses #187\nCloses #248\nCloses #231","Brian Behlendorf"],["a89c3e0bd509267225b5699c65aaf39acf2fce18","6993f5fa07dd54305169578dee233c9dca48cd55@gmail.com","Support mandatory locks (nbmand)\n\nThe Linux kernel already has support for mandatory locking.  This\nchange just replaces the Solaris mandatory locking calls with the\nLinux equivilants.  In fact, it looks like this code could be\nremoved entirely because this checking is already done generically\nin the Linux VFS.  However, for now we'll leave it in place even\nif it is redundant just in case we missed something.\n\nThe original patch to update the code to support mandatory locking\nwas done by Rohan Puri.  This patch is an updated version which is\ncompatible with the previous mount option handling changes.\n\nOriginal-Patch-by: Rohan Puri <rohan.puri15@gmail.com>\nSigned-off-by: Brian Behlendorf <behlendorf1@llnl.gov>\nCloses #222\nCloses #253","Rohan Puri"],["f2cfee80e3f94cd9d67c3f1abec97c9a5a5ecc17","32d50ad1e384dcb9a5bf7e40fa470df5dabaf348@llnl.gov","Fix implicit declaration of 'mkdirp'\n\nThe lib/libspl/include/libgen.h header file was being mistakenly\nleft out of the 'make dist' tarball.  It just happens this doesn't\ncause a build failure when creating packages because the system\nlibgen/h is included instead.  This simply results in the following\nwarning due to the missing forward declaration of mkdirp().\n\n  ../../lib/libzfs/libzfs_mount.c:417:3: warning: implicit declaration\n  of function 'mkdirp' [-Wimplicit-function-declaration]","Brian Behlendorf"],["285226eff39b807c154748a75cef57ddff08a352","32d50ad1e384dcb9a5bf7e40fa470df5dabaf348@llnl.gov","Always allow non-user xattrs\n\nUnder Linux you may only disable USER xattrs.  The SECURITY,\nSYSTEM, and TRUSTED xattr namespaces must always be available\nif xattrs are supported by the filesystem.  The enforcement\nof USER xattrs is performed in the zpl_xattr_user_* handlers.\n\nUnder Solaris there is only a single xattr namespace which\nis managed globally.","Brian Behlendorf"]],"ref":"refs/heads/master","size":6,"head":"285226eff39b807c154748a75cef57ddff08a352","push_id":35518585}