[SCM] Samba Shared Repository - branch master updated
Anoop C S
anoopcs at samba.org
Mon Aug 5 16:07:02 UTC 2024
The branch, master has been updated
via de2f76fa47e vfs_ceph_new: Unconditionally use ceph_select_filesystem
via d8c84a2993b docs-xml/manpages: add entry for vfs_ceph_new
from a5f47f6efe6 docs-xml: Delete descriptions for removed commands "net ads keytab add" and "net ads keytab add_update_ads"
https://git.samba.org/?p=samba.git;a=shortlog;h=master
- Log -----------------------------------------------------------------
commit de2f76fa47e6e672ce353ea9d3dc4019965c6491
Author: Anoop C S <anoopcs at samba.org>
Date: Fri Aug 2 11:10:28 2024 +0530
vfs_ceph_new: Unconditionally use ceph_select_filesystem
Currently we don't have an explicit check for the presence of
ceph_select_filesystem() libcephfs API as it is always found to
be present with the minimum ceph version that is supported with
Samba right now. Therefore under this assumption directly call
ceph_select_filesystem() without any #ifdefs. Please note that
this change is already part of vfs_ceph via ef0068cd.
ref: https://gitlab.com/samba-team/samba/-/merge_requests/3715
BUG: https://bugzilla.samba.org/show_bug.cgi?id=15686
Signed-off-by: Anoop C S <anoopcs at samba.org>
Reviewed-by: Guenther Deschner <gd at samba.org>
Autobuild-User(master): Anoop C S <anoopcs at samba.org>
Autobuild-Date(master): Mon Aug 5 16:06:47 UTC 2024 on atb-devel-224
commit d8c84a2993b84ebb69011c33c1b5d44801c15363
Author: Shachar Sharon <ssharon at redhat.com>
Date: Tue Feb 20 19:37:45 2024 +0200
docs-xml/manpages: add entry for vfs_ceph_new
Create man entry for the newly added vfs_ceph_new module: almost
identical to existing vfs_ceph, except to the configuration entry:
[sharename]
vfs objects = ceph_new
...
Adds a bit of info for the motivation behind this new module.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=15686
Signed-off-by: Shachar Sharon <ssharon at redhat.com>
Reviewed-by: Guenther Deschner <gd at samba.org>
Reviewed-by: Anoop C S <anoopcs at samba.org>
-----------------------------------------------------------------------
Summary of changes:
.../{vfs_ceph.8.xml => vfs_ceph_new.8.xml} | 48 +++++++++++++---------
docs-xml/wscript_build | 1 +
source3/modules/vfs_ceph_new.c | 19 +--------
3 files changed, 31 insertions(+), 37 deletions(-)
copy docs-xml/manpages/{vfs_ceph.8.xml => vfs_ceph_new.8.xml} (71%)
Changeset truncated at 500 lines:
diff --git a/docs-xml/manpages/vfs_ceph.8.xml b/docs-xml/manpages/vfs_ceph_new.8.xml
similarity index 71%
copy from docs-xml/manpages/vfs_ceph.8.xml
copy to docs-xml/manpages/vfs_ceph_new.8.xml
index 47b5523b9a1..7a65b965ce0 100644
--- a/docs-xml/manpages/vfs_ceph.8.xml
+++ b/docs-xml/manpages/vfs_ceph_new.8.xml
@@ -1,9 +1,9 @@
<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE refentry PUBLIC "-//Samba-Team//DTD DocBook V4.2-Based Variant V1.0//EN" "http://www.samba.org/samba/DTD/samba-doc">
-<refentry id="vfs_ceph.8">
+<refentry id="vfs_ceph_new.8">
<refmeta>
- <refentrytitle>vfs_ceph</refentrytitle>
+ <refentrytitle>vfs_ceph_new</refentrytitle>
<manvolnum>8</manvolnum>
<refmiscinfo class="source">Samba</refmiscinfo>
<refmiscinfo class="manual">System Administration tools</refmiscinfo>
@@ -12,15 +12,15 @@
<refnamediv>
- <refname>vfs_ceph</refname>
+ <refname>vfs_ceph_new</refname>
<refpurpose>
- Utilize features provided by CephFS
+ Utilize features provided by libcephfs low-level APIs
</refpurpose>
</refnamediv>
<refsynopsisdiv>
<cmdsynopsis>
- <command>vfs objects = ceph</command>
+ <command>vfs objects = ceph_new</command>
</cmdsynopsis>
</refsynopsisdiv>
@@ -32,7 +32,7 @@
<manvolnum>8</manvolnum></citerefentry> suite.</para>
<para>
- The <command>vfs_ceph</command> VFS module exposes
+ The <command>vfs_ceph_new</command> VFS module exposes
CephFS specific features for use by Samba.
</para>
@@ -51,37 +51,47 @@
</para>
<para>
- <command>vfs_ceph</command> performs mapping between Windows and
- POSIX Access Control Lists (ACLs). To ensure correct processing
- and enforcement of POSIX ACLs, the following Ceph configuration
- parameters are automatically applied:
+ <command>vfs_ceph_new</command> performs mapping between Windows
+ and POSIX Access Control Lists (ACLs). To ensure correct
+ processing and enforcement of POSIX ACLs, the following Ceph
+ configuration parameters are automatically applied:
</para>
<programlisting>
<command>client acl type = posix_acl</command>
<command>fuse default permissions = false</command>
</programlisting>
+
+ <para>
+ <emphasis role="strong">NOTE</emphasis>:
+ This is a second implementation of a ceph module which uses libcephfs
+ low-level APIs (compared to the original
+ <citerefentry><refentrytitle>vfs_ceph</refentrytitle>
+ <manvolnum>8</manvolnum></citerefentry> module which uses path-based
+ APIs). Using the low-level API allows more optimized and fine-grained
+ access to the Ceph storage layer.
+ </para>
</refsect1>
<refsect1>
<title>CONFIGURATION</title>
<para>
- <command>vfs_ceph</command> requires that the underlying share
- path is a Ceph filesystem.
+ <command>vfs_ceph_new</command> requires that the underlying
+ share path is a Ceph filesystem.
</para>
<programlisting>
<smbconfsection name="[share]"/>
- <smbconfoption name="vfs objects">ceph</smbconfoption>
+ <smbconfoption name="vfs objects">ceph_new</smbconfoption>
<smbconfoption name="path">/non-mounted/cephfs/path</smbconfoption>
<smbconfoption name="kernel share modes">no</smbconfoption>
</programlisting>
<para>
- Since <command>vfs_ceph</command> does not require a filesystem
- mount, the share <command>path</command> is treated differently:
- it is interpreted as an absolute path within the Ceph filesystem
- on the attached Ceph cluster.
+ Since <command>vfs_ceph_new</command> does not require a
+ filesystem mount, the share <command>path</command> is treated
+ differently: it is interpreted as an absolute path within the
+ Ceph filesystem on the attached Ceph cluster.
In a ctdb cluster environment where ctdb manages Samba,
<command>CTDB_SAMBA_SKIP_SHARE_CHECK=yes</command> must be
configured to disable local share path checks, otherwise ctdb
@@ -133,8 +143,8 @@
<para>
Allows one to explicitly select the CephFS file system
to use when the Ceph cluster supports more than one
- file system. Empty by default (use the default file system
- of the Ceph cluster).
+ file system. Empty by default (use the default file
+ system of the Ceph cluster).
</para>
<para>
Example: ceph:filesystem = myfs2
diff --git a/docs-xml/wscript_build b/docs-xml/wscript_build
index 434afacaf1e..967e18a6596 100644
--- a/docs-xml/wscript_build
+++ b/docs-xml/wscript_build
@@ -78,6 +78,7 @@ vfs_module_manpages = ['vfs_acl_tdb',
'vfs_cap',
'vfs_catia',
'vfs_ceph',
+ 'vfs_ceph_new',
'vfs_ceph_snapshots',
'vfs_commit',
'vfs_crossrename',
diff --git a/source3/modules/vfs_ceph_new.c b/source3/modules/vfs_ceph_new.c
index 3c82730f87c..99d4a1fe407 100644
--- a/source3/modules/vfs_ceph_new.c
+++ b/source3/modules/vfs_ceph_new.c
@@ -169,23 +169,6 @@ static char *cephmount_get_cookie(TALLOC_CTX * mem_ctx, const int snum)
fsname);
}
-static int cephmount_select_fs(struct ceph_mount_info *mnt, const char *fsname)
-{
- /*
- * ceph_select_filesystem was added in ceph 'nautilus' (v14).
- * Earlier versions of libcephfs will lack that API function.
- * At the time of this writing (Feb 2023) all versions of ceph
- * supported by ceph upstream have this function.
- */
-#if defined(HAVE_CEPH_SELECT_FILESYSTEM)
- DBG_DEBUG("[CEPH] calling: ceph_select_filesystem with %s\n", fsname);
- return ceph_select_filesystem(mnt, fsname);
-#else
- DBG_ERR("[CEPH] ceph_select_filesystem not available\n");
- return -ENOTSUP;
-#endif
-}
-
static struct ceph_mount_info *cephmount_mount_fs(const int snum)
{
int ret;
@@ -235,7 +218,7 @@ static struct ceph_mount_info *cephmount_mount_fs(const int snum)
* 'pacific'. Permit different shares to access different file systems.
*/
if (fsname != NULL) {
- ret = cephmount_select_fs(mnt, fsname);
+ ret = ceph_select_filesystem(mnt, fsname);
if (ret < 0) {
goto err_cm_release;
}
--
Samba Shared Repository
More information about the samba-cvs
mailing list