RtlSubtreePredecessor - NtDoc

Native API online documentation, based on the System Informer (formerly Process Hacker) phnt headers
#ifndef _NTRTL_H

_Check_return_
NTSYSAPI
PRTL_SPLAY_LINKS
NTAPI
RtlSubtreePredecessor(
    _In_ PRTL_SPLAY_LINKS Links
    );

#endif

View code on GitHub
// ntddk.h

NTSYSAPI PRTL_SPLAY_LINKS RtlSubtreePredecessor(
  [in] PRTL_SPLAY_LINKS Links
);
View the official Windows Driver Kit DDI reference

NtDoc

This function is documented in Windows Driver Kit.

Windows Driver Kit DDI reference (nf-ntddk-rtlsubtreepredecessor)

RtlSubtreePredecessor function

Description

The RtlSubtreePredecessor routine returns a pointer to the predecessor of the specified node within the subtree that is rooted at that node.

Parameters

A pointer to the node. The node must have been initialized by calling RtlInitializeSplayLinks.

Return value

RtlSubtreePredecessor returns a pointer to the subtree predecessor of the node at Links, or NULL if the node has no subtree predecessor.

Remarks

If the node at Links has a left subtree, the rightmost node of that subtree is the subtree predecessor.

Callers of the Rtl splay link routines are responsible for synchronizing access to the splay link tree. A fast mutex is the most efficient synchronization mechanism to use for this purpose.

Callers of RtlSubtreePredecessor must be running at IRQL <= DISPATCH_LEVEL if the tree is nonpaged. Usually, callers are running at IRQL PASSIVE_LEVEL.

See also

RtlInitializeSplayLinks

RtlRealPredecessor

RtlSplay

RtlSubtreeSuccessor