From 8c7748d8e0290f8b095f964086a67bea07893ce4 Mon Sep 17 00:00:00 2001 From: Brian Behlendorf Date: Wed, 16 Jun 2010 09:55:34 -0700 Subject: [PATCH] Add linux-topology topic branch 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. --- .topdeps | 3 +-- .topmsg | 21 ++++++--------------- lib/libzfs/include/libzfs_impl.h | 4 ++++ lib/libzfs/libzfs_dataset.c | 1 + lib/libzfs/libzfs_fru.c | 17 +++++++++++++++++ 5 files changed, 29 insertions(+), 17 deletions(-) diff --git a/.topdeps b/.topdeps index ff8849266b..7f16cbcdd5 100644 --- a/.topdeps +++ b/.topdeps @@ -1,2 +1 @@ -gcc-branch -fix-branch +zfs-branch diff --git a/.topmsg b/.topmsg index 03967cdff5..86d40a0843 100644 --- a/.topmsg +++ b/.topmsg @@ -1,19 +1,10 @@ From: Brian Behlendorf -Subject: [PATCH] zfs branch +Subject: [PATCH] linux topology -Merged result of all changes which are relevant to both Solaris -and Linux builds of the ZFS code. These are changes where there -is a reasonable chance they will be accepted upstream. - -Additionally, since this is effectively the root of the linux -ZFS tree the core linux build system is added here. This -includes autogen.sh, configure.ac, m4 macros, some scripts/*, -and makefiles for all the core ZFS components. Linux-only -features which require tweaks to the build system should appear -on the relevant topic branches. All autotools products which -result from autogen.sh are commited to the linux-configure-branch. - -This branch also contains the META, ChangeLog, AUTHORS, TODO, -and README, files. +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 diff --git a/lib/libzfs/include/libzfs_impl.h b/lib/libzfs/include/libzfs_impl.h index 89c48c1c03..3f540e37d2 100644 --- a/lib/libzfs/include/libzfs_impl.h +++ b/lib/libzfs/include/libzfs_impl.h @@ -37,7 +37,9 @@ #include #include +#if defined(HAVE_LIBTOPO) #include +#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]; }; diff --git a/lib/libzfs/libzfs_dataset.c b/lib/libzfs/libzfs_dataset.c index 17377013cf..40164854e6 100644 --- a/lib/libzfs/libzfs_dataset.c +++ b/lib/libzfs/libzfs_dataset.c @@ -26,6 +26,7 @@ #include #include +#include #include #include #include diff --git a/lib/libzfs/libzfs_fru.c b/lib/libzfs/libzfs_fru.c index 788fa2cfb7..78f2f9c371 100644 --- a/lib/libzfs/libzfs_fru.c +++ b/lib/libzfs/libzfs_fru.c @@ -34,6 +34,8 @@ #include +#if defined(HAVE_LIBTOPO) + #include #include #include @@ -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 */ + +