opnsense-src/sys/dev/bxe
Doug Moore 4ed1837853 libkern: add ilog2 macro
The kernel source contains several definitions of an ilog2 function;
some are slower than necessary, and one of them is incorrect.
Elimininate them all and define an ilog2 macro in libkern to replace
them, in a way that is fast, correct for all argument types, and, in a
GENERIC kernel, includes a check for an invalid zero parameter.

Folks at Microsoft have verified that having a correct ilog2
definition for their MANA driver doesn't break it.

Reviewed by:	alc, markj, mhorne (older version), jhibbits (older version)
Differential Revision:	https://reviews.freebsd.org/D45170
Differential Revision:	https://reviews.freebsd.org/D45235

(cherry picked from commit b0056b31e90029553894d17c441cbb2c06d31412)
2025-02-10 04:27:12 -06:00
..
57710_init_values.c sys: Remove $FreeBSD$: one-line .c pattern 2023-08-16 11:54:36 -06:00
57710_int_offsets.h sys: Remove $FreeBSD$: one-line .c pattern 2023-08-16 11:54:36 -06:00
57711_init_values.c sys: Remove $FreeBSD$: one-line .c pattern 2023-08-16 11:54:36 -06:00
57711_int_offsets.h sys: Remove $FreeBSD$: one-line .c pattern 2023-08-16 11:54:36 -06:00
57712_init_values.c sys: Remove $FreeBSD$: one-line .c pattern 2023-08-16 11:54:36 -06:00
57712_int_offsets.h sys: Remove $FreeBSD$: one-line .c pattern 2023-08-16 11:54:36 -06:00
bxe.c ifnet: Remove if_getamcount() 2024-09-20 11:39:16 +00:00
bxe.h libkern: add ilog2 macro 2025-02-10 04:27:12 -06:00
bxe_dcb.h sys: Remove $FreeBSD$: one-line .c pattern 2023-08-16 11:54:36 -06:00
bxe_debug.c sys: Remove $FreeBSD$: one-line .c pattern 2023-08-16 11:54:36 -06:00
bxe_dump.h sys: Remove $FreeBSD$: one-line .c pattern 2023-08-16 11:54:36 -06:00
bxe_elink.c sys: Remove $FreeBSD$: one-line .c pattern 2023-08-16 11:54:36 -06:00
bxe_elink.h sys: Remove $FreeBSD$: one-line .c pattern 2023-08-16 11:54:36 -06:00
bxe_ioctl.h sys: Remove $FreeBSD$: one-line .c pattern 2023-08-16 11:54:36 -06:00
bxe_stats.c sys: Remove $FreeBSD$: one-line .c pattern 2023-08-16 11:54:36 -06:00
bxe_stats.h sys: Remove $FreeBSD$: one-line .c pattern 2023-08-16 11:54:36 -06:00
ecore_fw_defs.h sys: Remove $FreeBSD$: one-line .c pattern 2023-08-16 11:54:36 -06:00
ecore_hsi.h sys: Remove $FreeBSD$: one-line .c pattern 2023-08-16 11:54:36 -06:00
ecore_init.h sys: Remove $FreeBSD$: one-line .c pattern 2023-08-16 11:54:36 -06:00
ecore_init_ops.h sys: Remove $FreeBSD$: one-line .c pattern 2023-08-16 11:54:36 -06:00
ecore_mfw_req.h sys: Remove $FreeBSD$: one-line .c pattern 2023-08-16 11:54:36 -06:00
ecore_reg.h sys: Remove $FreeBSD$: one-line .c pattern 2023-08-16 11:54:36 -06:00
ecore_sp.c sys: Remove $FreeBSD$: one-line .c pattern 2023-08-16 11:54:36 -06:00
ecore_sp.h libkern: add ilog2 macro 2025-02-10 04:27:12 -06:00