Compile cityhash code into libzfs

Make the cityhash code compile into libzfs, in preparation for the new
"zstream" command.

Reviewed-by: Paul Dagnelie <pcd@delphix.com>
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by: Matthew Ahrens <mahrens@delphix.com>
Closes #10152
This commit is contained in:
Matthew Ahrens 2020-03-27 09:11:22 -07:00 committed by GitHub
parent ef3331e703
commit 3f38797338
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
10 changed files with 11 additions and 6 deletions

View File

@ -1,6 +1,7 @@
SUBDIRS = sys os SUBDIRS = sys os
COMMON_H = \ COMMON_H = \
$(top_srcdir)/include/cityhash.h \
$(top_srcdir)/include/zfeature_common.h \ $(top_srcdir)/include/zfeature_common.h \
$(top_srcdir)/include/zfs_comutil.h \ $(top_srcdir)/include/zfs_comutil.h \
$(top_srcdir)/include/zfs_deleg.h \ $(top_srcdir)/include/zfs_deleg.h \

View File

@ -14,7 +14,6 @@ COMMON_H = \
$(top_srcdir)/include/sys/bptree.h \ $(top_srcdir)/include/sys/bptree.h \
$(top_srcdir)/include/sys/btree.h \ $(top_srcdir)/include/sys/btree.h \
$(top_srcdir)/include/sys/bqueue.h \ $(top_srcdir)/include/sys/bqueue.h \
$(top_srcdir)/include/sys/cityhash.h \
$(top_srcdir)/include/sys/dataset_kstats.h \ $(top_srcdir)/include/sys/dataset_kstats.h \
$(top_srcdir)/include/sys/dbuf.h \ $(top_srcdir)/include/sys/dbuf.h \
$(top_srcdir)/include/sys/ddt.h \ $(top_srcdir)/include/sys/ddt.h \

View File

@ -38,6 +38,7 @@ endif
KERNEL_C = \ KERNEL_C = \
algs/sha2/sha2.c \ algs/sha2/sha2.c \
cityhash.c \
zfeature_common.c \ zfeature_common.c \
zfs_comutil.c \ zfs_comutil.c \
zfs_deleg.c \ zfs_deleg.c \

View File

@ -11,6 +11,7 @@ ccflags-y := $(ZFS_MODULE_CFLAGS) $(ZFS_MODULE_CPPFLAGS)
# Suppress unused-value warnings in sparc64 architecture headers # Suppress unused-value warnings in sparc64 architecture headers
ccflags-$(CONFIG_SPARC64) += -Wno-unused-value ccflags-$(CONFIG_SPARC64) += -Wno-unused-value
$(MODULE)-objs += cityhash.o
$(MODULE)-objs += zfeature_common.o $(MODULE)-objs += zfeature_common.o
$(MODULE)-objs += zfs_comutil.o $(MODULE)-objs += zfs_comutil.o
$(MODULE)-objs += zfs_deleg.o $(MODULE)-objs += zfs_deleg.o

View File

@ -22,7 +22,7 @@
* Copyright (c) 2017 by Delphix. All rights reserved. * Copyright (c) 2017 by Delphix. All rights reserved.
*/ */
#include <sys/cityhash.h> #include <cityhash.h>
#define HASH_K1 0xb492b66fbe98f273ULL #define HASH_K1 0xb492b66fbe98f273ULL
#define HASH_K2 0x9ae16a3b2f90404fULL #define HASH_K2 0x9ae16a3b2f90404fULL
@ -61,3 +61,7 @@ cityhash4(uint64_t w1, uint64_t w2, uint64_t w3, uint64_t w4)
a + rotate(b + HASH_K2, 18) + c, mul)); a + rotate(b + HASH_K2, 18) + c, mul));
} }
#if defined(_KERNEL)
EXPORT_SYMBOL(cityhash4);
#endif

View File

@ -22,7 +22,6 @@ $(MODULE)-objs += bpobj.o
$(MODULE)-objs += bptree.o $(MODULE)-objs += bptree.o
$(MODULE)-objs += btree.o $(MODULE)-objs += btree.o
$(MODULE)-objs += bqueue.o $(MODULE)-objs += bqueue.o
$(MODULE)-objs += cityhash.o
$(MODULE)-objs += dataset_kstats.o $(MODULE)-objs += dataset_kstats.o
$(MODULE)-objs += dbuf.o $(MODULE)-objs += dbuf.o
$(MODULE)-objs += dbuf_stats.o $(MODULE)-objs += dbuf_stats.o

View File

@ -299,7 +299,7 @@
#include <sys/arc_impl.h> #include <sys/arc_impl.h>
#include <sys/trace_zfs.h> #include <sys/trace_zfs.h>
#include <sys/aggsum.h> #include <sys/aggsum.h>
#include <sys/cityhash.h> #include <cityhash.h>
#ifndef _KERNEL #ifndef _KERNEL
/* set with ZFS_DEBUG=watch, to enable watchpoints on frozen buffers */ /* set with ZFS_DEBUG=watch, to enable watchpoints on frozen buffers */

View File

@ -48,7 +48,7 @@
#include <sys/callb.h> #include <sys/callb.h>
#include <sys/abd.h> #include <sys/abd.h>
#include <sys/vdev.h> #include <sys/vdev.h>
#include <sys/cityhash.h> #include <cityhash.h>
#include <sys/spa_impl.h> #include <sys/spa_impl.h>
kstat_t *dbuf_ksp; kstat_t *dbuf_ksp;

View File

@ -47,7 +47,7 @@
#include <sys/trace_zfs.h> #include <sys/trace_zfs.h>
#include <sys/abd.h> #include <sys/abd.h>
#include <sys/dsl_crypt.h> #include <sys/dsl_crypt.h>
#include <sys/cityhash.h> #include <cityhash.h>
/* /*
* ========================================================================== * ==========================================================================