Skip to content
Browse files

Add linux topology support

Solaris recently introduced the idea of drive topology because
where a drive is located does matter.  I have already handled
this with udev/blkid integration under Linux so I'm hopeful
this case can simply be removed but for now I've just stubbed
out what is needed in libspl and commented out the rest here.

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
  • Loading branch information...
1 parent 054bc00 commit 6b003d7cda153c58bb5faab62c5e5a7aab780715 @behlendorf committed Aug 26, 2010
Showing with 21 additions and 0 deletions.
  1. +4 −0 lib/libzfs/include/libzfs_impl.h
  2. +17 −0 lib/libzfs/libzfs_fru.c
View
4 lib/libzfs/include/libzfs_impl.h
@@ -36,7 +36,9 @@
#include <libzfs.h>
#include <libshare.h>
+#if defined(HAVE_LIBTOPO)
#include <fm/libtopo.h>
+#endif /* HAVE_LIBTOPO */
#ifdef __cplusplus
extern "C" {
@@ -74,9 +76,11 @@ struct libzfs_handle {
boolean_t libzfs_mnttab_enable;
avl_tree_t libzfs_mnttab_cache;
int libzfs_pool_iter;
+#if defined(HAVE_LIBTOPO)
topo_hdl_t *libzfs_topo_hdl;
libzfs_fru_t **libzfs_fru_hash;
libzfs_fru_t *libzfs_fru_list;
+#endif /* HAVE_LIBTOPO */
char libzfs_chassis_id[256];
};
View
17 lib/libzfs/libzfs_fru.c
@@ -34,6 +34,8 @@
#include <libzfs.h>
+#if defined(HAVE_LIBTOPO)
+
#include <fm/libtopo.h>
#include <sys/fm/protocol.h>
#include <sys/systeminfo.h>
@@ -450,3 +452,18 @@ libzfs_fru_clear(libzfs_handle_t *hdl, boolean_t final)
ZFS_FRU_HASH_SIZE * sizeof (void *));
}
}
+
+#else /* HAVE_LIBTOPO */
+
+/*
+ * Clear memory associated with the FRU hash.
+ */
+void
+libzfs_fru_clear(libzfs_handle_t *hdl, boolean_t final)
+{
+ return;
+}
+
+#endif /* HAVE_LIBTOPO */
+
+

0 comments on commit 6b003d7

Please sign in to comment.
Something went wrong with that request. Please try again.