Go to file
Mikulas Patocka ce690fa1d5 xfs: don't update mtime on COW faults
commit b17164e258 upstream.

When running in a dax mode, if the user maps a page with MAP_PRIVATE and
PROT_WRITE, the xfs filesystem would incorrectly update ctime and mtime
when the user hits a COW fault.

This breaks building of the Linux kernel.  How to reproduce:

 1. extract the Linux kernel tree on dax-mounted xfs filesystem
 2. run make clean
 3. run make -j12
 4. run make -j12

at step 4, make would incorrectly rebuild the whole kernel (although it
was already built in step 3).

The reason for the breakage is that almost all object files depend on
objtool.  When we run objtool, it takes COW page fault on its .data
section, and these faults will incorrectly update the timestamp of the
objtool binary.  The updated timestamp causes make to rebuild the whole
tree.

Signed-off-by: Mikulas Patocka <mpatocka@redhat.com>
Cc: stable@vger.kernel.org
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2020-09-09 19:12:30 +02:00
arch tracing/kprobes, x86/ptrace: Fix regs argument order for i386 2020-09-09 19:12:30 +02:00
block blk-mq: order adding requests to hctx->dispatch and checking SCHED_RESTART 2020-09-03 11:27:01 +02:00
certs
crypto crypto: af_alg - Work around empty control messages without MSG_MORE 2020-09-03 11:27:05 +02:00
Documentation dt-bindings: mmc: tegra: Add tmclk for Tegra210 and later 2020-09-05 11:22:50 +02:00
drivers iommu/vt-d: Handle 36bit addressing for x86-32 2020-09-09 19:12:30 +02:00
fs xfs: don't update mtime on COW faults 2020-09-09 19:12:30 +02:00
include include/linux/log2.h: add missing () around n in roundup_pow_of_two() 2020-09-09 19:12:29 +02:00
init
ipc
kernel kbuild: add variables for compression tools 2020-09-03 11:27:10 +02:00
lib
LICENSES
mm
net net/packet: fix overflow in tpacket_rcv 2020-09-09 19:12:29 +02:00
samples
scripts kbuild: fix broken builds because of GZIP,BZIP2,LZOP variables 2020-09-03 11:27:10 +02:00
security
sound ALSA: usb-audio: Update documentation comment for MS2109 quirk 2020-09-03 11:27:11 +02:00
tools perf jevents: Fix suspicious code in fixregex() 2020-09-09 19:12:28 +02:00
usr
virt
.clang-format
.cocciconfig
.get_maintainer.ignore
.gitattributes
.gitignore
.mailmap
COPYING
CREDITS
Kbuild
Kconfig
MAINTAINERS
Makefile Linux 5.4.63 2020-09-05 11:22:51 +02: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.