lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <4B746B75.8010801@oracle.com>
Date:	Thu, 11 Feb 2010 12:41:25 -0800
From:	Sunil Mushran <sunil.mushran@...cle.com>
To:	Joel Becker <joel.becker@...cle.com>
CC:	ocfs2-devel@....oracle.com, mfasheh@...e.com,
	linux-kernel@...r.kernel.org
Subject: Re: [Ocfs2-devel] [PATCH 01/11] ocfs2_dlmfs: Add capabilities parameter.

Signed-off-by: Sunil Mushran <sunil.mushran@...cle.com>


Joel Becker wrote:
> Over time, dlmfs has added some features that were not part of the
> initial ABI.  Unfortunately, some of these features are not detectable
> via standard usage.  For example, Linux's default poll always returns
> POLLIN, so there is no way for a caller of poll(2) to know when dlmfs
> added poll support.  Instead, we provide this list of new capabilities.
>
> Capabilities is a read-only attribute.  We do it as a module parameter
> so we can discover it whether dlmfs is built in, loaded, or even not
> loaded (via modinfo).
>
> The ABI features are local to this machine's dlmfs mount.  This is
> distinct from the locking protocol, which is concerned with inter-node
> interaction.
>
> Signed-off-by: Joel Becker <joel.becker@...cle.com>
> ---
>  fs/ocfs2/dlm/dlmfs.c |   36 ++++++++++++++++++++++++++++++++++++
>  1 files changed, 36 insertions(+), 0 deletions(-)
>
> diff --git a/fs/ocfs2/dlm/dlmfs.c b/fs/ocfs2/dlm/dlmfs.c
> index 02bf178..77d0df4 100644
> --- a/fs/ocfs2/dlm/dlmfs.c
> +++ b/fs/ocfs2/dlm/dlmfs.c
> @@ -81,6 +81,42 @@ static const struct dlm_protocol_version user_locking_protocol = {
>  	.pv_minor = OCFS2_LOCKING_PROTOCOL_MINOR,
>  };
>  
> +
> +/*
> + * These are the ABI capabilities of dlmfs.
> + *
> + * Over time, dlmfs has added some features that were not part of the
> + * initial ABI.  Unfortunately, some of these features are not detectable
> + * via standard usage.  For example, Linux's default poll always returns
> + * POLLIN, so there is no way for a caller of poll(2) to know when dlmfs
> + * added poll support.  Instead, we provide this list of new capabilities.
> + *
> + * Capabilities is a read-only attribute.  We do it as a module parameter
> + * so we can discover it whether dlmfs is built in, loaded, or even not
> + * loaded.
> + *
> + * The ABI features are local to this machine's dlmfs mount.  This is
> + * distinct from the locking protocol, which is concerned with inter-node
> + * interaction.
> + */
> +#define DLMFS_CAPABILITIES ""
> +extern int param_set_dlmfs_capabilities(const char *val,
> +					struct kernel_param *kp)
> +{
> +	printk(KERN_ERR "%s: readonly parameter\n", kp->name);
> +	return -EINVAL;
> +}
> +static int param_get_dlmfs_capabilities(char *buffer,
> +					struct kernel_param *kp)
> +{
> +	return strlcpy(buffer, DLMFS_CAPABILITIES,
> +		       strlen(DLMFS_CAPABILITIES) + 1);
> +}
> +module_param_call(capabilities, param_set_dlmfs_capabilities,
> +		  param_get_dlmfs_capabilities, NULL, 0444);
> +MODULE_PARM_DESC(capabilities, DLMFS_CAPABILITIES);
> +
> +
>  /*
>   * decodes a set of open flags into a valid lock level and a set of flags.
>   * returns < 0 if we have invalid flags
>   

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ