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

# FUTEX\_LOCK\_PI2(2const)

lock a priority‐inheritance futex

## NAME

FUTEX\_LOCK\_PI2 - lock a priority‐inheritance futex

## LIBRARY

Standard C library (*libc*, *-lc*)

## SYNOPSIS

```
#include <linux/futex.h>  /* Definition of FUTEX_* constants */
#include <sys/syscall.h>  /* Definition of SYS_* constants */
#include <unistd.h>
```

**long syscall(SYS\_futex, uint32\_t \****uaddr***, FUTEX\_LOCK\_PI2, 0,**              **const struct timespec \****timeout***);**

## DESCRIPTION

This operation is the same as [**FUTEX\_LOCK\_PI**(2const)](/FUTEX_LOCK_PI/2const.md), except that the clock against which *timeout* is measured is selectable.

By default, the (absolute) timeout specified in *timeout* is measured against the **CLOCK\_MONOTONIC** clock.

## RETURN VALUE

See [**FUTEX\_LOCK\_PI**(2const)](/FUTEX_LOCK_PI/2const.md).

## ERRORS

See [**FUTEX\_LOCK\_PI**(2const)](/FUTEX_LOCK_PI/2const.md).

## STANDARDS

Linux.

## HISTORY

Linux 5.14.

## SEE ALSO

[**futex**(2)](/futex/2.md)
