mirror_zfs/include/sys
Brian Behlendorf 460748d4ae
Switch from _Noreturn to __attribute__((noreturn))
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
2022-03-23 08:51:00 -07:00
..
crypto module: icp: remove vestigia of crypto sessions 2022-02-15 16:25:56 -08:00
fm Upstream: Add snapshot and zvol events 2021-09-09 10:44:21 -07:00
fs Add physical device size to SIZE column in 'zpool list -v' 2022-03-08 16:20:41 -08:00
lua Clean up CSTYLEDs 2022-01-26 11:38:52 -08:00
sysevent
zstd Update checkstyle workflow env to ubuntu-20.04 2021-11-02 14:02:57 -06:00
abd_impl.h Avoid small buffer copying on write 2021-07-27 16:05:47 -07:00
abd.h Avoid small buffer copying on write 2021-07-27 16:05:47 -07:00
aggsum.h
arc_impl.h Replace *CTASSERT() with _Static_assert() 2022-01-26 11:38:52 -08:00
arc.h include: sys/arc.h: shim out arc_referenced() 2021-12-23 09:36:26 -08:00
avl_impl.h
avl.h
bitops.h Remove NOTE(CONSTCOND) and note.h 2021-07-26 12:07:53 -07:00
blkptr.h
bplist.h
bpobj.h
bptree.h
bqueue.h
btree.h
dataset_kstats.h
dbuf.h Introduce a tunable to exclude special class buffers from L2ARC 2021-11-11 12:52:16 -08:00
ddt.h
dmu_impl.h
dmu_objset.h Introduce a tunable to exclude special class buffers from L2ARC 2021-11-11 12:52:16 -08:00
dmu_recv.h module/*.ko: prune .data, global .rodata 2022-01-14 15:37:55 -08:00
dmu_redact.h
dmu_send.h
dmu_traverse.h
dmu_tx.h Add Module Parameter Regarding Log Size Limit 2021-07-20 09:40:24 -06:00
dmu_zfetch.h
dmu.h module/*.ko: prune .data, global .rodata 2022-01-14 15:37:55 -08:00
dnode.h Fix lseek(SEEK_DATA/SEEK_HOLE) mmap consistency 2021-11-07 14:27:44 -07:00
dsl_bookmark.h
dsl_crypt.h
dsl_dataset.h Simplify resume token generation 2022-02-01 17:04:08 -08:00
dsl_deadlist.h
dsl_deleg.h
dsl_destroy.h
dsl_dir.h Remove NOTE(CONSTCOND) and note.h 2021-07-26 12:07:53 -07:00
dsl_pool.h Fix ENOSPC when unlinking multiple files from full pool 2022-03-08 09:16:35 -08:00
dsl_prop.h
dsl_scan.h
dsl_synctask.h
dsl_userhold.h
edonr.h
efi_partition.h Integrate carcass of libspl/i/s/vtoc.h into i/s/efi_partition.h 2022-03-15 15:13:54 -07:00
frame.h
hkdf.h
Makefile.am Remove NOTE(CONSTCOND) and note.h 2021-07-26 12:07:53 -07:00
metaslab_impl.h module/*.ko: prune .data, global .rodata 2022-01-14 15:37:55 -08:00
metaslab.h module/*.ko: prune .data, global .rodata 2022-01-14 15:37:55 -08:00
mmp.h
mntent.h
mod.h
multilist.h
nvpair_impl.h Add const to nvlist functions to properly expose their real behavior 2021-12-06 18:19:13 -07:00
nvpair.h module/*.ko: prune .data, global .rodata 2022-01-14 15:37:55 -08:00
objlist.h
pathname.h
qat.h include: qat.h: mark unused macro arguments as used 2021-12-23 09:36:21 -08:00
range_tree.h module/*.ko: prune .data, global .rodata 2022-01-14 15:37:55 -08:00
rrwlock.h
sa_impl.h
sa.h module/*.ko: prune .data, global .rodata 2022-01-14 15:37:55 -08:00
skein.h
spa_boot.h
spa_checkpoint.h
spa_checksum.h
spa_impl.h module/*.ko: prune .data, global .rodata 2022-01-14 15:37:55 -08:00
spa_log_spacemap.h
spa.h Add spa _os() hooks 2022-02-15 15:54:25 -08:00
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 Verify dRAID empty sectors 2022-01-04 16:46:32 -08:00
vdev_file.h
vdev_impl.h Replace *CTASSERT() with _Static_assert() 2022-01-26 11:38:52 -08:00
vdev_indirect_births.h
vdev_indirect_mapping.h
vdev_initialize.h
vdev_raidz_impl.h module/*.ko: prune .data, global .rodata 2022-01-14 15:37:55 -08:00
vdev_raidz.h Verify dRAID empty sectors 2022-01-04 16:46:32 -08:00
vdev_rebuild.h
vdev_removal.h
vdev_trim.h
vdev.h Vdev Properties Feature 2021-11-30 07:46:25 -07:00
xvattr.h Forbid b{copy,zero,cmp}(). Don't include <strings.h> for <string.h> 2022-03-15 15:13:48 -07:00
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 module/*.ko: prune .data, global .rodata 2022-01-14 15:37:55 -08:00
zfs_bootenv.h
zfs_context.h Switch from _Noreturn to __attribute__((noreturn)) 2022-03-23 08:51:00 -07:00
zfs_debug.h
zfs_delay.h
zfs_file.h file reference counts can get corrupted 2021-07-10 19:00:37 -06:00
zfs_fuid.h
zfs_ioctl_impl.h module/*.ko: prune .data, global .rodata 2022-01-14 15:37:55 -08:00
zfs_ioctl.h file reference counts can get corrupted 2021-07-10 19:00:37 -06:00
zfs_onexit.h file reference counts can get corrupted 2021-07-10 19:00:37 -06:00
zfs_project.h
zfs_quota.h
zfs_racct.h
zfs_ratelimit.h
zfs_refcount.h Correct refcount_add in dmu_zfetch 2021-10-08 11:10:34 -07:00
zfs_rlock.h
zfs_sa.h log xattr=sa create/remove/update to ZIL 2022-02-22 13:06:43 -08:00
zfs_stat.h
zfs_sysfs.h zcommon: pre-iterate over sysfs instead of statting every feature 2021-12-16 16:43:10 -08:00
zfs_vfsops.h
zfs_vnops.h
zfs_znode.h Expose additional file level attributes 2022-03-07 17:52:03 -08:00
zil_impl.h
zil.h log xattr=sa create/remove/update to ZIL 2022-02-22 13:06:43 -08:00
zio_checksum.h
zio_compress.h
zio_crypt.h module/*.ko: prune .data, global .rodata 2022-01-14 15:37:55 -08:00
zio_impl.h
zio_priority.h
zio.h Default to ON for compression 2022-03-03 10:43:38 -08:00
zrlock.h
zthr.h Avoid memory allocations in the ARC eviction thread 2022-01-21 10:28:13 -08:00
zvol_impl.h zvol: make calls to platform ops static 2022-02-07 10:24:38 -08:00
zvol.h Remove unused function zvol_set_volblocksize() 2021-10-26 17:07:53 -07:00