---
name: "uretprobe"
section: "2"
platform: "linux"
package: "man-pages"
version: "6.19-1"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/uretprobe"
---

# uretprobe(2)

execute pending return uprobes

## NAME

uretprobe - execute pending return uprobes

## SYNOPSIS

```
int uretprobe(void);
```

## DESCRIPTION

**uretprobe**() is an alternative to breakpoint instructions for triggering return uprobe consumers.

Calls to **uretprobe**() are only made from the user-space trampoline provided by the kernel. Calls from any other place result in a **SIGILL**.

## RETURN VALUE

The return value is architecture-specific.

## ERRORS

- **SIGILL**

  **uretprobe**() was called by a user-space program.

## VERSIONS

The behavior varies across systems.

## STANDARDS

None.

## HISTORY

Linux 6.11.

**uretprobe**() was initially introduced for the x86\_64 architecture where it was shown to be faster than breakpoint traps. It might be extended to other architectures.

## CAVEATS

**uretprobe**() exists only to allow the invocation of return uprobe consumers. It should **never** be called directly.
