svn commit: r368389 - in stable/12/sys/cddl: compat/opensolaris/sys contrib/opensolaris/uts/common/fs/zfs contrib/opensolaris/uts/common/fs/zfs/sys
Eugene Grosbein
eugen at FreeBSD.org
Sun Dec 6 16:22:27 UTC 2020
Author: eugen
Date: Sun Dec 6 16:22:26 2020
New Revision: 368389
URL: https://svnweb.freebsd.org/changeset/base/368389
Log:
MFC r364027 by arichardson: Fix linker error in libuutil with recent LLVM
This also fixes nanobsd-style build (cross-compiling).
Original commit log:
Not marking the function as static can result in a linker error:
undefined reference to __assfail [--no-allow-shlib-undefined]
I noticed this error after updating our CHERI LLVM to the latest upstream
LLVM HEAD revision.
This change effectively reverts r329984 and marks dmu_buf_init_user as
static (which keeps the GCC build happy).
Reviewed By: #zfs, asomers, freqlabs, mav
Differential Revision: https://reviews.freebsd.org/D25663
Modified:
stable/12/sys/cddl/compat/opensolaris/sys/assfail.h
stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dbuf.c
stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dmu.h
Directory Properties:
stable/12/ (props changed)
Modified: stable/12/sys/cddl/compat/opensolaris/sys/assfail.h
==============================================================================
--- stable/12/sys/cddl/compat/opensolaris/sys/assfail.h Sun Dec 6 15:58:50 2020 (r368388)
+++ stable/12/sys/cddl/compat/opensolaris/sys/assfail.h Sun Dec 6 16:22:26 2020 (r368389)
@@ -48,9 +48,7 @@ void assfail3(const char *, uintmax_t, const char *, u
#ifndef HAVE_ASSFAIL
extern int aok;
-__inline int __assfail(const char *expr, const char *file, int line);
-
-__inline int
+static __inline int
__assfail(const char *expr, const char *file, int line)
{
Modified: stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dbuf.c
==============================================================================
--- stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dbuf.c Sun Dec 6 15:58:50 2020 (r368388)
+++ stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dbuf.c Sun Dec 6 16:22:26 2020 (r368389)
@@ -175,13 +175,6 @@ static int __dbuf_hold_impl(struct dbuf_hold_impl_data
static boolean_t dbuf_undirty(dmu_buf_impl_t *db, dmu_tx_t *tx);
static void dbuf_write(dbuf_dirty_record_t *dr, arc_buf_t *data, dmu_tx_t *tx);
-#ifndef __lint
-extern inline void dmu_buf_init_user(dmu_buf_user_t *dbu,
- dmu_buf_evict_func_t *evict_func_sync,
- dmu_buf_evict_func_t *evict_func_async,
- dmu_buf_t **clear_on_evict_dbufp);
-#endif /* ! __lint */
-
/*
* Global data structures and functions for the dbuf cache.
*/
Modified: stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dmu.h
==============================================================================
--- stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dmu.h Sun Dec 6 15:58:50 2020 (r368388)
+++ stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dmu.h Sun Dec 6 16:22:26 2020 (r368389)
@@ -610,7 +610,7 @@ typedef struct dmu_buf_user {
* To allow enforcement of this, dbu must already be zeroed on entry.
*/
/*ARGSUSED*/
-inline void
+static inline void
dmu_buf_init_user(dmu_buf_user_t *dbu, dmu_buf_evict_func_t *evict_func_sync,
dmu_buf_evict_func_t *evict_func_async, dmu_buf_t **clear_on_evict_dbufp)
{
More information about the svn-src-all
mailing list