1 %define module @PACKAGE@
4 %if 0%{?rhel}%{?fedora}
5 %define ksrc $
{kernel_version
##*___}
8 if [ -e "
/usr
/src
/linux
-$
{kernel_version%
%___*}"
]; then \
9 echo "
/usr
/src
/linux
-$
{kernel_version%
%___*}"
; \
10 elif [ -e "
/lib
/modules
/$
{kernel_version%
%___*}/source"
]; then \
11 echo "
/lib
/modules
/$
{kernel_version%
%___*}/source"
; \
13 echo "
/lib
/modules
/$
{kernel_version%
%___*}/build"
; \
19 %if 0%{?rhel}%{?fedora}
20 %define kobj $
{kernel_version
##*___}
23 if [ -e "
/usr
/src
/linux
-$
{kernel_version%
%___*}"
]; then \
24 echo "
/usr
/src
/linux
-$
{kernel_version%
%___*}"
; \
26 echo "
/lib
/modules
/$
{kernel_version%
%___*}/build"
; \
31 #define repo rpmfusion
34 # (un)define the next line to either build for the newest or all current kernels
35 %define buildforkernels newest
36 #define buildforkernels current
37 #define buildforkernels akmod
40 %bcond_with debug_dmu_tx
46 Release: @RELEASE@
%{?dist}
47 Summary: Kernel module
(s
)
49 Group: System Environment
/Kernel
50 License: @ZFS_META_LICENSE@
51 URL: http
://zfsonlinux.org
/
52 Source0: %{module}-%{version}.tar.gz
54 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id} -u
-n
)
56 # The developments headers will conflict with the dkms packages.
57 Conflicts: %{module}-dkms
61 # Building for a repository use the proper build-sysbuild package
62 # to determine which kernel-devel packages should be installed.
63 BuildRequires
: %{_bindir}/kmodtool
64 %{!?kernels:BuildRequires: buildsys-build-%{repo}-kerneldevpkgs-%{?buildforkernels:%{buildforkernels}}%{!?buildforkernels:current}-%{_target_cpu}}
68 # Building local packages attempt to to use the installed kernel.
69 %{?rhel:BuildRequires: kernel-devel}
70 %{?fedora:BuildRequires: kernel-devel}
71 %{?suse_version:BuildRequires: kernel-source}
73 %if !%{defined kernels} && !%{defined build_src_rpm}
74 %if 0%{?rhel}%{?fedora}%{?suse_version}
75 %define kernels %
(ls
-1 /usr
/src
/kernels
)
77 %define kernels %
(ls
-1 /lib
/modules
)
82 %if 0%{?rhel}%{?fedora}%{?suse_version}
83 BuildRequires
: kmod
-spl
-devel
= %{version}
84 %global KmodsRequires kmod
-spl
85 %global KmodsDevelRequires kmod
-spl
-devel
86 %global KmodsMetaRequires spl
-kmod
93 # Kmodtool does its magic here. A patched version of kmodtool is shipped
94 # with the source rpm until kmod development packages are supported upstream.
95 # https://bugzilla.rpmfusion.org/show_bug.cgi?id=2714
96 %{expand:%(bash %{SOURCE10} --target %{_target_cpu} %{?repo:--repo %{?repo}} --kmodname %{name} %{?buildforkernels:--%{buildforkernels}} --devel %{?prefix:--prefix "%{?prefix}"} %{?kernels:--for-kernels "%{?kernels}"} %{?kernelbuildroot:--buildroot "%{?kernelbuildroot}"} 2>/dev/null) }
100 This package contains the ZFS kernel modules.
103 # Error out if there was something wrong with kmodtool.
106 # Print kmodtool output for debugging purposes:
107 bash
%{SOURCE10} --target %{_target_cpu} %{?repo:--repo %{?repo}} --kmodname %{name} %{?buildforkernels:--%{buildforkernels}} --devel %{?prefix:--prefix "%{?prefix}"} %{?kernels:--for-kernels "%{?kernels}"} %{?kernelbuildroot:--buildroot "%{?kernelbuildroot}"} 2>/dev
/null
110 %define debug
--enable-debug
112 %define debug
--disable
-debug
115 %if %{with debug_dmu_tx}
116 %define debug_dmu_tx
--enable-debug
-dmu
-tx
118 %define debug_dmu_tx
--disable
-debug
-dmu
-tx
122 # Allow the overriding of spl locations
124 %if %{defined require_splver}
125 %define splver
%{require_splver}
127 %define splver
%{version}
130 %if %{defined require_spldir}
131 %define spldir
%{require_spldir}
133 %define spldir
%{_usrsrc}/spl-%{splver}
136 %if %{defined require_splobj}
137 %define splobj
%{require_splobj}
139 %define splobj
%{spldir}/${kernel_version%%___*}
143 # Leverage VPATH from configure to avoid making multiple copies.
144 %define _configure ..
/%{module}-%{version}/configure
148 for kernel_version
in %{?kernel_versions}; do
149 %{__mkdir} _kmod_build_${kernel_version%%___*}
153 for kernel_version
in %{?kernel_versions}; do
154 cd _kmod_build_$
{kernel_version%
%___*}
156 --with
-config
=kernel \
157 --with
-linux
=%{ksrc} \
158 --with
-linux
-obj
=%{kobj} \
159 --with
-spl
="
%{spldir}" \
160 --with
-spl
-obj
="
%{splobj}" \
169 rm -rf $
{RPM_BUILD_ROOT
}
171 # Relies on the kernel 'modules_install' make target.
172 for kernel_version
in %{?kernel_versions}; do
173 cd _kmod_build_$
{kernel_version%
%___*}
175 DESTDIR
=$
{RPM_BUILD_ROOT
} \
176 %{?prefix:INSTALL_MOD_PATH=%{?prefix}} \
177 INSTALL_MOD_DIR
=%{kmodinstdir_postfix}
180 # find-debuginfo.sh only considers executables
181 chmod u
+x $
{RPM_BUILD_ROOT
}%{kmodinstdir_prefix}/*/extra
/*/*/*
186 rm -rf $RPM_BUILD_ROOT
189 * Fri Sep
9 2016 Ned Bass
<bass6@llnl.gov
> - 0.6.5.8-1
190 - Linux
4.6, 4.7 and
4.8 compatibility zfsonlinux
/spl
#549 zfsonlinux/spl#563 zfsonlinux/spl#565 zfsonlinux/spl#566 zfsonlinux/zfs#4664 zfsonlinux/zfs#4665 zfsonlinux/zfs#4717 zfsonlinux/zfs#4726 zfsonlinux/zfs#4892 zfsonlinux/zfs#4899 zfsonlinux/zfs#4922 zfsonlinux/zfs#4944 zfsonlinux/zfs#4946 zfsonlinux/zfs#4951
191 - Fix new tunable to ignore hole_birth
, enabled by default zfsonlinux
/zfs
#4833
192 - Fix rw_tryupgrade
() semantics zfsonlinux
/spl
#534 zfsonlinux/spl#554
193 - Fix taskq_wait_outstanding
() re
-evaluation issue zfsonlinux
/spl
#553
194 - Fix race between taskq_destroy and new spawning thread zfsonlinux
/spl
#550 zfsonlinux/spl#553
195 - Fix handle NULL
case in spl_kmem_free_track
() zfsonlinux
/spl
#567
196 - Fix persist vdev_resilver_txg changes zfsonlinux
/zfs
#4790
197 - Fix array bounds
read in zprop_print_one_property
() zfsonlinux
/zfs
#5003
198 - Fix call zfs_get_name
() with invalid parameter zfsonlinux
/zfs
#4919
199 - Fix incorrect pool state after import zfsonlinux
/zfs
#4948
200 - Fix self
-healing IO prior to dsl_pool_init
() completion zfsonlinux
/zfs
#4652
201 - Fix stack corruption after importing a pool with a too
-long name zfsonlinux
/zfs@dc4abb4
202 - Fix deeply nested nvlist can overflow stack zfsonlinux
/zfs
#4924
203 - Fix dbuf_stats_hash_table_data race zfsonlinux
/zfs
#4846
204 - Fix NULL dereference when accessing dbuf kstat zfsonlinux
/zfs
#4837
205 - Fix NFS fh_to_dentry
() should
return ESTALE when generation mismatch zfsonlinux
/zfs
#4828
206 - Fix allowing accessing XATTR via
export handle zfsonlinux
/zfs
#4828
207 - Fix out
-of
-bound access
in zfs_fillpage
() zfsonlinux
/zfs
#4705 zfsonlinux/zfs#4708
208 - Fix memleak
in zpl_parse_options zfsonlinux
/zfs
#4706 zfsonlinux/zfs#4708
209 - Fix arc_prune_task use
-after
-free zfsonlinux
/zfs
#4687 zfsonlinux/zfs#4690
210 - Fix get_zfs_sb
() race with concurrent umount zfsonlinux
/zfs@
5cff9a0
211 - Fix xattr parent inode pinning zfsonlinux
/zfs
#4359 zfsonlinux/zfs#3508 zfsonlinux/zfs#4413 zfsonlinux/zfs#4827
212 - Fix xattr purge during iput zfsonlinux
/zfs
#4359 zfsonlinux/zfs#3508 zfsonlinux/zfs#4413 zfsonlinux/zfs#4827
213 - Fix metaslab_free_dva
(): bad DVA X
:Y
:Z zfsonlinux
/zfs
#3937
214 - Fix large kmem_alloc
in vdev_metaslab_init zfsonlinux
/zfs
#4752
215 - Fix snapdir by skipping ctldir znode
in zfs_rezget zfsonlinux
/zfs
#4514 zfsonlinux/zfs#4661 zfsonlinux/zfs#4672
216 - Fix libshare performance issue zfsonlinux
/zfs
#4119
217 - Fix ztest truncated cache file zfsonlinux
/zfs
#4129
218 - Fix obeying arc_meta_limit default size when changing arc_max zfsonlinux
/zfs
#4001
219 - Fix bug
in fix_paths
() zfsonlinux
/zfs
#4632
220 - Fix systemd configuration zfsonlinux
/zfs
#4325 zfsonlinux/zfs#4496 zfsonlinux/zfs#4658 zfsonlinux/zfs#4699
221 - Fix use kernel provided mutex owner zfsonlinux
/spl
#540
222 - Fix rename 'zed.service' to 'zfs
-zed.service' zfsonlinux
/zfs
#3837
223 - Add support
for MIPS zfsonlinux
/spl
#558
224 - Add nfs
-kernel
-server
for Debian zfsonlinux
/zfs
#4350
225 - Remove HAVE_CURRENT_UMASK and HAVE_POSIX_ACL_CACHING zfsonlinux
/zfs
#4922
226 - Remove dummy znode from zvol_state zfsonlinux
/zfs
#4510
227 - Fix gcc
-Warray
-bounds check
for dump_object
() in zdb zfsonlinux
/zfs
#4907
228 - Handle block pointers with a corrupt logical size zfsonlinux
/zfs
#4069 zfsonlinux/zfs#4080
229 * Thu May
12 2016 Ned Bass
<bass6@llnl.gov
> - 0.6.5.7-1
230 - Fix user namespaces uid
/gid mapping zfsonlinux
/zfs
#4177
231 - Fix ZPL miswrite of default POSIX ACL zfsonlinux
/zfs
#4520
232 - Linux
4.5 and
4.6 compatibility zfsonlinux
/zfs
#4537 zfsonlinux/zfs#4489
233 - Ensure
/dev
/disk
/by
-partlabel gets correctly populated zfsonlinux
/zfs
#4517
234 - Utilities now work reliably with newly created partitions zfsonlinux
/zfs
#3708
235 - Import now reliably uses device names stored
in label zfsonlinux
/zfs
#3043
236 - Fix possible deadlock
in zfs_secpolicy_write_perms ioctl zfsonlinux
/zfs
#4554
237 - Fix inverted logic on none elevator comparison zfsonlinux
/zfs
#4507
238 - Add
32 bit FS_IOC32_
{GET|SET
}FLAGS compat ioctls
for PPC zfsonlinux
/zfs
#4477
239 * Tue Mar
22 2016 Ned Bass
<bass6@llnl.gov
> - 0.6.5.6-1
240 - Remove artificial architecture restrictions
in packaging
241 - Add support
for s390
[x
] zfsonlinux
/zfs
#4425
242 - Handle negative dentries
in case insensitive filesystem zfsonlinux
/zfs
#4243
243 - Fix casesensitivity
=insensitive deadlock zfsonlinux
/zfs
#4136
244 - Correctly parse zdb
-R flag arguments zfsonlinux
/zfs
#4304
245 - Fix lock order inversion with zvol_open
() zfsonlinux
/zfs
#3681
246 - Add support
for asynchronous zvol minor operations zfsonlinux
/zfs
#2217
247 - Make zvol minor functionality more robust zfsonlinux
/zfs
#4344
248 - Prevent zpool_find_vdev
() from truncating vdev path zfsonlinux
/zfs
#4312
249 - Add
-gLP to zpool subcommands
for alt vdev names zfsonlinux
/zfs
#4341
250 - Fix zpool list
-v output
for spares and log devices zfsonlinux
/zfs
#4313
251 * Wed Mar
9 2016 Ned Bass
<bass6@llnl.gov
> - 0.6.5.5-1
252 - Linux
4.5 compatibility zfsonlinux
/zfs
#4228
253 - Create working debuginfo packages on Red Hat zfsonlinux
/zfs
#4224
254 - Make arc_summary.py and dbufstat.py compatible with python3
255 - musl libc compatibility
for option parsing zfsonlinux
/zfs
#4222
256 - Prevent arc_c collapse and possible panic zfsonlinux
/zfs
#3904
257 - Prevent duplicated xattr between SA and dir zfsonlinux
/zfs
#4153
258 - Fix zsb
->z_hold_mtx deadlock zfsonlinux
/zfs
#4106
259 - Prevent SA header corruption zfsonlinux
/zfs
#4150
260 * Fri Jan
8 2016 Ned Bass
<bass6@llnl.gov
> - 0.6.5.4-1
262 - Assorted stability fixes
263 - Fixes
for NFS
-exported snapshots
264 - Fix kernel warning
in unlock_new_inode
() and deadlock
265 - Fix overflow
in P2ROUNDUP_TYPED macro
266 - Fix write performance issue due to bad zfs_dirty_data_max calculation
267 - Fix
builtin kernel builds
268 - Fix deadlock during direct memory reclaim
269 * Tue Oct
13 2015 Ned Bass
<bass6@llnl.gov
> - 0.6.5.3-1
270 - Don't import all visible pools
in zfs
-import init script zfsonlinux
/zfs
#3777
271 - Fix use
-after
-free
in vdev_disk_physio_completion zfsonlinux
/zfs
#3920
272 - Fix avl_is_empty
(&dn
->dn_dbufs
) assertion zfsonlinux
/zfs
#3865
273 * Wed Sep
30 2015 Ned Bass
<bass6@llnl.gov
> - 0.6.5.2-1
274 - Init script fixes zfsonlinux
/zfs
#3816
275 - Fix uioskip crash when skip to end zfsonlinux
/zfs
#3806 zfsonlinux/zfs#3850
276 - Userspace can trigger an assertion zfsonlinux
/zfs
#3792
277 - Fix quota userused underflow bug zfsonlinux
/zfs
#3789
278 - Fix performance regression from unwanted synchronous I
/O zfsonlinux
/zfs
#3780
279 - Fix deadlock during ARC reclaim zfsonlinux
/zfs
#3808 zfsonlinux/zfs#3834
280 - Fix deadlock with zfs receive and clamscan zfsonlinux
/zfs
#3719
281 - Allow NFS activity to defer snapshot unmounts zfsonlinux
/zfs
#3794
282 - Linux
4.3 compatibility zfsonlinux
/zfs
#3799
283 - Zed reload fixes zfsonlinux
/zfs
#3773
284 - Fix PAX
Patch/Grsec SLAB_USERCOPY panic zfsonlinux
/zfs
#3796
285 - Always remove during dkms uninstall
/update zfsonlinux
/spl
#476
286 * Sat Sep
19 2015 Ned Bass
<bass6@llnl.gov
> - 0.6.5.1-1
287 - Fix zvol corruption with TRIM
/discard zfsonlinux
/zfs
#3798
288 - Fix NULL as mount
(2) syscall data parameter zfsonlinux
/zfs
#3804
289 - Fix xattr
=sa dataset property not honored zfsonlinux
/zfs
#3787
290 * Fri Sep
11 2015 Brian Behlendorf
<behlendorf1@llnl.gov
> - 0.6.5-1
291 - Released
0.6.5-1, detailed release notes are available at
:
292 - https
://github.com
/zfsonlinux
/zfs
/releases
/tag
/zfs
-0.6.5
293 * Wed Apr
8 2015 Brian Behlendorf
<behlendorf1@llnl.gov
> - 0.6.4-1
295 * Thu Jun
12 2014 Brian Behlendorf
<behlendorf1@llnl.gov
> - 0.6.3-1
297 * Wed Aug
21 2013 Brian Behlendorf
<behlendorf1@llnl.gov
> - 0.6.2-1
299 * Fri Mar
22 2013 Brian Behlendorf
<behlendorf1@llnl.gov
> - 0.6.1-1
300 - First official stable release.