Create linux-kernel-device topic branch.

This branch contains the majority of the changes required to cleanly
intergrate with Linux style special devices (/dev/zfs).  Mainly this
means dropping all the Solaris style callbacks and replacing them
with the Linux equivilants.  Additionally, this means slightly
expanding the zfs_ioc_* functions to include a 'struct file *' to
allow the tracking of private data for each open file descriptor.
This is very helpful when you need to maintain a little information
about the open file between ioctls().
This commit is contained in:
Brian Behlendorf 2010-05-14 11:48:06 -07:00
parent 20ee89f0f2
commit 0c443b1d13
4 changed files with 311 additions and 234 deletions

View File

@ -1,3 +1 @@
gcc-branch
fix-branch
feature-branch
zfs-branch

24
.topmsg
View File

@ -1,19 +1,13 @@
From: Brian Behlendorf <behlendorf1@llnl.gov>
Subject: [PATCH] zfs branch
Subject: [PATCH] linux-kernel-device
Merged result of all changes which are relevant to both Solaris
and Linux builds of the ZFS code. These are changes where there
is a reasonable chance they will be accepted upstream.
Additionally, since this is effectively the root of the linux
ZFS tree the core linux build system is added here. This
includes autogen.sh, configure.ac, m4 macros, some scripts/*,
and makefiles for all the core ZFS components. Linux-only
features which require tweaks to the build system should appear
on the relevant topic branches. All autotools products which
result from autogen.sh are commited to the linux-configure-branch.
This branch also contains the META, ChangeLog, AUTHORS, TODO,
and README, files.
This branch contains the majority of the changes required to cleanly
intergrate with Linux style special devices (/dev/zfs). Mainly this
means dropping all the Solaris style callbacks and replacing them
with the Linux equivilants. Additionally, this means slightly
expanding the zfs_ioc_* functions to include a 'struct file *' to
allow the tracking of private data for each open file descriptor.
This is very helpful when you need to maintain a little information
about the open file between ioctls().
Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>

View File

@ -123,6 +123,9 @@ typedef struct zinject_record {
#define ZINJECT_FLUSH_ARC 0x2
#define ZINJECT_UNLOAD_SPA 0x4
#define ZEVENT_NONBLOCK 0x1
#define ZEVENT_SIZE 1024
typedef struct zfs_share {
uint64_t z_exportdata;
uint64_t z_sharedata;
@ -187,6 +190,9 @@ typedef struct zfs_creat {
extern dev_info_t *zfs_dip;
extern int get_nvlist(uint64_t nvl, uint64_t size, int iflag, nvlist_t **nvp);
extern int put_nvlist(zfs_cmd_t *zc, nvlist_t *nvl);
extern int zfs_secpolicy_snapshot_perms(const char *name, cred_t *cr);
extern int zfs_secpolicy_rename_perms(const char *from,
const char *to, cred_t *cr);

File diff suppressed because it is too large Load Diff