[4/8] PNFS ioctls/syscall

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



In this topic I would like to present the API I use for exporting
PNFS layouts, and recall layouts from a Kernel FileSystem.

I use this API from the Ganesha server, to enable pnfs export
both from the in Kernel exofs FS, as well as from the proprietary
PanFS filesystem driver of the Panasas's cluster. Same exact API
works well.

The API is currently an IOCTL based, I understand it might want to
be delegated to a syscall. With common code.

The API is based on all the same types and structures as the In Kernel
(out-of-tree) PNFS project and API's. 80% of the vectors implemented
for the in-kernel server are identical to the in-kernel implementation.
The remaining 20% can have a common core code at the FS, and two wrappers
one for each server. Mainly the big difference is in how the RECALLs are
made.

The two filesystems I coded also use a common library I call libpnfs_logic
which can or not be used by FSs to implement their internal logic. This
is because all this logic is currently inside the KPNFSD server, but it
cannot be when the Server is in user mode. The In Kernel Server can also
be converted to use libpnfs_logic but I have not yet attempted such a conversion
and the code is currently duplicated.

I will post later, the header I use for the IOCTL and a git URL for the
hard cores.

But we need not talk details, we should only discus in principle if it is
wanted, and how it should fit with the In-Kernel PNFS project.

Thanks
Boaz

--
To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Ext4 Filesystem]     [Union Filesystem]     [Filesystem Testing]     [Ceph Users]     [Ecryptfs]     [AutoFS]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux Cachefs]     [Reiser Filesystem]     [Linux RAID]     [Samba]     [Device Mapper]     [CEPH Development]
  Powered by Linux