mirror_zfs/include/os/linux/zfs/sys
Alexander Motin ba7797c8db ARC: Remove b_bufcnt/b_ebufcnt from ARC headers
In most cases we do not care about exact number of buffers linked
to the header, we just need to know if it is zero, non-zero or one.
That can easily be checked just looking on b_buf pointer or in some
cases derefencing it.

b_ebufcnt is read only once, and in that case we already traverse
the list as part of arc_buf_remove(), so second traverse should not
be expensive.

This reduces L1 ARC header size by 8 bytes and full crypto header by
16 bytes, down to 176 and 232 bytes on FreeBSD respectively.

Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by:	Alexander Motin <mav@FreeBSD.org>
Sponsored by:	iXsystems, Inc.
Closes #15350
2023-10-07 09:08:20 -07:00
..
policy.h Linux 6.3 compat: idmapped mount API changes 2023-04-10 14:15:36 -07:00
trace_acl.h Linux: use filemap_range_has_page() 2023-02-14 11:04:34 -08:00
trace_arc.h ARC: Remove b_bufcnt/b_ebufcnt from ARC headers 2023-10-07 09:08:20 -07:00
trace_common.h Fix zio_flag_t print format 2022-10-28 09:08:12 -07:00
trace_dbgmsg.h Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
trace_dbuf.h Fix invalid pointer access in trace_dbuf.h 2023-10-03 09:06:07 -07:00
trace_dmu.h Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
trace_dnode.h Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
trace_multilist.h Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
trace_rrwlock.h Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
trace_txg.h Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
trace_vdev.h Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
trace_zfs.h Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
trace_zil.h zil: Add some more statistics. 2023-05-25 13:51:53 -07:00
trace_zio.h Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
trace_zrlock.h Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
zfs_bootenv_os.h zfs label bootenv should store data as nvlist 2020-09-15 15:42:27 -07:00
zfs_context_os.h Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
zfs_ctldir.h Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
zfs_dir.h zfs_rename: restructure to have cleaner fallbacks 2022-10-28 09:48:58 -07:00
zfs_vfsops_os.h Retire z_nr_znodes 2023-09-19 08:52:06 -07:00
zfs_vnops_os.h Linux 6.3 compat: idmapped mount API changes 2023-04-10 14:15:36 -07:00
zfs_znode_impl.h Implementation of block cloning for ZFS 2023-03-10 11:59:53 -08:00
zpl.h linux: implement filesystem-side copy/clone functions for EL7 2023-07-26 08:46:58 -07:00