.\" Copyright (C) 2005 Robert Love .\" and Copyright (C) 2008, Michael Kerrisk .\" .\" SPDX-License-Identifier: GPL-2.0-or-later .\" .\" 2005-07-19 Robert Love - initial version .\" 2006-02-07 mtk, minor changes .\" 2008-10-10 mtk: add description of inotify_init1() .\" .TH inotify_init 2 2024-05-02 "Linux man-pages 6.9.1" .SH NAME inotify_init, inotify_init1 \- initialize an inotify instance .SH LIBRARY Standard C library .RI ( libc ", " \-lc ) .SH SYNOPSIS .nf .B #include .P .B "int inotify_init(void);" .BI "int inotify_init1(int " flags ); .fi .SH DESCRIPTION For an overview of the inotify API, see .BR inotify (7). .P .BR inotify_init () initializes a new inotify instance and returns a file descriptor associated with a new inotify event queue. .P If .I flags is 0, then .BR inotify_init1 () is the same as .BR inotify_init (). The following values can be bitwise ORed in .I flags to obtain different behavior: .TP .B IN_NONBLOCK Set the .B O_NONBLOCK file status flag on the open file description (see .BR open (2)) referred to by the new file descriptor. Using this flag saves extra calls to .BR fcntl (2) to achieve the same result. .TP .B IN_CLOEXEC Set the close-on-exec .RB ( FD_CLOEXEC ) flag on the new file descriptor. See the description of the .B O_CLOEXEC flag in .BR open (2) for reasons why this may be useful. .SH RETURN VALUE On success, these system calls return a new file descriptor. On error, \-1 is returned, and .I errno is set to indicate the error. .SH ERRORS .TP .B EINVAL .RB ( inotify_init1 ()) An invalid value was specified in .IR flags . .TP .B EMFILE The user limit on the total number of inotify instances has been reached. .TP .B EMFILE The per-process limit on the number of open file descriptors has been reached. .TP .B ENFILE The system-wide limit on the total number of open files has been reached. .TP .B ENOMEM Insufficient kernel memory is available. .SH STANDARDS Linux. .SH HISTORY .TP .BR inotify_init () Linux 2.6.13, glibc 2.4. .TP .BR inotify_init1 () Linux 2.6.27, glibc 2.9. .SH SEE ALSO .BR inotify_add_watch (2), .BR inotify_rm_watch (2), .BR inotify (7)