forked from luck/tmp_suning_uos_patched
nfsd: add more information to client info file
Add ip address, full client-provided identifier, and minor version. There's much more that could possibly be useful but this is a start. Signed-off-by: J. Bruce Fields <bfields@redhat.com>
This commit is contained in:
parent
ea053e164c
commit
169319f13c
|
@ -42,6 +42,7 @@
|
||||||
#include <linux/sunrpc/svcauth_gss.h>
|
#include <linux/sunrpc/svcauth_gss.h>
|
||||||
#include <linux/sunrpc/addr.h>
|
#include <linux/sunrpc/addr.h>
|
||||||
#include <linux/jhash.h>
|
#include <linux/jhash.h>
|
||||||
|
#include <linux/string_helpers.h>
|
||||||
#include "xdr4.h"
|
#include "xdr4.h"
|
||||||
#include "xdr4cb.h"
|
#include "xdr4cb.h"
|
||||||
#include "vfs.h"
|
#include "vfs.h"
|
||||||
|
@ -2214,6 +2215,13 @@ find_stateid_by_type(struct nfs4_client *cl, stateid_t *t, char typemask)
|
||||||
return s;
|
return s;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void seq_quote_mem(struct seq_file *m, char *data, int len)
|
||||||
|
{
|
||||||
|
seq_printf(m, "\"");
|
||||||
|
seq_escape_mem_ascii(m, data, len);
|
||||||
|
seq_printf(m, "\"");
|
||||||
|
}
|
||||||
|
|
||||||
static int client_info_show(struct seq_file *m, void *v)
|
static int client_info_show(struct seq_file *m, void *v)
|
||||||
{
|
{
|
||||||
struct inode *inode = m->private;
|
struct inode *inode = m->private;
|
||||||
|
@ -2227,6 +2235,10 @@ static int client_info_show(struct seq_file *m, void *v)
|
||||||
clp = container_of(nc, struct nfs4_client, cl_nfsdfs);
|
clp = container_of(nc, struct nfs4_client, cl_nfsdfs);
|
||||||
memcpy(&clid, &clp->cl_clientid, sizeof(clid));
|
memcpy(&clid, &clp->cl_clientid, sizeof(clid));
|
||||||
seq_printf(m, "clientid: 0x%llx\n", clid);
|
seq_printf(m, "clientid: 0x%llx\n", clid);
|
||||||
|
seq_printf(m, "address: \"%pISpc\"\n", (struct sockaddr *)&clp->cl_addr);
|
||||||
|
seq_printf(m, "name: ");
|
||||||
|
seq_quote_mem(m, clp->cl_name.data, clp->cl_name.len);
|
||||||
|
seq_printf(m, "\nminor version: %d\n", clp->cl_minorversion);
|
||||||
drop_client(clp);
|
drop_client(clp);
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
|
|
Loading…
Reference in New Issue
Block a user