---
name: "generic_permission"
section: "9"
platform: "linux"
package: "linux-manual-4.9"
version: "4.9.228-1"
release: "Debian 9 (Stretch)"
platforms: ["linux"]
url: "https://new.carta.tech/generic_permission"
---

# generic\_permission(9)

check for access rights on a Posix-like filesystem

## NAME

generic\_permission - check for access rights on a Posix-like filesystem

## SYNOPSIS

**int generic\_permission(struct inode \*** *inode***, int** *mask***);**

## ARGUMENTS

*inode*

inode to check access rights for

*mask*

right to check for (**MAY\_READ**, **MAY\_WRITE**, **MAY\_EXEC**, ...)

## DESCRIPTION

Used to check for read/write/execute permissions on a file. We use “fsuid” for this, letting us set arbitrary permissions for filesystem access without changing the “normal” uids which are used for other things.

generic\_permission is rcu-walk aware. It returns -ECHILD in case an rcu-walk request cannot be satisfied (eg. requires blocking or too much complexity). It would then be called again in ref-walk mode.

## COPYRIGHT
