mirror of
https://git.proxmox.com/git/mirror_zfs.git
synced 2025-11-18 02:52:49 +03:00
Parts of the Linux kernel build system struggle with _Noreturn. This
results in the following warnings when building on RHEL 8.5, and likely
other environments. Switch to using the __attribute__((noreturn)).
warning: objtool: dbuf_free_range()+0x2b8:
return with modified stack frame
warning: objtool: dbuf_free_range()+0x0:
stack state mismatch: cfa1=7+40 cfa2=7+8
...
WARNING: EXPORT symbol "arc_buf_size" [zfs.ko] version generation
failed, symbol will not be versioned.
WARNING: EXPORT symbol "spa_open" [zfs.ko] version generation
failed, symbol will not be versioned.
...
Additionally, __thread_exit() has been renamed spl_thread_exit() and
made a static inline function. This was needed because the kernel
will generate a warning for symbols which are __attribute__((noreturn))
and then exported with EXPORT_SYMBOL.
While we could continue to use _Noreturn in user space I've also
switched it to __attribute__((noreturn)) purely for consistency
throughout the code base.
Reviewed-by: Ryan Moeller <freqlabs@FreeBSD.org>
Reviewed-by: Brian Atkinson <batkinson@lanl.gov>
Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
Closes #13238
|
||
|---|---|---|
| .. | ||
| crypto | ||
| fm | ||
| fs | ||
| lua | ||
| sysevent | ||
| zstd | ||
| abd_impl.h | ||
| abd.h | ||
| aggsum.h | ||
| arc_impl.h | ||
| arc.h | ||
| avl_impl.h | ||
| avl.h | ||
| bitops.h | ||
| blkptr.h | ||
| bplist.h | ||
| bpobj.h | ||
| bptree.h | ||
| bqueue.h | ||
| btree.h | ||
| dataset_kstats.h | ||
| dbuf.h | ||
| ddt.h | ||
| dmu_impl.h | ||
| dmu_objset.h | ||
| dmu_recv.h | ||
| dmu_redact.h | ||
| dmu_send.h | ||
| dmu_traverse.h | ||
| dmu_tx.h | ||
| dmu_zfetch.h | ||
| dmu.h | ||
| dnode.h | ||
| dsl_bookmark.h | ||
| dsl_crypt.h | ||
| dsl_dataset.h | ||
| dsl_deadlist.h | ||
| dsl_deleg.h | ||
| dsl_destroy.h | ||
| dsl_dir.h | ||
| dsl_pool.h | ||
| dsl_prop.h | ||
| dsl_scan.h | ||
| dsl_synctask.h | ||
| dsl_userhold.h | ||
| edonr.h | ||
| efi_partition.h | ||
| frame.h | ||
| hkdf.h | ||
| Makefile.am | ||
| metaslab_impl.h | ||
| metaslab.h | ||
| mmp.h | ||
| mntent.h | ||
| mod.h | ||
| multilist.h | ||
| nvpair_impl.h | ||
| nvpair.h | ||
| objlist.h | ||
| pathname.h | ||
| qat.h | ||
| range_tree.h | ||
| rrwlock.h | ||
| sa_impl.h | ||
| sa.h | ||
| skein.h | ||
| spa_boot.h | ||
| spa_checkpoint.h | ||
| spa_checksum.h | ||
| spa_impl.h | ||
| spa_log_spacemap.h | ||
| spa.h | ||
| space_map.h | ||
| space_reftree.h | ||
| sysevent.h | ||
| txg_impl.h | ||
| txg.h | ||
| u8_textprep_data.h | ||
| u8_textprep.h | ||
| uberblock_impl.h | ||
| uberblock.h | ||
| uio_impl.h | ||
| unique.h | ||
| uuid.h | ||
| vdev_disk.h | ||
| vdev_draid.h | ||
| vdev_file.h | ||
| vdev_impl.h | ||
| vdev_indirect_births.h | ||
| vdev_indirect_mapping.h | ||
| vdev_initialize.h | ||
| vdev_raidz_impl.h | ||
| vdev_raidz.h | ||
| vdev_rebuild.h | ||
| vdev_removal.h | ||
| vdev_trim.h | ||
| vdev.h | ||
| xvattr.h | ||
| zap_impl.h | ||
| zap_leaf.h | ||
| zap.h | ||
| zcp_global.h | ||
| zcp_iter.h | ||
| zcp_prop.h | ||
| zcp_set.h | ||
| zcp.h | ||
| zfeature.h | ||
| zfs_acl.h | ||
| zfs_bootenv.h | ||
| zfs_context.h | ||
| zfs_debug.h | ||
| zfs_delay.h | ||
| zfs_file.h | ||
| zfs_fuid.h | ||
| zfs_ioctl_impl.h | ||
| zfs_ioctl.h | ||
| zfs_onexit.h | ||
| zfs_project.h | ||
| zfs_quota.h | ||
| zfs_racct.h | ||
| zfs_ratelimit.h | ||
| zfs_refcount.h | ||
| zfs_rlock.h | ||
| zfs_sa.h | ||
| zfs_stat.h | ||
| zfs_sysfs.h | ||
| zfs_vfsops.h | ||
| zfs_vnops.h | ||
| zfs_znode.h | ||
| zil_impl.h | ||
| zil.h | ||
| zio_checksum.h | ||
| zio_compress.h | ||
| zio_crypt.h | ||
| zio_impl.h | ||
| zio_priority.h | ||
| zio.h | ||
| zrlock.h | ||
| zthr.h | ||
| zvol_impl.h | ||
| zvol.h | ||