I'm trying to move a MIPS based embedded system from 2.6.16.16 to 2.6.24. Most things seem to be working, but I'm having troubles with inotify. The code is using inotify to detect a file written to /tmp (tmpfs). The writer creates a file with a temporary name and then rename()s the tmp file over the file I'm monitoring.
With 2.6.16.16, everything works fine, but with 2.6.24, the inotify process runs for a while (~100 events) and then inotify_add_watch() returns ENOSPC. Once this happens, I can't add new watches, even if I kill the process and restart it. fs.inotify.max_user_instances and fs.inotify.max_user_watches are both 128, so I'd imagine I'm hitting this limit. For some reason the watches aren't getting cleaned up (even after the process is killed). In a loop, the code is doing: wd = inotify_add_watch(fd, file, IN_CLOSE_WRITE|IN_DELETE_SELF|IN_ONESHOT); blocking read on notify fd Has something changed in the inotify() API since 2.6.16.16, or could this be a leak? --Clem -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/