<!-- 
RSS generated by JIRA (9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c) at Sat Feb 10 02:27:43 UTC 2024

It is possible to restrict the fields that are returned in this document by specifying the 'field' parameter in your request.
For example, to request only the issue key and summary append 'field=key&field=summary' to the URL of your request.
-->
<rss version="0.92" >
<channel>
    <title>Whamcloud Community JIRA</title>
    <link>https://jira.whamcloud.com</link>
    <description>This file is an XML representation of an issue</description>
    <language>en-us</language>    <build-info>
        <version>9.4.14</version>
        <build-number>940014</build-number>
        <build-date>05-12-2023</build-date>
    </build-info>


<item>
            <title>[LU-9612] Unable to create rpm-dkms for zfs</title>
                <link>https://jira.whamcloud.com/browse/LU-9612</link>
                <project id="10000" key="LU">Lustre</project>
                    <description>&lt;p&gt;Going through the instructions on &lt;a href=&quot;http://wiki.lustre.org/Compiling_Lustre&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://wiki.lustre.org/Compiling_Lustre&lt;/a&gt;  zfs build section:&lt;/p&gt;

&lt;p&gt;Prepare the build&lt;br/&gt;
Run the configure script: &lt;br/&gt;
cd $HOME/zfs&lt;/p&gt;
&lt;ol&gt;
	&lt;li&gt;For RHEL and CentOS only, set the --spec=redhat flag.&lt;br/&gt;
./configure &lt;span class=&quot;error&quot;&gt;&amp;#91;--with-spec=redhat&amp;#93;&lt;/span&gt; \&lt;br/&gt;
[--with-spl=&amp;lt;path to spl-devel&amp;gt; \&lt;br/&gt;
&lt;span class=&quot;error&quot;&gt;&amp;#91;--with-linux=&amp;lt;path to kernel-devel&amp;gt;&amp;#93;&lt;/span&gt; \&lt;br/&gt;
&lt;span class=&quot;error&quot;&gt;&amp;#91;--with-linux-obj=&amp;lt;path to kernel obj&amp;gt;&amp;#93;&lt;/span&gt;&lt;/li&gt;
&lt;/ol&gt;


&lt;p&gt;I issued the following configure command script for suse linux os after build the spl package:&lt;/p&gt;

&lt;p&gt;./configure --with-spec=suse --with-spl=/usr/src/spl-0.7.0 --with-linux=/usr/src/linux-4.4.21-69/kernel&lt;/p&gt;

&lt;p&gt;It does not create zfs spec under suse folder as it only create these under redhat and generic folders:&lt;br/&gt;
config.status: creating rpm/Makefile&lt;br/&gt;
config.status: creating rpm/redhat/Makefile&lt;br/&gt;
config.status: creating rpm/redhat/zfs.spec&lt;br/&gt;
config.status: creating rpm/redhat/zfs-kmod.spec&lt;br/&gt;
config.status: creating rpm/redhat/zfs-dkms.spec&lt;br/&gt;
config.status: creating rpm/generic/Makefile&lt;br/&gt;
config.status: creating rpm/generic/zfs.spec&lt;br/&gt;
config.status: creating rpm/generic/zfs-kmod.spec&lt;br/&gt;
config.status: creating rpm/generic/zfs-dkms.spec&lt;br/&gt;
config.status: creating zfs-script-config.sh&lt;br/&gt;
config.status: creating zfs.release&lt;br/&gt;
config.status: creating zfs_config.h&lt;br/&gt;
config.status: executing depfiles commands&lt;br/&gt;
config.status: executing libtool commands&lt;/p&gt;

&lt;p&gt;This causes the make rpm-dkms to fail as there are no spec files configured under rpm/suse folder:&lt;/p&gt;

&lt;p&gt;make rpm-dkms errors snapshot:cp: cannot stat &apos;rpm/suse/zfs-dkms.spec&apos;: No such file or directory&lt;br/&gt;
Makefile:1149: recipe for target &apos;rpm-local&apos; failed&lt;br/&gt;
make&lt;span class=&quot;error&quot;&gt;&amp;#91;2&amp;#93;&lt;/span&gt;: *** &lt;span class=&quot;error&quot;&gt;&amp;#91;rpm-local&amp;#93;&lt;/span&gt; Error 1&lt;br/&gt;
make&lt;span class=&quot;error&quot;&gt;&amp;#91;2&amp;#93;&lt;/span&gt;: Leaving directory &apos;/root/zfs&apos;&lt;br/&gt;
Makefile:1167: recipe for target &apos;srpm-common&apos; failed&lt;br/&gt;
make&lt;span class=&quot;error&quot;&gt;&amp;#91;1&amp;#93;&lt;/span&gt;: *** &lt;span class=&quot;error&quot;&gt;&amp;#91;srpm-common&amp;#93;&lt;/span&gt; Error 1&lt;br/&gt;
make&lt;span class=&quot;error&quot;&gt;&amp;#91;1&amp;#93;&lt;/span&gt;: Leaving directory &apos;/root/zfs&apos;&lt;br/&gt;
Makefile:1123: recipe for target &apos;srpm-dkms&apos; failed&lt;br/&gt;
make: *** &lt;span class=&quot;error&quot;&gt;&amp;#91;srpm-dkms&amp;#93;&lt;/span&gt; Error 2&lt;/p&gt;

&lt;p&gt;This works for spl packages and not zfs&lt;/p&gt;</description>
                <environment>OS SLES12 SP2&lt;br/&gt;
kernel-default-4.4.21-69.1.x86_64&lt;br/&gt;
nfs-kernel-server-1.3.0-26.3.x86_64&lt;br/&gt;
kernel-macros-4.4.21-69.1.noarch&lt;br/&gt;
kernel-default-devel-4.4.21-69.1.x86_64&lt;br/&gt;
kernel-devel-4.4.21-69.1.noarch&lt;br/&gt;
kernel-firmware-20160516git-17.6.noarch&lt;br/&gt;
kernel-source-4.4.21-69.1.noarch&lt;br/&gt;
</environment>
        <key id="46550">LU-9612</key>
            <summary>Unable to create rpm-dkms for zfs</summary>
                <type id="1" iconUrl="https://jira.whamcloud.com/secure/viewavatar?size=xsmall&amp;avatarId=11303&amp;avatarType=issuetype">Bug</type>
                                            <priority id="3" iconUrl="https://jira.whamcloud.com/images/icons/priorities/major.svg">Major</priority>
                        <status id="5" iconUrl="https://jira.whamcloud.com/images/icons/statuses/resolved.png" description="A resolution has been taken, and it is awaiting verification by reporter. From here issues are either reopened, or are closed.">Resolved</status>
                    <statusCategory id="3" key="done" colorName="success"/>
                                    <resolution id="10000">Done</resolution>
                                        <assignee username="malkolm">Malcolm Cowe</assignee>
                                    <reporter username="abea@supermicro.com">Abe</reporter>
                        <labels>
                    </labels>
                <created>Tue, 6 Jun 2017 22:23:53 +0000</created>
                <updated>Sat, 16 Oct 2021 16:22:35 +0000</updated>
                            <resolved>Sat, 16 Oct 2021 16:22:35 +0000</resolved>
                                    <version>Lustre 2.10.0</version>
                                                        <due></due>
                            <votes>0</votes>
                                    <watches>3</watches>
                                                                            <comments>
                            <comment id="198378" author="abea@supermicro.com" created="Tue, 6 Jun 2017 22:27:41 +0000"  >&lt;p&gt;zfs rpms created without the rpm-dkms:&lt;br/&gt;
zfs-0.7.0-rc4.src.rpm  zfs-dkms-0.7.0-rc4.noarch.rpm  zfs-dkms-0.7.0-rc4.src.rpm&lt;/p&gt;</comment>
                            <comment id="198402" author="pjones" created="Wed, 7 Jun 2017 03:44:48 +0000"  >&lt;p&gt;Malc&lt;/p&gt;

&lt;p&gt;Could you please advise here?&lt;/p&gt;

&lt;p&gt;Peter&lt;/p&gt;</comment>
                            <comment id="198404" author="malkolm" created="Wed, 7 Jun 2017 05:27:16 +0000"  >&lt;p&gt;To create the SPL and ZFS packages for SUSE, the &lt;tt&gt;./configure&lt;/tt&gt; command for each project should be run without any additional arguments (or at least, do not use the --with-spec=rpm option). The build script will then use the RPM spec files in the spl/rpm/generic/ and zfs/rpm/generic directories. There&apos;s some additional information on the ZFS custom build process here:&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://github.com/zfsonlinux/zfs/wiki/Custom-Packages&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/zfsonlinux/zfs/wiki/Custom-Packages&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;</comment>
                            <comment id="198405" author="malkolm" created="Wed, 7 Jun 2017 05:30:46 +0000"  >&lt;p&gt;Also, please note that I haven&apos;t evaluated DKMS on SLES 12 yet &#8211; the documentation covers kmod-based builds only.&lt;/p&gt;</comment>
                            <comment id="198722" author="abea@supermicro.com" created="Fri, 9 Jun 2017 08:41:00 +0000"  >&lt;p&gt;Hello Malcolm,&lt;br/&gt;
Thanks for looking into this, this got resolved as the dkms-rpm are created now bu running&lt;br/&gt;
./configure without the additional arguments..&lt;br/&gt;
kmod-zfs-4.4.21-69-default-0.7.0-rc4.x86_64.rpm&lt;br/&gt;
kmod-zfs-devel-0.7.0-rc4.x86_64.rpm&lt;br/&gt;
kmod-zfs-devel-4.4.21-69-default-0.7.0-rc4.x86_64.rpm&lt;br/&gt;
zfs-0.7.0-rc4.src.rpm&lt;br/&gt;
zfs-dkms-0.7.0-rc4.noarch.rpm&lt;br/&gt;
zfs-dkms-0.7.0-rc4.src.rpm&lt;br/&gt;
zfs-kmod-0.7.0-rc4.src.rpm&lt;/p&gt;

&lt;p&gt;However, when we try to build the rpm for lustre the compile is failing due to missing zfs development headers:&lt;br/&gt;
full log:&lt;/p&gt;

&lt;p&gt;./configure --enable-server --disable-ldiskfs --with-linux=/usr/src/linux-4.4.21-69 --with-linux-obj=/usr/src/linux-4.4.21-69-obj/x86_64/default  --with-zfs=/usr/src/zfs-0.7.0 --with-spl=/usr/src/spl-0.7.0&lt;/p&gt;

&lt;p&gt;SBB-02:~/lustre-release # ./configure --enable-server --disable-ldiskfs --with-linux=/usr/src/linux-4.4.21-69 --with-linux-obj=/usr/src/linux-4.4.21-69-obj/x86_64/default --with-zfs=/usr/src/zfs-0.7.0 --with-spl=/usr/src/spl-0.7.0&lt;br/&gt;
checking build system type... x86_64-suse-linux-gnu&lt;br/&gt;
checking host system type... x86_64-suse-linux-gnu&lt;br/&gt;
checking target system type... x86_64-suse-linux-gnu&lt;br/&gt;
checking for a BSD-compatible install... /usr/bin/install -c&lt;br/&gt;
checking whether build environment is sane... yes&lt;br/&gt;
checking for a thread-safe mkdir -p... /usr/bin/mkdir -p&lt;br/&gt;
checking for gawk... gawk&lt;br/&gt;
checking whether make sets $(MAKE)... yes&lt;br/&gt;
checking whether make supports nested variables... yes&lt;br/&gt;
checking whether UID &apos;0&apos; is supported by ustar format... yes&lt;br/&gt;
checking whether GID &apos;0&apos; is supported by ustar format... yes&lt;br/&gt;
checking how to create a ustar tar archive... gnutar&lt;br/&gt;
checking whether to enable maintainer-specific portions of Makefiles... yes&lt;br/&gt;
checking for gcc... gcc&lt;br/&gt;
checking whether the C compiler works... yes&lt;br/&gt;
checking for C compiler default output file name... a.out&lt;br/&gt;
checking for suffix of executables...&lt;br/&gt;
checking whether we are cross compiling... no&lt;br/&gt;
checking for suffix of object files... o&lt;br/&gt;
checking whether we are using the GNU C compiler... yes&lt;br/&gt;
checking whether gcc accepts -g... yes&lt;br/&gt;
checking for gcc option to accept ISO C89... none needed&lt;br/&gt;
checking for style of include used by make... GNU&lt;br/&gt;
checking dependency style of gcc... gcc3&lt;br/&gt;
checking how to print strings... printf&lt;br/&gt;
checking for a sed that does not truncate output... /usr/bin/sed&lt;br/&gt;
checking for grep that handles long lines and -e... /usr/bin/grep&lt;br/&gt;
checking for egrep... /usr/bin/grep -E&lt;br/&gt;
checking for fgrep... /usr/bin/grep -F&lt;br/&gt;
checking for ld used by gcc... /usr/x86_64-suse-linux/bin/ld&lt;br/&gt;
checking if the linker (/usr/x86_64-suse-linux/bin/ld) is GNU ld... yes&lt;br/&gt;
checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B&lt;br/&gt;
checking the name lister (/usr/bin/nm -B) interface... BSD nm&lt;br/&gt;
checking whether ln -s works... yes&lt;br/&gt;
checking the maximum length of command line arguments... 1572864&lt;br/&gt;
checking whether the shell understands some XSI constructs... yes&lt;br/&gt;
checking whether the shell understands &quot;+=&quot;... yes&lt;br/&gt;
checking how to convert x86_64-suse-linux-gnu file names to x86_64-suse-linux-gnu format... func_convert_file_noop&lt;br/&gt;
checking how to convert x86_64-suse-linux-gnu file names to toolchain format... func_convert_file_noop&lt;br/&gt;
checking for /usr/x86_64-suse-linux/bin/ld option to reload object files... -r&lt;br/&gt;
checking for objdump... objdump&lt;br/&gt;
checking how to recognize dependent libraries... pass_all&lt;br/&gt;
checking for dlltool... no&lt;br/&gt;
checking how to associate runtime and link libraries... printf %s\n&lt;br/&gt;
checking for ar... ar&lt;br/&gt;
checking for archiver @FILE support... @&lt;br/&gt;
checking for strip... strip&lt;br/&gt;
checking for ranlib... ranlib&lt;br/&gt;
checking command to parse /usr/bin/nm -B output from gcc object... ok&lt;br/&gt;
checking for sysroot... no&lt;br/&gt;
checking for mt... mt&lt;br/&gt;
checking if mt is a manifest tool... no&lt;br/&gt;
checking how to run the C preprocessor... gcc -E&lt;br/&gt;
checking for ANSI C header files... yes&lt;br/&gt;
checking for sys/types.h... yes&lt;br/&gt;
checking for sys/stat.h... yes&lt;br/&gt;
checking for stdlib.h... yes&lt;br/&gt;
checking for string.h... yes&lt;br/&gt;
checking for memory.h... yes&lt;br/&gt;
checking for strings.h... yes&lt;br/&gt;
checking for inttypes.h... yes&lt;br/&gt;
checking for stdint.h... yes&lt;br/&gt;
checking for unistd.h... yes&lt;br/&gt;
checking for dlfcn.h... yes&lt;br/&gt;
checking for objdir... .libs&lt;br/&gt;
checking if gcc supports -fno-rtti -fno-exceptions... no&lt;br/&gt;
checking for gcc option to produce PIC... -fPIC -DPIC&lt;br/&gt;
checking if gcc PIC flag -fPIC -DPIC works... yes&lt;br/&gt;
checking if gcc static flag -static works... no&lt;br/&gt;
checking if gcc supports -c -o file.o... yes&lt;br/&gt;
checking if gcc supports -c -o file.o... (cached) yes&lt;br/&gt;
checking whether the gcc linker (/usr/x86_64-suse-linux/bin/ld -m elf_x86_64) supports shared libraries... yes&lt;br/&gt;
checking whether -lc should be explicitly linked in... no&lt;br/&gt;
checking dynamic linker characteristics... GNU/Linux ld.so&lt;br/&gt;
checking how to hardcode library paths into programs... immediate&lt;br/&gt;
checking whether stripping libraries is possible... yes&lt;br/&gt;
checking if libtool supports shared libraries... yes&lt;br/&gt;
checking whether to build shared libraries... yes&lt;br/&gt;
checking whether to build static libraries... yes&lt;br/&gt;
checking dependency style of gcc... gcc3&lt;br/&gt;
checking for rpmbuild... /usr/bin/rpmbuild&lt;br/&gt;
configure: Lustre base checks&lt;br/&gt;
==============================================================================&lt;br/&gt;
checking whether to configure just enough for make dist... no&lt;br/&gt;
checking if this distro uses dpkg... no&lt;br/&gt;
checking for ranlib... (cached) ranlib&lt;br/&gt;
checking for ld... /usr/x86_64-suse-linux/bin/ld -m elf_x86_64&lt;br/&gt;
checking for objdump... (cached) objdump&lt;br/&gt;
checking for strip... (cached) strip&lt;br/&gt;
checking size of unsigned long long... 8&lt;br/&gt;
checking whether to use OSD addon... no&lt;br/&gt;
checking whether to build Lustre docs... no&lt;br/&gt;
checking whether to build Lustre manpages... yes&lt;br/&gt;
checking whether to build Lustre utilities... yes&lt;br/&gt;
checking whether to build Lustre tests... yes&lt;br/&gt;
checking whether to build Lustre client support... yes&lt;br/&gt;
checking whether mpitests can be built... no&lt;br/&gt;
checking whether to build Linux kernel modules... yes (linux-gnu)&lt;br/&gt;
checking for Linux sources... /usr/src/linux-4.4.21-69&lt;br/&gt;
checking for /usr/src/linux-4.4.21-69... yes&lt;br/&gt;
checking for Linux objects... /usr/src/linux-4.4.21-69-obj/x86_64/default&lt;br/&gt;
checking for /usr/src/linux-4.4.21-69-obj/x86_64/default/.config... yes&lt;br/&gt;
checking for /boot/kernel.h... no&lt;br/&gt;
checking for /var/adm/running-kernel.h... no&lt;br/&gt;
checking for /usr/src/linux-4.4.21-69-obj/x86_64/default/include/generated/autoconf.h... yes&lt;br/&gt;
checking for /usr/src/linux-4.4.21-69-obj/x86_64/default/include/linux/version.h... no&lt;br/&gt;
checking for /usr/src/linux-4.4.21-69-obj/x86_64/default/include/generated/uapi/linux/version.h... yes&lt;br/&gt;
checking for /usr/src/linux-4.4.21-69/include/linux/kconfig.h... yes&lt;br/&gt;
checking for external module build target... M&lt;br/&gt;
checking that modules can be built at all... yes&lt;br/&gt;
checking for Linux kernel utsrelease... 4.4.21-69-default&lt;br/&gt;
checking for RedHat kernel release number...&lt;br/&gt;
checking if Linux kernel was built with CONFIG_SUSE_KERNEL... yes&lt;br/&gt;
checking for Linux kernel module package directory... updates/kernel&lt;br/&gt;
checking for the name of module symbol version file... Module.symvers&lt;br/&gt;
checking if Linux kernel was built with CONFIG_MODULES... yes&lt;br/&gt;
checking if Linux kernel was built with CONFIG_MODVERSIONS... yes&lt;br/&gt;
checking if Linux kernel was built with CONFIG_KALLSYMS... yes&lt;br/&gt;
checking if Linux kernel module loading is possible... yes&lt;br/&gt;
configure: LibCFS kernel checks&lt;br/&gt;
==============================================================================&lt;br/&gt;
checking whether to use tunable &apos;panic_dumplog&apos; support... no&lt;br/&gt;
checking if &apos;struct stacktrace_ops&apos; has &apos;walk_stack&apos; field... yes&lt;br/&gt;
checking if &apos;shrinker&apos; want self pointer in handler... no&lt;br/&gt;
checking if &apos;ctl_table&apos; has a &apos;ctl_name&apos; field... no&lt;br/&gt;
checking if Linux kernel has &apos;kstrtoul&apos;... yes&lt;br/&gt;
checking if &apos;dump_trace&apos; want address... yes&lt;br/&gt;
checking if &apos;shrink_control&apos; is present... yes&lt;br/&gt;
checking if &apos;stacktrace_ops.warning&apos; is exist... yes&lt;br/&gt;
checking for linux/uidgid.h... yes&lt;br/&gt;
checking if &apos;i_uid_read&apos; is present... yes&lt;br/&gt;
checking if Linux kernel exports &apos;sock_alloc_file&apos;... yes&lt;br/&gt;
checking if &apos;sock_alloc_file&apos; takes 3 arguments... yes&lt;br/&gt;
checking if Linux kernel was built with CONFIG_CRC32 in or as module... yes&lt;br/&gt;
checking if Linux kernel was built with CONFIG_CRYPTO_CRC32_PCLMUL in or as module... yes&lt;br/&gt;
checking if Linux kernel was built with CONFIG_CRYPTO_CRC32C_INTEL in or as module... yes&lt;br/&gt;
checking shrinker has &apos;count_objects&apos;... yes&lt;br/&gt;
checking does function &apos;hlist_add_after&apos; exist... no&lt;br/&gt;
checking does &apos;struct timespec64&apos; exist... yes&lt;br/&gt;
checking does function &apos;ktime_get_real_ts64&apos; exist... yes&lt;br/&gt;
checking does function &apos;topology_sibling_cpumask&apos; exist... yes&lt;br/&gt;
checking for asm/fpu/api.h... yes&lt;br/&gt;
checking does crypto hash helper functions exist... no&lt;br/&gt;
checking if &apos;struct stacktrace_ops&apos; address function returns an int... no&lt;br/&gt;
checking if &apos;get_user_pages()&apos; takes 6 arguments... no&lt;br/&gt;
configure: LNet kernel checks&lt;br/&gt;
==============================================================================&lt;br/&gt;
checking whether to enable CPU affinity support... yes&lt;br/&gt;
checking if Linux kernel has cpu affinity support... yes&lt;br/&gt;
checking whether to enable tunable backoff TCP support... yes&lt;br/&gt;
checking if Linux kernel has tunable backoff TCP support... no&lt;br/&gt;
checking whether to use Compat RDMA... no&lt;br/&gt;
checking whether to use any OFED backport headers... no&lt;br/&gt;
checking whether to enable OpenIB gen2 support... yes&lt;br/&gt;
checking if Linux kernel has kthread_worker... yes&lt;br/&gt;
checking if &apos;rdma_create_id&apos; wants four args... no&lt;br/&gt;
checking if &apos;rdma_create_id&apos; wants five args... yes&lt;br/&gt;
checking if &apos;struct ib_cq_init_attr&apos; is used... yes&lt;br/&gt;
checking if &apos;ib_alloc_fast_reg_mr&apos; exists... no&lt;br/&gt;
checking if &apos;struct ib_rdma_wr&apos; is defined... yes&lt;br/&gt;
checking if 4arg &apos;ib_map_mr_sg&apos; exists... yes&lt;br/&gt;
checking if 5arg &apos;ib_map_mr_sg&apos; exists... no&lt;br/&gt;
checking if &apos;struct ib_device&apos; has member &apos;attrs&apos;... yes&lt;br/&gt;
checking if function &apos;ib_inc_rkey&apos; is defined... yes&lt;br/&gt;
checking whether to enable GNI lnd... no&lt;br/&gt;
checking if Linux kernel has &apos;sk_sleep&apos;... yes&lt;br/&gt;
checking if &apos;tcp_sendpage&apos; first parameter is socket... no&lt;br/&gt;
checking if &apos;sk_data_ready&apos; takes only one argument... yes&lt;br/&gt;
checking ext4 source directory... /usr/src/linux-4.4.21-69/fs/ext4&lt;br/&gt;
checking for /usr/src/linux-4.4.21-69/fs/ext4/dir.c... yes&lt;br/&gt;
checking for /usr/src/linux-4.4.21-69/fs/ext4/file.c... yes&lt;br/&gt;
checking for /usr/src/linux-4.4.21-69/fs/ext4/inode.c... yes&lt;br/&gt;
checking for /usr/src/linux-4.4.21-69/fs/ext4/super.c... yes&lt;br/&gt;
configure: Lustre kernel checks&lt;br/&gt;
==============================================================================&lt;br/&gt;
checking whether to enable Lustre pinger support... yes&lt;br/&gt;
checking whether to enable data checksum support... yes&lt;br/&gt;
checking whether to enable a write with the health check... no&lt;br/&gt;
checking whether to enable lru self-adjusting... yes&lt;br/&gt;
checking whether to enable &apos;llite_lloop&apos; module... yes&lt;br/&gt;
checking for name_to_handle_at... yes&lt;br/&gt;
checking whether to enable gss support... auto&lt;br/&gt;
checking whether to enable gss keyring backend... auto&lt;br/&gt;
checking if Linux kernel was built with CONFIG_KEYS in or as module... yes&lt;br/&gt;
checking for keyctl_search in -lkeyutils... no&lt;br/&gt;
configure: WARNING: GSS keyring backend requires libkeyutils&lt;br/&gt;
checking if &apos;struct cred&apos; has member &apos;tgcred&apos;... no&lt;br/&gt;
checking if &apos;key_type-&amp;gt;instantiate&apos; has two args... yes&lt;br/&gt;
checking if Linux kernel was built with CONFIG_SUNRPC in or as module... yes&lt;br/&gt;
checking if Linux kernel was built with CONFIG_CRYPTO_MD5 in or as module... yes&lt;br/&gt;
checking if Linux kernel was built with CONFIG_CRYPTO_SHA1 in or as module... yes&lt;br/&gt;
checking if Linux kernel was built with CONFIG_CRYPTO_SHA256 in or as module... yes&lt;br/&gt;
checking if Linux kernel was built with CONFIG_CRYPTO_SHA512 in or as module... yes&lt;br/&gt;
checking for Kerberos v5... not found!&lt;br/&gt;
checking whether OpenSSL has functions needed for SSK... no&lt;br/&gt;
checking if &apos;blk_queue_max_segments&apos; is defined... yes&lt;br/&gt;
checking if &apos;quotactl_ops.set_dqblk&apos; takes struct fs_disk_quota... no&lt;br/&gt;
checking if &apos;quotactl_ops.set_dqblk&apos; takes struct kqid &amp;amp; fs_disk_quota... no&lt;br/&gt;
checking if &apos;dquot_suspend&apos; is defined... yes&lt;br/&gt;
checking if &apos;__add_wait_queue_exclusive&apos; exists... yes&lt;br/&gt;
checking if &apos;file_operations.fsync&apos; takes 4 arguments... yes&lt;br/&gt;
checking if Linux kernel exports &apos;simple_setattr&apos;... yes&lt;br/&gt;
checking if Linux kernel exports &apos;truncate_complete_page&apos;... no&lt;br/&gt;
checking if Linux kernel exports &apos;remove_from_page_cache&apos;... no&lt;br/&gt;
checking if Linux kernel exports &apos;delete_from_page_cache&apos;... yes&lt;br/&gt;
checking if &apos;fs_struct.lock&apos; use rwlock... no&lt;br/&gt;
checking if &apos;super_operations.evict_inode&apos; exist... yes&lt;br/&gt;
checking if &apos;kernel_locked&apos; is defined... no&lt;br/&gt;
checking if Linux kernel exports &apos;blkdev_get_by_dev&apos;... yes&lt;br/&gt;
checking if &apos;generic_permission&apos; take 2 arguments... yes&lt;br/&gt;
checking if &apos;dcache_lock&apos; is exist... no&lt;br/&gt;
checking if &apos;inode.i_rcu&apos; exists... yes&lt;br/&gt;
checking if &apos;dentry_operations.d_compare()&apos; taken 7 arguments... no&lt;br/&gt;
checking if &apos;dentry_operations.d_delete()&apos; has const declare on first parameter... yes&lt;br/&gt;
checking if &apos;request_queue&apos; has &apos;unplug_fn&apos; field... no&lt;br/&gt;
checking if Linux kernel was built with CONFIG_FHANDLE in or as module... yes&lt;br/&gt;
checking if &apos;file_system_type&apos; has &apos;mount&apos; field... yes&lt;br/&gt;
checking if &apos;inode_operations&apos; has &apos;.truncate&apos; member function... no&lt;br/&gt;
checking if &apos;inode_owner_or_capable&apos; exist... yes&lt;br/&gt;
checking if security_inode_init_security takes a callback... yes&lt;br/&gt;
checking if &apos;dirty_inode&apos; super_operation takes flag... yes&lt;br/&gt;
checking if &apos;lock-manager&apos; ops renamed to &apos;lm_xxx&apos;... yes&lt;br/&gt;
checking if &apos;inode-&amp;gt;i_alloc_sem&apos; is killed and use inode_dio_wait... yes&lt;br/&gt;
checking if &apos;inode_operations&apos; has &apos;.get_acl&apos; member function... yes&lt;br/&gt;
checking if Linux kernel exports &apos;generic_file_llseek_size&apos;... yes&lt;br/&gt;
checking if &apos;inode_operations-&amp;gt;permission&apos; has two args... yes&lt;br/&gt;
checking radix_tree_exceptional_entry exist... yes&lt;br/&gt;
checking for /usr/src/linux-4.4.21-69/include/linux/loop.h... no&lt;br/&gt;
checking if &apos;request_queue.make_request_fn&apos; returns void but not int... yes&lt;br/&gt;
checking if &apos;inode-&amp;gt;i_nlink&apos; is protected from direct modification... yes&lt;br/&gt;
checking for /usr/src/linux-4.4.21-69/include/linux/migrate.h... yes&lt;br/&gt;
checking if &apos;address_space_operations.migratepage&apos; has 4 args... yes&lt;br/&gt;
checking if &apos;super_operations&apos; use &apos;dentry&apos; as parameter... yes&lt;br/&gt;
checking if &apos;inode_operations&apos; use &apos;umode_t&apos; as parameter... yes&lt;br/&gt;
checking if have &apos;cache_register&apos;... no&lt;br/&gt;
checking if have &apos;d_make_root&apos;... yes&lt;br/&gt;
checking if &apos;kmap_atomic&apos; has only 1 argument... yes&lt;br/&gt;
checking if have &apos;clear_inode&apos;... yes&lt;br/&gt;
checking if &apos;encode_fh&apos; have parent inode as parameter... yes&lt;br/&gt;
checking if Linux kernel has &apos;generic_file_llseek_size&apos; with 5 args... yes&lt;br/&gt;
checking if &apos;i_dentry/d_alias&apos; uses &apos;list&apos;... no&lt;br/&gt;
checking if &apos;dentry_open&apos; uses &apos;struct path&apos; as first argument... yes&lt;br/&gt;
checking if &apos;iop&apos; has &apos;atomic_open&apos;... yes&lt;br/&gt;
checking if kernel supports wrapped FS freeze functions... yes&lt;br/&gt;
checking if &apos;posix_acl_to_xattr&apos; takes &apos;struct user_namespace&apos;... yes&lt;br/&gt;
checking if &apos;struct file&apos; has member &apos;f_inode&apos;... yes&lt;br/&gt;
checking if file_inode() exists... yes&lt;br/&gt;
checking if &apos;sunrpc_cache_pipe_upcall&apos; takes 3 args... no&lt;br/&gt;
checking if &apos;hlist_for_each_entry&apos; has 3 args... yes&lt;br/&gt;
checking if &apos;bio_end_sector&apos; is defined... yes&lt;br/&gt;
checking if &apos;is_sxid&apos; is defined... yes&lt;br/&gt;
checking if &apos;block_device_operations&apos; release returns &apos;int&apos;... no&lt;br/&gt;
checking if &apos;remove_proc_subtree&apos; is defined... yes&lt;br/&gt;
checking if &apos;proc_remove&apos; is defined... yes&lt;br/&gt;
checking if &apos;security_dentry_init_security&apos; is defined... yes&lt;br/&gt;
checking if &apos;address_space_operations.invalidatepage&apos; requires 3 arguments... yes&lt;br/&gt;
checking if &apos;dir_context&apos; exist... yes&lt;br/&gt;
checking if &apos;d_compare&apos; taken 5 arguments... yes&lt;br/&gt;
checking if &apos;d_count&apos; exist... yes&lt;br/&gt;
checking if hlist &apos;dentry.d_u.d_alias&apos; exist... yes&lt;br/&gt;
checking if &apos;dentry.d_child&apos; exist... yes&lt;br/&gt;
checking if &apos;truncate_pagecache&apos; with &apos;old_size&apos; parameter... no&lt;br/&gt;
checking if &apos;struct kiocb&apos; with &apos;ki_left&apos; member... no&lt;br/&gt;
checking if Linux kernel has &apos;vfs_rename&apos; with 5 args... no&lt;br/&gt;
checking if Linux kernel has &apos;vfs_unlink&apos; with 3 args... yes&lt;br/&gt;
checking if Linux kernel has struct bvec_iter... yes&lt;br/&gt;
checking if Linux kernel has truncate_inode_pages_final... yes&lt;br/&gt;
checking if Linux kernel has &apos;vfs_rename&apos; with 6 args... yes&lt;br/&gt;
checking if direct IO uses iov_iter... no&lt;br/&gt;
checking if &apos;iov_iter_init&apos; takes a tag... yes&lt;br/&gt;
checking if &apos;iov_iter_truncate&apos; exists ... yes&lt;br/&gt;
checking if &apos;file_operations.read|write_iter&apos; exist... yes&lt;br/&gt;
checking if struct key_match field exist... yes&lt;br/&gt;
checking if percpu_counter_init uses GFP_* flag as argument... yes&lt;br/&gt;
checking if filldir_t uses struct dir_context... yes&lt;br/&gt;
checking if struct kiocb has ki_nbytes field... no&lt;br/&gt;
checking if &apos;quotactl_ops.set_dqblk&apos; takes struct qc_dqblk... yes&lt;br/&gt;
checking if struct address_space has backing_dev_info... no&lt;br/&gt;
checking if have &apos;BDI_CAP_MAP_COPY&apos;... no&lt;br/&gt;
checking if cancel_dirty_page still exist... no&lt;br/&gt;
checking if iov_iter_rw exist... yes&lt;br/&gt;
checking if Linux kernel exports &apos;new_sync_read&apos;... no&lt;br/&gt;
checking if cancel_dirty_page with one argument exist... yes&lt;br/&gt;
checking if &apos;bio_endio&apos; with one argument exist... yes&lt;br/&gt;
checking if symlink inode operations have struct nameidata argument... no&lt;br/&gt;
checking if &apos;struct cache_head&apos; has &apos;cache_list&apos; field... yes&lt;br/&gt;
checking if &apos;locks_lock_file_wait&apos; exists... yes&lt;br/&gt;
checking if &apos;request_queue.make_request_fn&apos; returns blk_qc_t... yes&lt;br/&gt;
checking if &apos;struct key&apos; has &apos;payload.data&apos; as an array... yes&lt;br/&gt;
checking if Linux kernel has &apos;file_dentry&apos;... yes&lt;br/&gt;
checking if &apos;inode_lock&apos; is defined... yes&lt;br/&gt;
checking if &apos;iop&apos; has &apos;get_link&apos;... no&lt;br/&gt;
checking if &apos;in_compat_syscall&apos; is defined... no&lt;br/&gt;
checking if Linux kernel exports &apos;dev_set_rdonly&apos;... no&lt;br/&gt;
configure: WARNING: kernel missing dev_set_rdonly patch for testing&lt;br/&gt;
checking if stack size is at least 8k... yes&lt;br/&gt;
checking if kernel has 64-bit quota limits support... yes&lt;br/&gt;
checking if Linux kernel was built with CONFIG_QUOTA in or as module... yes&lt;br/&gt;
checking whether to build ldiskfs... no&lt;br/&gt;
checking whether to enable zfs... yes&lt;br/&gt;
checking spl source directory... /usr/src/spl-0.7.0&lt;br/&gt;
checking spl build directory... /usr/src/spl-0.7.0/4.4.21-69-default&lt;br/&gt;
checking spl source version... 0.7.0-rc4&lt;br/&gt;
checking spl file name for module symbols... Module.symvers&lt;br/&gt;
checking zfs source directory... /usr/src/zfs-0.7.0&lt;br/&gt;
checking zfs build directory... /usr/src/zfs-0.7.0/4.4.21-69-default&lt;br/&gt;
checking zfs source version... 0.7.0-rc4&lt;br/&gt;
checking zfs file name for module symbols... Module.symvers&lt;br/&gt;
checking user provided zfs devel headers...&lt;br/&gt;
checking zfs devel headers... Not Found&lt;br/&gt;
configure: error:&lt;/p&gt;

&lt;p&gt;Required zfs osd cannot be built due to missing zfs development headers.&lt;/p&gt;

&lt;p&gt;Support for zfs can be enabled by downloading the required packages for your&lt;br/&gt;
distribution.  See &lt;a href=&quot;http://zfsonlinux.org/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://zfsonlinux.org/&lt;/a&gt; to determine is zfs is supported by&lt;br/&gt;
your distribution.&lt;/p&gt;

&lt;p&gt;SBB-02:~/lustre-release #&lt;/p&gt;


&lt;p&gt;Thanks,&lt;br/&gt;
Abe&lt;/p&gt;
</comment>
                            <comment id="198723" author="abea@supermicro.com" created="Fri, 9 Jun 2017 08:58:15 +0000"  >&lt;p&gt;Also, is there a way to pull a lustre 2.10 revision pre-release code ?&lt;/p&gt;


&lt;p&gt;thanks,&lt;br/&gt;
Abe&lt;/p&gt;</comment>
                            <comment id="198732" author="pjones" created="Fri, 9 Jun 2017 14:02:29 +0000"  >&lt;p&gt;Abe&lt;/p&gt;

&lt;p&gt;Yes, the master branch will become 2.10&lt;/p&gt;

&lt;p&gt;Peter&lt;/p&gt;</comment>
                            <comment id="198840" author="abea@supermicro.com" created="Sun, 11 Jun 2017 09:38:14 +0000"  >&lt;p&gt;Is this a know problem with lustre 2.9 since it does not support zfs ?&lt;br/&gt;
should we wait till lustre 2.10 release is available 6/30/177&lt;br/&gt;
pls advice..&lt;br/&gt;
SBB-02:~/lustre-release # ./configure --enable-server --disable-ldiskfs --with-linux=/usr/src/linux-4.4.21-69 --with-linux-obj=/usr/src/linux-4.4.21-69-obj/x86_64/default --with-zfs=/usr/src/zfs-0.7.0 --with-spl=/usr/src/spl-0.7.0&lt;/p&gt;

&lt;p&gt;checking zfs source directory... /usr/src/zfs-0.7.0&lt;br/&gt;
checking zfs build directory... /usr/src/zfs-0.7.0/4.4.21-69-default&lt;br/&gt;
checking zfs source version... 0.7.0-rc4&lt;br/&gt;
checking zfs file name for module symbols... Module.symvers&lt;br/&gt;
checking user provided zfs devel headers...&lt;br/&gt;
checking zfs devel headers... Not Found&lt;br/&gt;
configure: error:&lt;/p&gt;

&lt;p&gt;Required zfs osd cannot be built due to missing zfs development headers.&lt;/p&gt;

&lt;p&gt;thanks,&lt;br/&gt;
Abe&lt;/p&gt;
</comment>
                            <comment id="198841" author="pjones" created="Sun, 11 Jun 2017 12:06:13 +0000"  >&lt;p&gt;Abe&lt;/p&gt;

&lt;p&gt;There is no need to wait for 2.10 - use the master branch&lt;/p&gt;

&lt;p&gt;Peter&lt;/p&gt;</comment>
                            <comment id="198865" author="abea@supermicro.com" created="Mon, 12 Jun 2017 07:15:17 +0000"  >&lt;p&gt;Is there a label for 2.10 that i need to use to check it out:&lt;br/&gt;
for example:&lt;br/&gt;
git checkout 2.10.0&lt;/p&gt;

&lt;p&gt;I don&apos;t see a 2.10.0 label&lt;/p&gt;

&lt;p&gt;thanks,&lt;br/&gt;
Abe&lt;/p&gt;</comment>
                            <comment id="198887" author="pjones" created="Mon, 12 Jun 2017 12:16:34 +0000"  >&lt;p&gt;Abe&lt;/p&gt;

&lt;p&gt;A 2.10.0 tag will be created when the release is finalized. In the meantime, you can just use the tip of master&lt;/p&gt;

&lt;p&gt;Peter&lt;/p&gt;</comment>
                            <comment id="198968" author="abea@supermicro.com" created="Mon, 12 Jun 2017 23:37:23 +0000"  >&lt;p&gt;that is fine, we are stuck with servers and client rpm build error: Required zfs osd cannot be built due to missing zfs development headers.&lt;/p&gt;

&lt;p&gt;Any ideas:&lt;/p&gt;

&lt;p&gt;SBB-02:~/lustre-release # ./configure --enable-server --disable-ldiskfs --with-linux=/usr/src/linux-4.4.21-69 --with-linux-obj=/usr/src/linux-4.4.21-69-obj/x86_64/default --with-zfs=/usr/src/zfs-0.7.0 --with-spl=/usr/src/spl-0.7.0&lt;/p&gt;

&lt;p&gt;checking zfs source directory... /usr/src/zfs-0.7.0&lt;br/&gt;
checking zfs build directory... /usr/src/zfs-0.7.0/4.4.21-69-default&lt;br/&gt;
checking zfs source version... 0.7.0-rc4&lt;br/&gt;
checking zfs file name for module symbols... Module.symvers&lt;br/&gt;
checking user provided zfs devel headers...&lt;br/&gt;
checking zfs devel headers... Not Found&lt;br/&gt;
configure: error:&lt;/p&gt;

&lt;p&gt;Required zfs osd cannot be built due to missing zfs development headers.&lt;/p&gt;

&lt;p&gt;thanks,&lt;br/&gt;
Abe&lt;/p&gt;</comment>
                            <comment id="198970" author="malkolm" created="Mon, 12 Jun 2017 23:56:29 +0000"  >&lt;p&gt;Abe,&lt;/p&gt;

&lt;p&gt;Can you list the SPL and ZFS packages that were installed and the commands used to install them? It looks like the SPL development libraries might not have been installed. The configure script looks for the SPL and ZFS include files, which are in the libzfs2-devel RPM. For example:&lt;/p&gt;
&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt;vagrant@sl12sp2-b:~rpm -qf /usr/include/libspl
libzfs2-devel-0.7.0-rc4_56_g419c80e6d.x86_64
vagrant@sl12sp2-b:~&amp;gt; rpm -qf /usr/include/libzfs
libzfs2-devel-0.7.0-rc4_56_g419c80e6d.x86_64
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;The configure script will fail when&#160;it cannot find the include files.&lt;/p&gt;</comment>
                            <comment id="198973" author="abea@supermicro.com" created="Tue, 13 Jun 2017 00:43:31 +0000"  >&lt;p&gt;Hi Malcom,&lt;/p&gt;

&lt;p&gt;your are right, the zfs rpm install is failing, but the spl packages are all installed:&lt;/p&gt;

&lt;p&gt;for spl commands used:&lt;/p&gt;

&lt;p&gt;sudo zypper install kmod-spl-4.4.21-69-default-0.7.0-rc4.x86_64.rpm kmod-spl-devel-0.7.0-rc4.x86_64.rpm spl-0.7.0-rc4.x86_64.rpm&lt;/p&gt;

&lt;p&gt;sudo zypper install kmod-spl-devel-4.4.21-69-default-0.7.0-rc4.x86_64.rpm&lt;/p&gt;

&lt;p&gt;SBB-02:~/releases/zfs-spl # rpm -qa | grep spl&lt;br/&gt;
kmod-spl-4.4.21-69-default-0.7.0-rc4.x86_64&lt;br/&gt;
kmod-spl-devel-0.7.0-rc4.x86_64&lt;br/&gt;
libply-splash-core4-0.9.2-29.5.x86_64&lt;br/&gt;
libply-splash-graphics4-0.9.2-29.5.x86_64&lt;br/&gt;
spl-0.7.0-rc4.x86_64&lt;br/&gt;
kmod-spl-devel-4.4.21-69-default-0.7.0-rc4.x86_64&lt;/p&gt;


&lt;p&gt;for zfs:&lt;/p&gt;


&lt;p&gt;SBB-02:~/releases/zfs-spl # sudo zypper install kmod-zfs-4.4.21-69-default-0.7.0-rc4.x86_64 kmod-zfs-devel-0.7.0-rc4.x86_64 zfs-0.7.0-rc4.src.rpm&lt;br/&gt;
Loading repository data...&lt;br/&gt;
Reading installed packages...&lt;br/&gt;
&apos;kmod-zfs-4.4.21-69-default.x86_64 = 0.7.0-rc4&apos; is already installed.&lt;br/&gt;
No update candidate for &apos;kmod-zfs-4.4.21-69-default-0.7.0-rc4.x86_64&apos;. The highest available version is already installed.&lt;br/&gt;
&apos;kmod-zfs-devel.x86_64 = 0.7.0-rc4&apos; is already installed.&lt;br/&gt;
No update candidate for &apos;kmod-zfs-devel-0.7.0-rc4.x86_64&apos;. The highest available version is already installed.&lt;br/&gt;
&apos;&lt;em&gt;tmpRPMcache&lt;/em&gt;:zfs=0:0.7.0-rc4&apos; not found in package names. Trying capabilities.&lt;br/&gt;
No provider of &apos;&lt;em&gt;tmpRPMcache&lt;/em&gt;:zfs=0:0.7.0-rc4&apos; found.&lt;br/&gt;
Resolving package dependencies...&lt;/p&gt;

&lt;p&gt;Nothing to do.&lt;/p&gt;

&lt;p&gt;SBB-02:~/releases/zfs-spl # rpm -qa | grep zfs&lt;br/&gt;
kmod-zfs-4.4.21-69-default-0.7.0-rc4.x86_64&lt;br/&gt;
kmod-zfs-devel-0.7.0-rc4.x86_64&lt;br/&gt;
kmod-zfs-devel-4.4.21-69-default-0.7.0-rc4.x86_64&lt;/p&gt;

&lt;p&gt;SBB-02:~/releases/zfs-spl #  sudo zypper install zfs-0.7.0-rc4.src.rpm&lt;br/&gt;
Loading repository data...&lt;br/&gt;
Reading installed packages...&lt;br/&gt;
&apos;&lt;em&gt;tmpRPMcache&lt;/em&gt;:zfs=0:0.7.0-rc4&apos; not found in package names. Trying capabilities.&lt;br/&gt;
No provider of &apos;&lt;em&gt;tmpRPMcache&lt;/em&gt;:zfs=0:0.7.0-rc4&apos; found.&lt;br/&gt;
Resolving package dependencies...&lt;/p&gt;

&lt;p&gt;SBB-02:~/releases/zfs-spl # ls zfs*&lt;br/&gt;
zfs-0.7.0-rc4.src.rpm  zfs-dkms-0.7.0-rc4.noarch.rpm  zfs-dkms-0.7.0-rc4.src.rpm  zfs-kmod-0.7.0-rc4.src.rpm&lt;br/&gt;
SBB-02:~/releases/zfs-spl # ls spl*rpm&lt;br/&gt;
spl-0.7.0-rc4.src.rpm  spl-0.7.0-rc4.x86_64.rpm  spl-dkms-0.7.0-rc4.noarch.rpm  spl-dkms-0.7.0-rc4.src.rpm  spl-kmod-0.7.0-rc4.src.rpm&lt;/p&gt;


&lt;p&gt;thanks,&lt;br/&gt;
Abe&lt;/p&gt;</comment>
                            <comment id="198997" author="malkolm" created="Tue, 13 Jun 2017 04:04:02 +0000"  >&lt;p&gt;run the following command:&lt;/p&gt;
&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt;rpm -qi libzfs2-devel

&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;If the package is not installed then run, from the directory containing the ZFS RPMs you created:&lt;/p&gt;
&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt;sudo rpm -ivh libzfs2-devel-*.rpm

&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;If that fails, then likely, you need to install all the library packages in the release directory. The simplest way to do that is:&lt;/p&gt;
&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt;sudo rpm -ivh lib*.rpm

&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;From the output of your commands, the user-space tools might not be installed, either.&#160;&#160;&lt;/p&gt;

&lt;p&gt;The lustre.org documentation uses the following command to install all the pre-requisite ZFS packages:&lt;/p&gt;
&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt;cd $HOME/releases/zfs-spl
sudo rpm -ivh kmod-spl-* spl-*.x86_64.rpm \
kmod-zfs-[0-9].*-&lt;span class=&quot;code-keyword&quot;&gt;default&lt;/span&gt;-*.x86_64.rpm \
kmod-zfs-devel-[0-9].*.x86_64.rpm \
lib*.x86_64.rpm \
zfs-[0-9].*.x86_64.rpm \
zfs-dracut-[0-9].*.x86_64.rpm
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;&#160;&lt;/p&gt;</comment>
                            <comment id="198998" author="abea@supermicro.com" created="Tue, 13 Jun 2017 04:32:38 +0000"  >&lt;p&gt;The lib,zfs,zfs-dracut rpm are missing, the configure script should have generated these right ?&lt;/p&gt;

&lt;p&gt;SBB-02:~/releases/zfs-spl # sudo rpm &lt;del&gt;ivh kmod-spl&lt;/del&gt;* spl-&lt;b&gt;.x86_64.rpm kmod-zfs-&lt;span class=&quot;error&quot;&gt;&amp;#91;0-9&amp;#93;&lt;/span&gt;.&lt;/b&gt;&lt;del&gt;default&lt;/del&gt;&lt;b&gt;.x86_64.rpm kmod-zfs-devel-&lt;span class=&quot;error&quot;&gt;&amp;#91;0-9&amp;#93;&lt;/span&gt;.&lt;/b&gt;.x86_64.rpm lib*.x86_64.rpm zfs-&lt;span class=&quot;error&quot;&gt;&amp;#91;0-9&amp;#93;&lt;/span&gt;.&lt;b&gt;.x86_64.rpm zfs-dracut-&lt;span class=&quot;error&quot;&gt;&amp;#91;0-9&amp;#93;&lt;/span&gt;.&lt;/b&gt;.x86_64.rpm&lt;br/&gt;
error: File not found by glob: lib*.x86_64.rpm&lt;br/&gt;
error: File not found by glob: zfs-&lt;span class=&quot;error&quot;&gt;&amp;#91;0-9&amp;#93;&lt;/span&gt;.*.x86_64.rpm&lt;br/&gt;
error: File not found by glob: zfs-dracut-&lt;span class=&quot;error&quot;&gt;&amp;#91;0-9&amp;#93;&lt;/span&gt;.*.x86_64.rpm&lt;/p&gt;</comment>
                            <comment id="199001" author="malkolm" created="Tue, 13 Jun 2017 04:56:29 +0000"  >&lt;p&gt;Yes, I would have expected these to have been created as part of the build process, but it depends on the options supplied to the make command for the SPL and ZFS code.&#160;&lt;/p&gt;

&lt;p&gt;To create the user space packages, you run this command&#160;in both of the SPL&#160;and the ZFS directories:&lt;/p&gt;
&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt;make pkg-utils
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;This is my build process for SPL and ZFS on SLES 12 SP2:&lt;/p&gt;
&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt;# SPL
cd $HOME/spl
sh autogen.sh # only needed the first time the code is checked out
./configure --with-linux=/usr/src/linux-4.4.59-92.17
make pkg-utils pkg-kmod
mkdir -p $HOME/releases/zfs-spl
mv $HOME/spl/*.rpm $HOME/releases/zfs-spl
cd $HOME/releases/zfs-spl
sudo rpm -ivh kmod-spl-* spl-0.7.0*.x86_64.rpm

# ZFS
cd $HOME/zfs
./configure --with-linux=/usr/src/linux-4.4.59-92.17
make pkg-utils pkg-kmod
mv $HOME/zfs/*.rpm $HOME/releases/zfs-spl
cd $HOME/releases/zfs-spl
sudo rpm -ivh kmod-zfs-[0-9].*-&lt;span class=&quot;code-keyword&quot;&gt;default&lt;/span&gt;-*.x86_64.rpm \
kmod-zfs-devel-[0-9].*.x86_64.rpm \
lib*.x86_64.rpm \
zfs-[0-9].*.x86_64.rpm \
zfs-dracut-[0-9].*.x86_64.rpm
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;&#160;&lt;/p&gt;</comment>
                            <comment id="199119" author="abea@supermicro.com" created="Tue, 13 Jun 2017 18:35:15 +0000"  >&lt;p&gt;cd $HOME/zfs&lt;br/&gt;
make pkg-utils pkg-mod      ---&amp;gt; returns libzfs compile errors, missing ludev lib&lt;br/&gt;
snapshot below:&lt;/p&gt;

&lt;p&gt;make&lt;span class=&quot;error&quot;&gt;&amp;#91;5&amp;#93;&lt;/span&gt;: Entering directory &apos;/tmp/zfs-build-root-0K0ri1dq/BUILD/zfs-0.7.0/lib/libzfs&apos;&lt;br/&gt;
  CC       libzfs_changelist.lo&lt;br/&gt;
  CC       libzfs_config.lo&lt;br/&gt;
  CC       libzfs_dataset.lo&lt;br/&gt;
  CC       libzfs_diff.lo&lt;br/&gt;
  CC       libzfs_fru.lo&lt;br/&gt;
  CC       libzfs_import.lo&lt;br/&gt;
  CC       libzfs_iter.lo&lt;br/&gt;
  CC       libzfs_mount.lo&lt;br/&gt;
  CC       libzfs_pool.lo&lt;br/&gt;
  CC       libzfs_sendrecv.lo&lt;br/&gt;
  CC       libzfs_status.lo&lt;br/&gt;
  CC       libzfs_util.lo&lt;br/&gt;
  CCLD     libzfs.la&lt;br/&gt;
/usr/lib64/gcc/x86_64-suse-linux/4.8/../../../../x86_64-suse-linux/bin/ld: cannot find -ludev&lt;br/&gt;
collect2: error: ld returned 1 exit status&lt;br/&gt;
Makefile:631: recipe for target &apos;libzfs.la&apos; failed&lt;br/&gt;
make&lt;span class=&quot;error&quot;&gt;&amp;#91;5&amp;#93;&lt;/span&gt;: *** &lt;span class=&quot;error&quot;&gt;&amp;#91;libzfs.la&amp;#93;&lt;/span&gt; Error 1&lt;br/&gt;
make&lt;span class=&quot;error&quot;&gt;&amp;#91;5&amp;#93;&lt;/span&gt;: Leaving directory &apos;/tmp/zfs-build-root-0K0ri1dq/BUILD/zfs-0.7.0/lib/libzfs&apos;&lt;br/&gt;
Makefile:534: recipe for target &apos;all-recursive&apos; failed&lt;br/&gt;
make&lt;span class=&quot;error&quot;&gt;&amp;#91;4&amp;#93;&lt;/span&gt;: *** &lt;span class=&quot;error&quot;&gt;&amp;#91;all-recursive&amp;#93;&lt;/span&gt; Error 1&lt;br/&gt;
make&lt;span class=&quot;error&quot;&gt;&amp;#91;4&amp;#93;&lt;/span&gt;: Leaving directory &apos;/tmp/zfs-build-root-0K0ri1dq/BUILD/zfs-0.7.0/lib&apos;&lt;br/&gt;
Makefile:707: recipe for target &apos;all-recursive&apos; failed&lt;br/&gt;
make&lt;span class=&quot;error&quot;&gt;&amp;#91;3&amp;#93;&lt;/span&gt;: *** &lt;span class=&quot;error&quot;&gt;&amp;#91;all-recursive&amp;#93;&lt;/span&gt; Error 1&lt;br/&gt;
make&lt;span class=&quot;error&quot;&gt;&amp;#91;3&amp;#93;&lt;/span&gt;: Leaving directory &apos;/tmp/zfs-build-root-0K0ri1dq/BUILD/zfs-0.7.0&apos;&lt;br/&gt;
Makefile:575: recipe for target &apos;all&apos; failed&lt;br/&gt;
make&lt;span class=&quot;error&quot;&gt;&amp;#91;2&amp;#93;&lt;/span&gt;: *** &lt;span class=&quot;error&quot;&gt;&amp;#91;all&amp;#93;&lt;/span&gt; Error 2&lt;br/&gt;
make&lt;span class=&quot;error&quot;&gt;&amp;#91;2&amp;#93;&lt;/span&gt;: Leaving directory &apos;/tmp/zfs-build-root-0K0ri1dq/BUILD/zfs-0.7.0&apos;&lt;br/&gt;
error: Bad exit status from /tmp/zfs-build-root-0K0ri1dq/TMP/rpm-tmp.NljItE (%build)&lt;/p&gt;


&lt;p&gt;RPM build errors:&lt;br/&gt;
    Bad exit status from /tmp/zfs-build-root-0K0ri1dq/TMP/rpm-tmp.NljItE (%build)&lt;br/&gt;
Makefile:1183: recipe for target &apos;rpm-common&apos; failed&lt;br/&gt;
make&lt;span class=&quot;error&quot;&gt;&amp;#91;1&amp;#93;&lt;/span&gt;: *** &lt;span class=&quot;error&quot;&gt;&amp;#91;rpm-common&amp;#93;&lt;/span&gt; Error 1&lt;br/&gt;
make&lt;span class=&quot;error&quot;&gt;&amp;#91;1&amp;#93;&lt;/span&gt;: Leaving directory &apos;/root/zfs&apos;&lt;br/&gt;
Makefile:1142: recipe for target &apos;rpm-utils&apos; failed&lt;br/&gt;
make: *** &lt;span class=&quot;error&quot;&gt;&amp;#91;rpm-utils&amp;#93;&lt;/span&gt; Error 2&lt;/p&gt;</comment>
                            <comment id="199136" author="malkolm" created="Tue, 13 Jun 2017 21:20:22 +0000"  >&lt;p&gt;The following link has the package pre-requisites for compiling ZFS and Lustre:&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://wiki.lustre.org/Compiling_Lustre#SLES_12:_Install_the_Software_Development_Tools&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://wiki.lustre.org/Compiling_Lustre#SLES_12:_Install_the_Software_Development_Tools&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The following command will install the pre-reqs:&lt;/p&gt;
&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt;sudo zypper install asciidoc automake bc binutils-devel bison bison \
  device-mapper-devel elfutils libelf-devel flex gcc gcc-c++ git \
  glib2-tools glib2-devel hmaccalc libattr-devel libblkid-devel \
  libselinux-devel libtool libuuid-devel lsscsi make mksh ncurses-devel \
  net-tools numactl parted patchutils pciutils-devel perl pesign \
  python-devel rpm-build sysstat systemd-devel tcl tcl-devel tk tk-devel wget \
  xmlto zlib-devel libyaml-devel krb5-devel keyutils-devel net-snmp-devel
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;You will need to have the SLE-SDK12 add-on enabled. Additional dependencies will be resolved automatically.&lt;/p&gt;</comment>
                            <comment id="199145" author="abea@supermicro.com" created="Tue, 13 Jun 2017 22:30:27 +0000"  >&lt;p&gt;how do you enable the  SLE-SDK12 add-on ?&lt;/p&gt;

&lt;p&gt;thanks&lt;/p&gt;</comment>
                            <comment id="199157" author="malkolm" created="Wed, 14 Jun 2017 01:40:35 +0000"  >&lt;p&gt;SUSE&#160;provides the SDK add-on &#8211; I thought it was one of the standard add-ons&#160;for SLES. There might be an ISO download, but I am not sure.&lt;/p&gt;

&lt;p&gt;I forget which packages come from the SDK versus the core OS &#8211; if you run the above command, it will tell you which packages it couldn&apos;t find, if any.&lt;/p&gt;</comment>
                            <comment id="199309" author="abea@supermicro.com" created="Thu, 15 Jun 2017 08:07:49 +0000"  >&lt;p&gt;Hi Malcom,&lt;br/&gt;
i figured out how to add the packages on the server, basically user needs to subscribe and register the node with suse server with NFR license..&lt;br/&gt;
BB-02:~ # SUSEConnect -r 1FAC34FBD7DDAA&lt;br/&gt;
Registered SLES 12.2 x86_64&lt;br/&gt;
To server: &lt;a href=&quot;https://scc.suse.com&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://scc.suse.com&lt;/a&gt;&lt;br/&gt;
SBB-02:~ # SUSEConnect -p&lt;br/&gt;
Please provide a product identifier&lt;br/&gt;
SBB-02:~ # SUSEConnect -p sle-sdk/12.2/x86_64&lt;br/&gt;
Registered sle-sdk 12.2 x86_64&lt;br/&gt;
To server: &lt;a href=&quot;https://scc.suse.com&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://scc.suse.com&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;so spl and zfs components are installed ..&lt;/p&gt;

&lt;p&gt;SBB-02:~ # rpm -qf /usr/include/libspl&lt;br/&gt;
libzfs2-devel-0.7.0-rc4.x86_64&lt;br/&gt;
SBB-02:~ # rpm -qf /usr/include/libzfs&lt;br/&gt;
libzfs2-devel-0.7.0-rc4.x86_64&lt;/p&gt;

&lt;p&gt;Now we are hitting a problem with lustre compilation, these are the steps  have used:&lt;br/&gt;
1.  make distclean&lt;br/&gt;
2. ./configure --enable-server --with-linux=/usr/src/linux-4.4.21-69 --with-linux-obj=/usr/src/linux-4.4.21-69-obj/x86_64/default&lt;br/&gt;
3. make rpms&lt;/p&gt;

&lt;p&gt;SBB-02:~/lustre-release # make rpms&lt;br/&gt;
make  dist-gzip am__post_remove_distdir=&apos;@:&apos;&lt;br/&gt;
make&lt;span class=&quot;error&quot;&gt;&amp;#91;1&amp;#93;&lt;/span&gt;: Entering directory &apos;/root/lustre-release&apos;&lt;br/&gt;
if test -d &quot;lustre-2.9.58_22_gdb59ecb&quot;; then find &quot;lustre-2.9.58_22_gdb59ecb&quot; -type d ! -perm -200 -exec chmod u+w {} &apos;;&apos; &amp;amp;&amp;amp; rm -rf &quot;lustre-2.9.58_22_gdb59ecb&quot; || &lt;/p&gt;
{ sleep 5 &amp;amp;&amp;amp; rm -rf &quot;lustre-2.9.58_22_gdb59ecb&quot;; }
&lt;p&gt;; else :; fi&lt;br/&gt;
test -d &quot;lustre-2.9.58_22_gdb59ecb&quot; || mkdir &quot;lustre-2.9.58_22_gdb59ecb&quot;&lt;br/&gt;
 (cd ldiskfs &amp;amp;&amp;amp; make  top_distdir=../lustre-2.9.58_22_gdb59ecb distdir=../lustre-2.9.58_22_gdb59ecb/ldiskfs \&lt;br/&gt;
     am_&lt;em&gt;remove_distdir=: am&lt;/em&gt;&lt;em&gt;skip_length_check=: am&lt;/em&gt;_skip_mode_fix=: distdir)&lt;/p&gt;

&lt;p&gt;snapshot:&lt;br/&gt;
rm -rf $rpmbuilddir&lt;br/&gt;
make&lt;span class=&quot;error&quot;&gt;&amp;#91;1&amp;#93;&lt;/span&gt;: Entering directory &apos;/root/lustre-release&apos;&lt;br/&gt;
make&lt;span class=&quot;error&quot;&gt;&amp;#91;1&amp;#93;&lt;/span&gt;: Leaving directory &apos;/root/lustre-release&apos;&lt;br/&gt;
Wrote: /tmp/rpmbuild-lustre-root-DfOI5x2b/SRPMS/lustre-2.9.58_22_gdb59ecb-1.src.rpm&lt;br/&gt;
rpmbuilddir=`mktemp &lt;del&gt;t -d rpmbuild-lustre&lt;/del&gt;$USER-XXXXXXXX`; \&lt;br/&gt;
make  \&lt;br/&gt;
        rpmbuilddir=&quot;$rpmbuilddir&quot; rpm-local || exit 1; \&lt;br/&gt;
/usr/bin/rpmbuild \&lt;br/&gt;
        --define &quot;_tmppath $rpmbuilddir/TMP&quot; \&lt;br/&gt;
        --define &quot;_topdir $rpmbuilddir&quot; \&lt;br/&gt;
         --define &quot;kdir /usr/src/linux-4.4.21-69&quot; --define &quot;kobjdir /usr/src/linux-4.4.21-69-obj/x86_64/default&quot; --with zfs --with lnet_dlc \&lt;br/&gt;
        -&lt;del&gt;rebuild lustre-2.9.58_22_gdb59ecb&lt;/del&gt;*.src.rpm || exit 1; \&lt;br/&gt;
cp $rpmbuilddir/RPMS/&lt;b&gt;/&lt;/b&gt;.rpm . || exit 1; \&lt;br/&gt;
rm -rf $rpmbuilddir&lt;br/&gt;
make&lt;span class=&quot;error&quot;&gt;&amp;#91;1&amp;#93;&lt;/span&gt;: Entering directory &apos;/root/lustre-release&apos;&lt;br/&gt;
make&lt;span class=&quot;error&quot;&gt;&amp;#91;1&amp;#93;&lt;/span&gt;: Leaving directory &apos;/root/lustre-release&apos;&lt;br/&gt;
Installing lustre-2.9.58_22_gdb59ecb-1.src.rpm&lt;br/&gt;
sh: -c: line 15: unexpected EOF while looking for matching `&quot;&apos;&lt;br/&gt;
sh: -c: line 17: syntax error: unexpected end of file&lt;br/&gt;
error: Summary field must be present in package: lustre-osd-zfs-kmp-default&lt;br/&gt;
autoMakefile:1091: recipe for target &apos;rpms&apos; failed&lt;br/&gt;
make: *** &lt;span class=&quot;error&quot;&gt;&amp;#91;rpms&amp;#93;&lt;/span&gt; Error 1&lt;br/&gt;
SBB-02:~/lustre-release #&lt;/p&gt;

&lt;p&gt;thanks,&lt;br/&gt;
Abe&lt;/p&gt;
</comment>
                            <comment id="199319" author="malkolm" created="Thu, 15 Jun 2017 10:39:42 +0000"  >&lt;p&gt;There&apos;s a bug somewhere in the &quot;make rpms&quot; process that prevents creating LDISKFS and ZFS packages at the same time. The workaround is to disable the LDISKFS support explicitly:&lt;/p&gt;
&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt;./configure --enable-server \
--disable-ldiskfs \
--with-linux=/usr/src/linux-4.4.21-69 \
--with-linux-obj=/usr/src/linux-4.4.21-69-obj/x86_64/&lt;span class=&quot;code-keyword&quot;&gt;default&lt;/span&gt;
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;Note the second line in the above command.&lt;/p&gt;</comment>
                            <comment id="199436" author="abea@supermicro.com" created="Fri, 16 Jun 2017 09:33:35 +0000"  >&lt;p&gt;This is awesome, i was able to build the rpms for the servers and the clients:&lt;br/&gt;
./configure --disable-server --enable-client --disable-ldiskfs --with-linux=/usr/src/linux-4.4.21-69 --with-linux-obj=/usr/src/linux-4.4.21-69-obj/x86_64/default&lt;br/&gt;
At this point, have installed the rpms on the servers and applied zfs configurations without any issues and started benchmarking our platform..&lt;/p&gt;

&lt;p&gt;One more thing, if you have any documentation on how to use dkms for installs on sles12 sp2 that would be great..&lt;br/&gt;
I assume that the clients needs to be running sles12 sp2 os as well correct ?&lt;/p&gt;

&lt;p&gt;thank you so much for your support here,&lt;/p&gt;

&lt;p&gt;Regards,&lt;br/&gt;
Abe&lt;/p&gt;</comment>
                            <comment id="199437" author="malkolm" created="Fri, 16 Jun 2017 10:07:09 +0000"  >&lt;p&gt;There is no documentation that I am aware of to build ZFS on SLES 12 SP2 with DKMS support, and my own initial attempts have not been successful. The ZFS on Linux project&apos;s documentation doesn&apos;t have much information about SUSE.&lt;/p&gt;

&lt;p&gt;Clients can run any supported OS, but should ideally be running the same version of Lustre. Normally, users will use a common platform across both servers and clients.&lt;/p&gt;</comment>
                            <comment id="214239" author="malkolm" created="Tue, 21 Nov 2017 00:38:21 +0000"  >&lt;p&gt;Is there any further work required on this ticket?&#160;Since there&#160;has been no activity since June 2017, I propose to close.&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10011">
                    <name>Related</name>
                                                                <inwardlinks description="is related to">
                                        <issuelink>
            <issuekey id="46744">LU-9675</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                    </issuelinks>
                <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                                                                                                                                                            <customfield id="customfield_10890" key="com.atlassian.jira.plugins.jira-development-integration-plugin:devsummary">
                        <customfieldname>Development</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                    <customfield id="customfield_10030" key="com.atlassian.jira.plugin.system.customfieldtypes:labels">
                        <customfieldname>Epic/Theme</customfieldname>
                        <customfieldvalues>
                                        <label>zfs</label>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                        <customfield id="customfield_10390" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|hzzecf:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10090" key="com.pyxis.greenhopper.jira:gh-global-rank">
                        <customfieldname>Rank (Obsolete)</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>9223372036854775807</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                            <customfield id="customfield_10060" key="com.atlassian.jira.plugin.system.customfieldtypes:select">
                        <customfieldname>Severity</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="10021"><![CDATA[2]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                        </customfields>
    </item>
</channel>
</rss>