opnsense-src/sys/compat/linuxkpi/common/include/linux
Hans Petter Selasky 6b839ff47b Implement radix_tree_store() in the LinuxKPI for use with the coming
extensible arrays implementation.

While at it add some more comments explaining the current
radix_tree_insert() function and make sure to clean the root node when
the radix tree reaches the maximum height. This can happen if the
index passed is too big when the tree is empty.

The radix_tree_store() function is basically a copy of the
radix_tree_insert() function with some added functionality.

The radix_tree_store() function is local to FreeBSD and does not yet
exist in Linux.

Reviewed by:		kib
MFC after:		1 week
Sponsored by:		Mellanox Technologies
2020-08-07 16:15:44 +00:00
..
atomic.h LinuxKPI: Include asm/atomic-long.h from atomic.h. 2019-05-15 17:44:25 +00:00
bitmap.h Implement the bitmap_subset() function in the LinuxKPI. This function 2020-07-10 12:06:18 +00:00
bitops.h linuxkpi: Add clear_bit_unlock 2020-08-04 15:25:22 +00:00
bottom_half.h Add support for LinuxKPI tasklets. 2017-02-21 13:23:53 +00:00
cache.h
cdev.h linuxkpi: Remove extraneous NULL check on M_WAITOK allocation 2019-01-01 19:56:49 +00:00
clocksource.h Remove cycle_t type from the LinuxKPI similar to Linux upstream. 2017-07-31 09:17:54 +00:00
compat.h lkpi: allow late binding of linux_alloc_current 2019-02-22 23:15:32 +00:00
compiler.h linuxkpi: Add __same_type and __must_be_array macros 2020-05-25 12:42:55 +00:00
completion.h Correct macroname in the LinuxKPI. 2018-05-31 12:55:38 +00:00
dcache.h Refactor dentry structure into its own header file in the LinuxKPI similary 2018-02-18 08:29:25 +00:00
debugfs.h import linux debugfs support 2019-02-23 20:56:41 +00:00
delay.h Use mstosbt() instead of SBT_1MS in the LinuxKPI to get the last few bits 2018-03-03 19:26:40 +00:00
device.h Enable device class group attributes in the LinuxKPI. 2019-11-04 14:19:09 +00:00
dma-attrs.h Properly define the DMA attribute values in the LinuxKPI. 2019-03-13 17:51:08 +00:00
dma-mapping.h Re-apply r363564. 2020-08-04 14:53:41 +00:00
dmapool.h Make the dma_pool structure private to the LinuxKPI similar to Linux. 2019-04-30 09:38:22 +00:00
err.h Allow the ERR_CAST() function in the LinuxKPI to take a const void pointer. 2020-04-20 13:36:01 +00:00
errno.h linuxkpi: Add EBADRQC to errno.h 2020-05-13 07:49:12 +00:00
etherdevice.h Replace read_random(9) with more appropriate arc4rand(9) KPIs 2019-04-04 01:02:50 +00:00
export.h Move the EXPORT_SYMBOL_XXX() function macros into own header file. 2018-06-07 11:34:59 +00:00
file.h fd: remove the seq argument from fget_unlocked 2020-02-03 22:27:55 +00:00
fs.h linuxkpi: Move shmem related functions in it's own file 2020-02-21 09:28:45 +00:00
gfp.h Add necessary bits for Linux KPI to work correctly on powerpc 2019-08-04 19:28:10 +00:00
hardirq.h linuxkpi: Include hardirq.h in preempt.h and lockdep.h in hardirq.h 2020-07-26 16:30:59 +00:00
hrtimer.h Improve high resolution timer support in the LinuxKPI. 2018-06-01 11:33:14 +00:00
idr.h Resolve duplicate symbol name conflict after r345095, when building LINT. 2019-03-13 19:53:20 +00:00
if_arp.h
if_ether.h linuxkpi whitespace cleanup 2018-03-23 15:50:01 +00:00
if_vlan.h linuxkpi whitespace cleanup 2018-03-23 15:50:01 +00:00
in.h Add support for more IPv4 and IPv6 related macros in the LinuxKPI. 2017-03-22 15:44:00 +00:00
in6.h Unconditionally include "opt_inet6.h" in the LinuxKPI. 2017-11-01 12:21:28 +00:00
inetdevice.h Mechanical cleanup of epoch(9) usage in network stack. 2019-01-09 01:11:19 +00:00
interrupt.h Fix broken DECLARE_TASKLET() macro after r347852. 2019-09-11 07:53:49 +00:00
io-mapping.h Let io_mapping_init_wc() fall back to an uncacheable mapping. 2017-07-03 02:01:16 +00:00
io.h Fix include file order in io.h in the LinuxKPI. 2020-07-05 19:38:36 +00:00
ioctl.h Define _IOC_SIZE() in the LinuxKPI. 2016-05-13 11:42:36 +00:00
irq_work.h linuxkpi: Add irq_work.h 2020-05-19 09:04:35 +00:00
irqreturn.h Move the IRQ_RETVAL() and irqreturn definitions to irqreturn.h in the 2018-02-17 20:37:21 +00:00
jhash.h
jiffies.h linuxkpi: Add time_after32 and time_before32 2020-08-04 15:27:32 +00:00
kdev_t.h Fix LinuxKPI regression after r321920. The mda_unit and si_drv0 fields are not 2017-08-02 14:27:27 +00:00
kernel.h linuxkpi: Add taint* defines 2020-07-26 16:31:49 +00:00
kmod.h linuxkpi whitespace cleanup 2018-03-23 15:50:01 +00:00
kobject.h linuxkpi whitespace cleanup 2018-03-23 15:50:01 +00:00
kref.h linuxkpi: Add kref_put_lock 2020-08-04 14:44:16 +00:00
kthread.h Add kthread parking support to the LinuxKPI. 2017-06-18 19:22:05 +00:00
ktime.h LinuxKPI: Expand ktime functionality. 2019-05-15 16:59:04 +00:00
list.h linuxkpi: Add list_is_first function 2020-02-20 17:19:16 +00:00
lockdep.h Fix r363565 2020-07-26 18:33:29 +00:00
log2.h linuxkpi whitespace cleanup 2018-03-23 15:50:01 +00:00
math64.h Implement DIV64_U64_ROUND_UP() in the LinuxKPI. 2020-05-01 10:25:07 +00:00
miscdevice.h linuxkpi whitespace cleanup 2018-03-23 15:50:01 +00:00
mm.h Remove set_page_dirty_lock(). 2020-01-02 19:29:14 +00:00
mm_types.h Implement mmget_not_zero() in the LinuxKPI. 2020-01-24 13:05:53 +00:00
module.h Move the EXPORT_SYMBOL_XXX() function macros into own header file. 2018-06-07 11:34:59 +00:00
moduleparam.h Stub kernel_param_lock() and kernel_param_unlock() in the LinuxKPI. 2018-03-04 19:10:30 +00:00
mutex.h linuxkpi: Add nested variant of mutex_lock_interruptible 2020-08-04 14:45:22 +00:00
net.h
net_dim.h Add support for Dynamic Interrupt Moderation, DIM, in mlx5en(4). 2019-05-08 10:23:33 +00:00
netdevice.h Fix missing epochification of the LinuxKPI after r353292. 2019-10-15 11:14:14 +00:00
notifier.h Add definition for the NETDEV_CHANGE event and tidy up the LinuxKPI 2016-01-26 14:27:00 +00:00
overflow.h Implement the array_size() function in the LinuxKPI. This function 2020-07-10 11:27:54 +00:00
page.h Make sure the "vm_flags" and "vm_page_prot" fields get set correctly 2017-08-11 10:44:40 +00:00
pci.h Ensure pci_channel_offline() actually queries the PCI register space, 2020-06-05 08:12:08 +00:00
pfn.h Implement a series of physical page management related functions in 2017-03-27 17:04:11 +00:00
pfn_t.h Implement a series of physical page management related functions in 2017-03-27 17:04:11 +00:00
pid.h Implement get_task_pid() function macro in the LinuxKPI. 2018-02-17 22:33:26 +00:00
poll.h Properly implement poll_wait() in the LinuxKPI. This prevents direct 2017-09-09 06:29:29 +00:00
preempt.h linuxkpi: Include hardirq.h in preempt.h and lockdep.h in hardirq.h 2020-07-26 16:30:59 +00:00
printk.h Implement print_hex_dump_debug() function macro in the LinuxKPI. 2019-05-06 16:10:26 +00:00
radix-tree.h Implement radix_tree_store() in the LinuxKPI for use with the coming 2020-08-07 16:15:44 +00:00
random.h linuxkpi: Add prandom_u32_max 2020-05-23 17:52:25 +00:00
rbtree.h In r362552, RB_SET_PARENT is defined, and use in parens in 2020-06-23 22:47:54 +00:00
rculist.h LinuxKPI: Additions to rcu list. 2019-06-21 18:48:07 +00:00
rcupdate.h linuxkpi: Add rcu_swap_protected 2020-05-27 10:01:30 +00:00
refcount.h linuxkpi: Add refcount.h 2020-05-25 12:44:07 +00:00
rwlock.h linuxkpi whitespace cleanup 2018-03-23 15:50:01 +00:00
rwsem.h linuxkpi whitespace cleanup 2018-03-23 15:50:01 +00:00
scatterlist.h Optimise use of sg_page_count() in __sg_page_iter_next() in the LinuxKPI. 2020-05-04 10:10:07 +00:00
sched.h LinuxKPI: Add group_leader member to struct task_struct. 2019-05-16 17:53:36 +00:00
semaphore.h Make the LinuxKPI task struct persistent accross system calls. 2017-02-21 12:43:02 +00:00
seq_file.h LinuxKPI: Finalize import of seq_file. 2019-05-16 21:17:18 +00:00
shmem_fs.h linuxkpi: Move shmem related functions in it's own file 2020-02-21 09:28:45 +00:00
sizes.h linuxkpi: Add linux/sizes.h 2020-08-04 14:42:38 +00:00
slab.h Implement more malloc function macros in the LinuxKPI. 2019-03-13 19:17:52 +00:00
smp.h Add on_each_cpu() and wbinvd_on_all_cpus(). 2017-05-01 16:32:28 +00:00
socket.h
spinlock.h linuxkpi whitespace cleanup 2018-03-23 15:50:01 +00:00
srcu.h Implement synchronize_srcu_expedited() in the LinuxKPI. 2020-05-16 14:27:50 +00:00
string.h linuxkpi: Ignore NULL pointers passed to string parameter of kstr(n)dup 2020-07-14 21:56:59 +00:00
swap.h linuxkpi: Use pageproc instead of vmproc 2018-11-21 04:34:18 +00:00
sysfs.h Enable device class group attributes in the LinuxKPI. 2019-11-04 14:19:09 +00:00
time.h Make timespecadd(3) and friends public 2018-07-30 15:46:40 +00:00
timer.h linuxkpi: Fix mod_timer and del_timer_sync 2020-05-25 12:46:05 +00:00
types.h Implement aligned LinuxKPI types for u16, u32 and u64. 2020-04-20 14:03:05 +00:00
uaccess.h LinuxKPI: Update access_ok macro for v5.0. 2019-05-16 17:44:17 +00:00
usb.h linuxkpi whitespace cleanup 2018-03-23 15:50:01 +00:00
vmalloc.h
wait.h linuxkpi: Add __init_waitqueue_head 2020-05-19 08:43:17 +00:00
workqueue.h linuxkpi: Add rcu_work functions 2020-05-21 20:18:38 +00:00
ww_mutex.h LinuxKPI: Add context member to ww_mutex and bump FreeBSD version. 2019-05-14 23:21:20 +00:00