Print this page
NEX-6308 namespace collision for per-share kstats when changing sharesmb property
Reviewed by: Gordon Ross <gordon.ross@nexenta.com>
Reviewed by: Evan Layton <evan.layton@nexenta.com>
NEX-6266 SMB kstats namespace collision for share names longer than 28 characters
Reviewed by: Roman Strashkin <roman.strashkin@nexenta.com>
Reviewed by: Gordon Ross <gordon.ross@nexenta.com>
SMB-50 User-mode SMB server
Includes work by these authors:
Thomas Keiser <thomas.keiser@nexenta.com>
Albert Lee <trisk@nexenta.com>
@@ -8,74 +8,112 @@
* source. A copy of the CDDL is also available via the Internet at
* http://www.illumos.org/license/CDDL.
*/
/*
- * Copyright 2013 Nexenta Systems, Inc. All rights reserved.
+ * Copyright 2016 Nexenta Systems, Inc. All rights reserved.
* Copyright 2017 RackTop Systems.
*/
#include <sys/types.h>
#include <sys/kstat.h>
#include <sys/systm.h>
/*ARGSUSED*/
kstat_t *
+kstat_create(const char *ks_module, int ks_instance, const char *ks_name,
+ const char *ks_class, uchar_t ks_type, uint_t ks_ndata, uchar_t ks_flags)
+{
+ return (NULL);
+}
+
+/*ARGSUSED*/
+kstat_t *
kstat_create_zone(const char *ks_module, int ks_instance, const char *ks_name,
const char *ks_class, uchar_t ks_type, uint_t ks_ndata, uchar_t ks_flags,
zoneid_t ks_zoneid)
{
return (NULL);
}
/*ARGSUSED*/
+void
+kstat_delete(kstat_t *ksp)
+{}
+
+/*ARGSUSED*/
kstat_t *
-kstat_create(const char *ks_module, int ks_instance, const char *ks_name,
- const char *ks_class, uchar_t ks_type, uint_t ks_ndata, uchar_t ks_flags)
+kstat_hold_byname(const char *ks_module, int ks_instance, const char *ks_name,
+ zoneid_t ks_zoneid)
{
return (NULL);
}
/*ARGSUSED*/
void
-kstat_named_init(kstat_named_t *knp, const char *name, uchar_t type)
+kstat_install(kstat_t *ksp)
{}
/*ARGSUSED*/
void
-kstat_install(kstat_t *ksp)
+kstat_named_init(kstat_named_t *knp, const char *name, uchar_t type)
{}
/*ARGSUSED*/
void
-kstat_delete(kstat_t *ksp)
+kstat_named_setstr(kstat_named_t *knp, const char *src)
{}
/*ARGSUSED*/
void
-kstat_waitq_enter(kstat_io_t *kiop)
+kstat_rele(kstat_t *ksp)
{}
/*ARGSUSED*/
void
-kstat_waitq_exit(kstat_io_t *kiop)
+kstat_runq_back_to_waitq(kstat_io_t *kiop)
{}
/*ARGSUSED*/
void
kstat_runq_enter(kstat_io_t *kiop)
{}
/*ARGSUSED*/
void
+kstat_runq_enter_time(kstat_io_t *kiop, hrtime_t t)
+{}
+
+/*ARGSUSED*/
+void
kstat_runq_exit(kstat_io_t *kiop)
{}
/*ARGSUSED*/
void
-kstat_waitq_to_runq(kstat_io_t *kiop)
+kstat_runq_exit_time(kstat_io_t *kiop, hrtime_t t)
{}
/*ARGSUSED*/
void
-kstat_runq_back_to_waitq(kstat_io_t *kiop)
+kstat_waitq_enter(kstat_io_t *kiop)
+{}
+
+/*ARGSUSED*/
+void
+kstat_waitq_enter_time(kstat_io_t *kiop, hrtime_t t)
+{}
+
+/*ARGSUSED*/
+void
+kstat_waitq_exit(kstat_io_t *kiop)
+{}
+
+/*ARGSUSED*/
+void
+kstat_waitq_exit_time(kstat_io_t *kiop, hrtime_t t)
+{}
+
+/*ARGSUSED*/
+void
+kstat_waitq_to_runq(kstat_io_t *kiop)
{}