krpc: unbootable ZFS-on-root after major upgrade to 11.2

Andriy Gapon avg at FreeBSD.org
Fri Oct 19 14:34:35 UTC 2018


On 19/10/2018 12:24, Eugene Grosbein wrote:
> On 19.10.2018 13:28, Andriy Gapon wrote:
> 
>>> It was brought to my attention that 10.x did not require availability
>>> of krpc for ZFS-on-root system to be bootable but 11.x does.
>>>
>>> That is, major upgrade of 10.x ZFS-on-root system to 11.x
>>> results in non-bootable broken system if it uses custom kernel without NFS bits
>>> that automatically come with krpc, and the system was built with MODULES_OVERRIDE="zfs opensolaris"
>>> and no krpc mentioned.
>>
>> Could you please also describe specifics of the problem?
>> It's kidn of strange that root-on-zfs requires krpc.
> 
> https://svnweb.freebsd.org/base/stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c?revision=339111&view=markup#l7146
> 
> This code uses some xdr(3) functions to parse zpool.cache
> and kernel-side implementation of xdr(3) is contained in krpc.ko
> 
> Out of curiosity, I've commented out mentioned MODULE_DEPEND(zfsctrl, krpc, 1, 1, 1),
> rebuilt zfs.ko and tried to kldload it using UFS-only system having no NFS code in the kernel
> and it failed with a note in dmesg:
> 
> link_elf: symbol xdrmem_create undefined


It's strange that this is a 10.x vs 11.x issue.
I see that zfs has the krpc dependency since r193128.
And the call to xdrmem_create is there since r168404.


-- 
Andriy Gapon


More information about the freebsd-stable mailing list