Module Name: src Committed By: riastradh Date: Sun Dec 19 01:08:43 UTC 2021
Modified Files: src/sys/external/bsd/drm2/include/linux: rbtree.h Log Message: Define rb_erase and rb_erase_cached -- easy wrappers. To generate a diff of this commit: cvs rdiff -u -r1.4 -r1.5 src/sys/external/bsd/drm2/include/linux/rbtree.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/external/bsd/drm2/include/linux/rbtree.h diff -u src/sys/external/bsd/drm2/include/linux/rbtree.h:1.4 src/sys/external/bsd/drm2/include/linux/rbtree.h:1.5 --- src/sys/external/bsd/drm2/include/linux/rbtree.h:1.4 Sun Dec 19 00:47:54 2021 +++ src/sys/external/bsd/drm2/include/linux/rbtree.h Sun Dec 19 01:08:43 2021 @@ -1,4 +1,4 @@ -/* $NetBSD: rbtree.h,v 1.4 2021/12/19 00:47:54 riastradh Exp $ */ +/* $NetBSD: rbtree.h,v 1.5 2021/12/19 01:08:43 riastradh Exp $ */ /*- * Copyright (c) 2013 The NetBSD Foundation, Inc. @@ -49,4 +49,19 @@ RB_EMPTY_ROOT(struct rb_root *root) return RB_TREE_MIN(&root->rbr_tree) == NULL; } +static inline void +rb_erase(struct rb_root *root, struct rb_node *rbnode) +{ + struct rb_tree *tree = &root->rbr_tree; + void *node = (char *)rbnode - tree->rbt_ops->rbto_node_offset; + + rb_tree_remove_node(tree, node); +} + +static inline void +rb_erase_cached(struct rb_root_cached *root, struct rb_node *rbnode) +{ + rb_erase(&root->rbrc_root, rbnode); +} + #endif /* _LINUX_RBTREE_H_ */