Linux kernel modifications for the Kernel Hacking exam
Find a file
Amir Goldstein 9b93f33105 fsnotify: send event with parent/name info to sb/mount/non-dir marks
Similar to events "on child" to watching directory, send event
with parent/name info if sb/mount/non-dir marks are interested in
parent/name info.

The FS_EVENT_ON_CHILD flag can be set on sb/mount/non-dir marks to specify
interest in parent/name info for events on non-directory inodes.

Events on "orphan" children (disconnected dentries) are sent without
parent/name info.

Events on directories are sent with parent/name info only if the parent
directory is watching.

After this change, even groups that do not subscribe to events on
children could get an event with mark iterator type TYPE_CHILD and
without mark iterator type TYPE_INODE if fanotify has marks on the same
objects.

dnotify and inotify event handlers can already cope with that situation.
audit does not subscribe to events that are possible on child, so won't
get to this situation. nfsd does not access the marks iterator from its
event handler at the moment, so it is not affected.

This is a bit too fragile, so we should prepare all groups to cope with
mark type TYPE_CHILD preferably using a generic helper.

Link: https://lore.kernel.org/r/20200716084230.30611-16-amir73il@gmail.com
Signed-off-by: Amir Goldstein <amir73il@gmail.com>
Signed-off-by: Jan Kara <jack@suse.cz>
2020-07-27 23:21:02 +02:00
arch Raise gcc version requirement to 4.9 2020-07-08 10:48:35 -07:00
block block-5.8-2020-07-05 2020-07-05 10:45:31 -07:00
certs
crypto crypto: af_alg - fix use-after-free in af_alg_accept() due to bh_lock_sock() 2020-06-18 17:09:54 +10:00
Documentation Documentation: update for gcc 4.9 requirement 2020-07-08 12:28:44 -07:00
drivers MTD: 2020-07-07 14:54:02 -07:00
fs fsnotify: send event with parent/name info to sb/mount/non-dir marks 2020-07-27 23:21:02 +02:00
include fsnotify: send event with parent/name info to sb/mount/non-dir marks 2020-07-27 23:21:02 +02:00
init kbuild: fix CONFIG_CC_CAN_LINK(_STATIC) for cross-compilation with Clang 2020-07-02 00:57:45 +09:00
ipc mmap locking API: use coccinelle to convert mmap_sem rwsem call sites 2020-06-09 09:39:14 -07:00
kernel audit: do not set FS_EVENT_ON_CHILD in audit marks mask 2020-07-27 23:16:33 +02:00
lib Peter Zijlstra says: 2020-06-28 09:42:47 -07:00
LICENSES
mm Raise gcc version requirement to 4.9 2020-07-08 10:48:35 -07:00
net Fixes for a umask bug on exported filesystems lacking ACL support, a 2020-07-02 20:35:33 -07:00
samples samples/vfs: avoid warning in statx override 2020-07-03 16:15:25 -07:00
scripts Kbuild fixes for v5.8 (2nd) 2020-07-05 12:14:24 -07:00
security Two simple fixes for v5.8: 2020-06-30 12:21:53 -07:00
sound sound fixes for 5.8-rc5 2020-07-08 11:07:09 -07:00
tools Raise gcc version requirement to 4.9 2020-07-08 10:48:35 -07:00
usr bpfilter: match bit size of bpfilter_umh to that of the kernel 2020-05-17 18:52:01 +09:00
virt kvm: use more precise cast and do not drop __user 2020-07-02 05:39:31 -04:00
.clang-format block: add bio_for_each_bvec_all() 2020-05-25 11:25:24 +02:00
.cocciconfig
.get_maintainer.ignore
.gitattributes
.gitignore .gitignore: Do not track defconfig from make savedefconfig 2020-07-05 16:15:46 +09:00
.mailmap A fair amount of stuff this time around, dominated by yet another massive 2020-06-01 15:45:27 -07:00
COPYING
CREDITS mailmap: change email for Ricardo Ribalda 2020-05-25 18:59:59 -06:00
Kbuild
Kconfig kbuild: ensure full rebuild when the compiler is updated 2020-05-12 13:28:33 +09:00
MAINTAINERS Devicetree fixes for v5.8, take 2: 2020-07-02 22:46:05 -07:00
Makefile Linux 5.8-rc4 2020-07-05 16:20:22 -07:00
README

Linux kernel
============

There are several guides for kernel developers and users. These guides can
be rendered in a number of formats, like HTML and PDF. Please read
Documentation/admin-guide/README.rst first.

In order to build the documentation, use ``make htmldocs`` or
``make pdfdocs``.  The formatted documentation can also be read online at:

    https://www.kernel.org/doc/html/latest/

There are various text files in the Documentation/ subdirectory,
several of them using the Restructured Text markup notation.

Please read the Documentation/process/changes.rst file, as it contains the
requirements for building and running the kernel, and information about
the problems which may result by upgrading your kernel.