# Changeset View

Changeset View

# Standalone View

Standalone View

# sys/compat/linuxkpi/common/include/linux/radix-tree.h

Context not available. | |||||

#define _LINUX_RADIX_TREE_H_ | #define _LINUX_RADIX_TREE_H_ | ||||

#include <linux/types.h> | #include <linux/types.h> | ||||

#include <linux/bitops.h> | |||||

#define RADIX_TREE_MAP_SHIFT 6 | #define RADIX_TREE_MAP_SHIFT 6 | ||||

#define RADIX_TREE_MAP_SIZE (1 << RADIX_TREE_MAP_SHIFT) | #define RADIX_TREE_MAP_SIZE (1 << RADIX_TREE_MAP_SHIFT) | ||||

Context not available. | |||||

#define RADIX_TREE_MAX_HEIGHT \ | #define RADIX_TREE_MAX_HEIGHT \ | ||||

DIV_ROUND_UP((sizeof(long) * NBBY), RADIX_TREE_MAP_SHIFT) | DIV_ROUND_UP((sizeof(long) * NBBY), RADIX_TREE_MAP_SHIFT) | ||||

#define RADIX_TREE_MAX_TAGS 3 | |||||

#define RADIX_TREE_TAG_LONGS \ | |||||

((RADIX_TREE_MAP_SIZE + BITS_PER_LONG - 1) / BITS_PER_LONG) | |||||

struct radix_tree_node { | struct radix_tree_node { | ||||

void *slots[RADIX_TREE_MAP_SIZE]; | unsigned char shift; | ||||

int count; | void *slots[RADIX_TREE_MAP_SIZE]; | ||||

int count; | |||||

unsigned long tags[RADIX_TREE_MAX_TAGS][RADIX_TREE_TAG_LONGS]; | |||||

}; | }; | ||||

struct radix_tree_root { | struct radix_tree_root { | ||||

Context not available. | |||||

markj: This clearly can't go in under the current copyright. | |||||

Done Inline ActionsYes, I meant to discuss around this. I guess we have a few options: - Move the whole radix thing to gplv2 (unless there's something in base that depends on it)
- Move only the iterator part to gplv2 if that is an acceptable and possible thing to do
- Re-implement it to get rid of gpl
johalun0_gmail.com: Yes, I meant to discuss around this. I guess we have a few options:
1) Move the whole radix… |

This clearly can't go in under the current copyright.