1. 22 Nov, 2023 13 commits
    • Namhyung Kim's avatar
      tools/perf: Update tools's copy of s390 syscall table · d3968c97
      Namhyung Kim authored
      tldr; Just FYI, I'm carrying this on the perf tools tree.
      
      Full explanation:
      
      There used to be no copies, with tools/ code using kernel headers
      directly. From time to time tools/perf/ broke due to legitimate kernel
      hacking. At some point Linus complained about such direct usage. Then we
      adopted the current model.
      
      The way these headers are used in perf are not restricted to just
      including them to compile something.
      
      There are sometimes used in scripts that convert defines into string
      tables, etc, so some change may break one of these scripts, or new MSRs
      may use some different #define pattern, etc.
      
      E.g.:
      
        $ ls -1 tools/perf/trace/beauty/*.sh | head -5
        tools/perf/trace/beauty/arch_errno_names.sh
        tools/perf/trace/beauty/drm_ioctl.sh
        tools/perf/trace/beauty/fadvise.sh
        tools/perf/trace/beauty/fsconfig.sh
        tools/perf/trace/beauty/fsmount.sh
        $
        $ tools/perf/trace/beauty/fadvise.sh
        static const char *fadvise_advices[] = {
              [0] = "NORMAL",
              [1] = "RANDOM",
              [2] = "SEQUENTIAL",
              [3] = "WILLNEED",
              [4] = "DONTNEED",
              [5] = "NOREUSE",
        };
        $
      
      The tools/perf/check-headers.sh script, part of the tools/ build
      process, points out changes in the original files.
      
      So its important not to touch the copies in tools/ when doing changes in
      the original kernel headers, that will be done later, when
      check-headers.sh inform about the change to the perf tools hackers.
      
      Cc: Heiko Carstens <hca@linux.ibm.com>
      Cc: Vasily Gorbik <gor@linux.ibm.com>
      Cc: Alexander Gordeev <agordeev@linux.ibm.com>
      Cc: Christian Borntraeger <borntraeger@linux.ibm.com>
      Cc: Sven Schnelle <svens@linux.ibm.com>
      Cc: linux-s390@vger.kernel.org
      Signed-off-by: default avatarNamhyung Kim <namhyung@kernel.org>
      Link: https://lore.kernel.org/r/20231121225650.390246-13-namhyung@kernel.org
      d3968c97
    • Namhyung Kim's avatar
      tools/perf: Update tools's copy of powerpc syscall table · 3483d244
      Namhyung Kim authored
      tldr; Just FYI, I'm carrying this on the perf tools tree.
      
      Full explanation:
      
      There used to be no copies, with tools/ code using kernel headers
      directly. From time to time tools/perf/ broke due to legitimate kernel
      hacking. At some point Linus complained about such direct usage. Then we
      adopted the current model.
      
      The way these headers are used in perf are not restricted to just
      including them to compile something.
      
      There are sometimes used in scripts that convert defines into string
      tables, etc, so some change may break one of these scripts, or new MSRs
      may use some different #define pattern, etc.
      
      E.g.:
      
        $ ls -1 tools/perf/trace/beauty/*.sh | head -5
        tools/perf/trace/beauty/arch_errno_names.sh
        tools/perf/trace/beauty/drm_ioctl.sh
        tools/perf/trace/beauty/fadvise.sh
        tools/perf/trace/beauty/fsconfig.sh
        tools/perf/trace/beauty/fsmount.sh
        $
        $ tools/perf/trace/beauty/fadvise.sh
        static const char *fadvise_advices[] = {
              [0] = "NORMAL",
              [1] = "RANDOM",
              [2] = "SEQUENTIAL",
              [3] = "WILLNEED",
              [4] = "DONTNEED",
              [5] = "NOREUSE",
        };
        $
      
      The tools/perf/check-headers.sh script, part of the tools/ build
      process, points out changes in the original files.
      
      So its important not to touch the copies in tools/ when doing changes in
      the original kernel headers, that will be done later, when
      check-headers.sh inform about the change to the perf tools hackers.
      
      Cc: Michael Ellerman <mpe@ellerman.id.au>
      Cc: Nicholas Piggin <npiggin@gmail.com>
      Cc: Christophe Leroy <christophe.leroy@csgroup.eu>
      Cc: linuxppc-dev@lists.ozlabs.org
      Signed-off-by: default avatarNamhyung Kim <namhyung@kernel.org>
      Link: https://lore.kernel.org/r/20231121225650.390246-12-namhyung@kernel.org
      3483d244
    • Namhyung Kim's avatar
      tools/perf: Update tools's copy of x86 syscall table · b3b11aed
      Namhyung Kim authored
      tldr; Just FYI, I'm carrying this on the perf tools tree.
      
      Full explanation:
      
      There used to be no copies, with tools/ code using kernel headers
      directly. From time to time tools/perf/ broke due to legitimate kernel
      hacking. At some point Linus complained about such direct usage. Then we
      adopted the current model.
      
      The way these headers are used in perf are not restricted to just
      including them to compile something.
      
      There are sometimes used in scripts that convert defines into string
      tables, etc, so some change may break one of these scripts, or new MSRs
      may use some different #define pattern, etc.
      
      E.g.:
      
        $ ls -1 tools/perf/trace/beauty/*.sh | head -5
        tools/perf/trace/beauty/arch_errno_names.sh
        tools/perf/trace/beauty/drm_ioctl.sh
        tools/perf/trace/beauty/fadvise.sh
        tools/perf/trace/beauty/fsconfig.sh
        tools/perf/trace/beauty/fsmount.sh
        $
        $ tools/perf/trace/beauty/fadvise.sh
        static const char *fadvise_advices[] = {
              [0] = "NORMAL",
              [1] = "RANDOM",
              [2] = "SEQUENTIAL",
              [3] = "WILLNEED",
              [4] = "DONTNEED",
              [5] = "NOREUSE",
        };
        $
      
      The tools/perf/check-headers.sh script, part of the tools/ build
      process, points out changes in the original files.
      
      So its important not to touch the copies in tools/ when doing changes in
      the original kernel headers, that will be done later, when
      check-headers.sh inform about the change to the perf tools hackers.
      
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: Borislav Petkov <bp@alien8.de>
      Cc: Dave Hansen <dave.hansen@linux.intel.com>
      Cc: x86@kernel.org
      Cc: "H. Peter Anvin" <hpa@zytor.com>
      Signed-off-by: default avatarNamhyung Kim <namhyung@kernel.org>
      Link: https://lore.kernel.org/r/20231121225650.390246-11-namhyung@kernel.org
      b3b11aed
    • Namhyung Kim's avatar
      tools headers: Update tools's copy of s390/asm headers · e1d7426b
      Namhyung Kim authored
      tldr; Just FYI, I'm carrying this on the perf tools tree.
      
      Full explanation:
      
      There used to be no copies, with tools/ code using kernel headers
      directly. From time to time tools/perf/ broke due to legitimate kernel
      hacking. At some point Linus complained about such direct usage. Then we
      adopted the current model.
      
      The way these headers are used in perf are not restricted to just
      including them to compile something.
      
      There are sometimes used in scripts that convert defines into string
      tables, etc, so some change may break one of these scripts, or new MSRs
      may use some different #define pattern, etc.
      
      E.g.:
      
        $ ls -1 tools/perf/trace/beauty/*.sh | head -5
        tools/perf/trace/beauty/arch_errno_names.sh
        tools/perf/trace/beauty/drm_ioctl.sh
        tools/perf/trace/beauty/fadvise.sh
        tools/perf/trace/beauty/fsconfig.sh
        tools/perf/trace/beauty/fsmount.sh
        $
        $ tools/perf/trace/beauty/fadvise.sh
        static const char *fadvise_advices[] = {
              [0] = "NORMAL",
              [1] = "RANDOM",
              [2] = "SEQUENTIAL",
              [3] = "WILLNEED",
              [4] = "DONTNEED",
              [5] = "NOREUSE",
        };
        $
      
      The tools/perf/check-headers.sh script, part of the tools/ build
      process, points out changes in the original files.
      
      So its important not to touch the copies in tools/ when doing changes in
      the original kernel headers, that will be done later, when
      check-headers.sh inform about the change to the perf tools hackers.
      
      Cc: Heiko Carstens <hca@linux.ibm.com>
      Cc: Vasily Gorbik <gor@linux.ibm.com>
      Cc: Alexander Gordeev <agordeev@linux.ibm.com>
      Cc: Christian Borntraeger <borntraeger@linux.ibm.com>
      Cc: Sven Schnelle <svens@linux.ibm.com>
      Cc: linux-s390@vger.kernel.org
      Signed-off-by: default avatarNamhyung Kim <namhyung@kernel.org>
      Link: https://lore.kernel.org/r/20231121225650.390246-10-namhyung@kernel.org
      e1d7426b
    • Namhyung Kim's avatar
      tools headers: Update tools's copy of arm64/asm headers · fad8afdc
      Namhyung Kim authored
      tldr; Just FYI, I'm carrying this on the perf tools tree.
      
      Full explanation:
      
      There used to be no copies, with tools/ code using kernel headers
      directly. From time to time tools/perf/ broke due to legitimate kernel
      hacking. At some point Linus complained about such direct usage. Then we
      adopted the current model.
      
      The way these headers are used in perf are not restricted to just
      including them to compile something.
      
      There are sometimes used in scripts that convert defines into string
      tables, etc, so some change may break one of these scripts, or new MSRs
      may use some different #define pattern, etc.
      
      E.g.:
      
        $ ls -1 tools/perf/trace/beauty/*.sh | head -5
        tools/perf/trace/beauty/arch_errno_names.sh
        tools/perf/trace/beauty/drm_ioctl.sh
        tools/perf/trace/beauty/fadvise.sh
        tools/perf/trace/beauty/fsconfig.sh
        tools/perf/trace/beauty/fsmount.sh
        $
        $ tools/perf/trace/beauty/fadvise.sh
        static const char *fadvise_advices[] = {
              [0] = "NORMAL",
              [1] = "RANDOM",
              [2] = "SEQUENTIAL",
              [3] = "WILLNEED",
              [4] = "DONTNEED",
              [5] = "NOREUSE",
        };
        $
      
      The tools/perf/check-headers.sh script, part of the tools/ build
      process, points out changes in the original files.
      
      So its important not to touch the copies in tools/ when doing changes in
      the original kernel headers, that will be done later, when
      check-headers.sh inform about the change to the perf tools hackers.
      
      Cc: Catalin Marinas <catalin.marinas@arm.com>
      Cc: Will Deacon <will@kernel.org>
      Cc: linux-arm-kernel@lists.infradead.org
      Signed-off-by: default avatarNamhyung Kim <namhyung@kernel.org>
      Link: https://lore.kernel.org/r/20231121225650.390246-9-namhyung@kernel.org
      fad8afdc
    • Namhyung Kim's avatar
      tools headers: Update tools's copy of x86/asm headers · c23708f3
      Namhyung Kim authored
      tldr; Just FYI, I'm carrying this on the perf tools tree.
      
      Full explanation:
      
      There used to be no copies, with tools/ code using kernel headers
      directly. From time to time tools/perf/ broke due to legitimate kernel
      hacking. At some point Linus complained about such direct usage. Then we
      adopted the current model.
      
      The way these headers are used in perf are not restricted to just
      including them to compile something.
      
      There are sometimes used in scripts that convert defines into string
      tables, etc, so some change may break one of these scripts, or new MSRs
      may use some different #define pattern, etc.
      
      E.g.:
      
        $ ls -1 tools/perf/trace/beauty/*.sh | head -5
        tools/perf/trace/beauty/arch_errno_names.sh
        tools/perf/trace/beauty/drm_ioctl.sh
        tools/perf/trace/beauty/fadvise.sh
        tools/perf/trace/beauty/fsconfig.sh
        tools/perf/trace/beauty/fsmount.sh
        $
        $ tools/perf/trace/beauty/fadvise.sh
        static const char *fadvise_advices[] = {
              [0] = "NORMAL",
              [1] = "RANDOM",
              [2] = "SEQUENTIAL",
              [3] = "WILLNEED",
              [4] = "DONTNEED",
              [5] = "NOREUSE",
        };
        $
      
      The tools/perf/check-headers.sh script, part of the tools/ build
      process, points out changes in the original files.
      
      So its important not to touch the copies in tools/ when doing changes in
      the original kernel headers, that will be done later, when
      check-headers.sh inform about the change to the perf tools hackers.
      
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: Borislav Petkov <bp@alien8.de>
      Cc: Dave Hansen <dave.hansen@linux.intel.com>
      Cc: x86@kernel.org
      Cc: "H. Peter Anvin" <hpa@zytor.com>
      Signed-off-by: default avatarNamhyung Kim <namhyung@kernel.org>
      Link: https://lore.kernel.org/r/20231121225650.390246-8-namhyung@kernel.org
      c23708f3
    • Namhyung Kim's avatar
      tools headers: Update tools's copy of socket.h header · fd2ddee7
      Namhyung Kim authored
      tldr; Just FYI, I'm carrying this on the perf tools tree.
      
      Full explanation:
      
      There used to be no copies, with tools/ code using kernel headers
      directly. From time to time tools/perf/ broke due to legitimate kernel
      hacking. At some point Linus complained about such direct usage. Then we
      adopted the current model.
      
      The way these headers are used in perf are not restricted to just
      including them to compile something.
      
      There are sometimes used in scripts that convert defines into string
      tables, etc, so some change may break one of these scripts, or new MSRs
      may use some different #define pattern, etc.
      
      E.g.:
      
        $ ls -1 tools/perf/trace/beauty/*.sh | head -5
        tools/perf/trace/beauty/arch_errno_names.sh
        tools/perf/trace/beauty/drm_ioctl.sh
        tools/perf/trace/beauty/fadvise.sh
        tools/perf/trace/beauty/fsconfig.sh
        tools/perf/trace/beauty/fsmount.sh
        $
        $ tools/perf/trace/beauty/fadvise.sh
        static const char *fadvise_advices[] = {
              [0] = "NORMAL",
              [1] = "RANDOM",
              [2] = "SEQUENTIAL",
              [3] = "WILLNEED",
              [4] = "DONTNEED",
              [5] = "NOREUSE",
        };
        $
      
      The tools/perf/check-headers.sh script, part of the tools/ build
      process, points out changes in the original files.
      
      So its important not to touch the copies in tools/ when doing changes in
      the original kernel headers, that will be done later, when
      check-headers.sh inform about the change to the perf tools hackers.
      
      Cc: netdev@vger.kernel.org
      Signed-off-by: default avatarNamhyung Kim <namhyung@kernel.org>
      Link: https://lore.kernel.org/r/20231121225650.390246-7-namhyung@kernel.org
      fd2ddee7
    • Namhyung Kim's avatar
      tools headers UAPI: Update tools's copy of unistd.h header · 91c97b36
      Namhyung Kim authored
      tldr; Just FYI, I'm carrying this on the perf tools tree.
      
      Full explanation:
      
      There used to be no copies, with tools/ code using kernel headers
      directly. From time to time tools/perf/ broke due to legitimate kernel
      hacking. At some point Linus complained about such direct usage. Then we
      adopted the current model.
      
      The way these headers are used in perf are not restricted to just
      including them to compile something.
      
      There are sometimes used in scripts that convert defines into string
      tables, etc, so some change may break one of these scripts, or new MSRs
      may use some different #define pattern, etc.
      
      E.g.:
      
        $ ls -1 tools/perf/trace/beauty/*.sh | head -5
        tools/perf/trace/beauty/arch_errno_names.sh
        tools/perf/trace/beauty/drm_ioctl.sh
        tools/perf/trace/beauty/fadvise.sh
        tools/perf/trace/beauty/fsconfig.sh
        tools/perf/trace/beauty/fsmount.sh
        $
        $ tools/perf/trace/beauty/fadvise.sh
        static const char *fadvise_advices[] = {
              [0] = "NORMAL",
              [1] = "RANDOM",
              [2] = "SEQUENTIAL",
              [3] = "WILLNEED",
              [4] = "DONTNEED",
              [5] = "NOREUSE",
        };
        $
      
      The tools/perf/check-headers.sh script, part of the tools/ build
      process, points out changes in the original files.
      
      So its important not to touch the copies in tools/ when doing changes in
      the original kernel headers, that will be done later, when
      check-headers.sh inform about the change to the perf tools hackers.
      
      Cc: Arnd Bergmann <arnd@arndb.de>
      Cc: linux-arch@vger.kernel.org
      Signed-off-by: default avatarNamhyung Kim <namhyung@kernel.org>
      Link: https://lore.kernel.org/r/20231121225650.390246-6-namhyung@kernel.org
      91c97b36
    • Namhyung Kim's avatar
      tools headers UAPI: Update tools's copy of vhost.h header · daa97513
      Namhyung Kim authored
      tldr; Just FYI, I'm carrying this on the perf tools tree.
      
      Full explanation:
      
      There used to be no copies, with tools/ code using kernel headers
      directly. From time to time tools/perf/ broke due to legitimate kernel
      hacking. At some point Linus complained about such direct usage. Then we
      adopted the current model.
      
      The way these headers are used in perf are not restricted to just
      including them to compile something.
      
      There are sometimes used in scripts that convert defines into string
      tables, etc, so some change may break one of these scripts, or new MSRs
      may use some different #define pattern, etc.
      
      E.g.:
      
        $ ls -1 tools/perf/trace/beauty/*.sh | head -5
        tools/perf/trace/beauty/arch_errno_names.sh
        tools/perf/trace/beauty/drm_ioctl.sh
        tools/perf/trace/beauty/fadvise.sh
        tools/perf/trace/beauty/fsconfig.sh
        tools/perf/trace/beauty/fsmount.sh
        $
        $ tools/perf/trace/beauty/fadvise.sh
        static const char *fadvise_advices[] = {
              [0] = "NORMAL",
              [1] = "RANDOM",
              [2] = "SEQUENTIAL",
              [3] = "WILLNEED",
              [4] = "DONTNEED",
              [5] = "NOREUSE",
        };
        $
      
      The tools/perf/check-headers.sh script, part of the tools/ build
      process, points out changes in the original files.
      
      So its important not to touch the copies in tools/ when doing changes in
      the original kernel headers, that will be done later, when
      check-headers.sh inform about the change to the perf tools hackers.
      
      Cc: "Michael S. Tsirkin" <mst@redhat.com>
      Cc: Jason Wang <jasowang@redhat.com>
      Cc: kvm@vger.kernel.org
      Cc: virtualization@lists.linux.dev
      Cc: netdev@vger.kernel.org
      Signed-off-by: default avatarNamhyung Kim <namhyung@kernel.org>
      Link: https://lore.kernel.org/r/20231121225650.390246-5-namhyung@kernel.org
      daa97513
    • Namhyung Kim's avatar
      tools headers UAPI: Update tools's copy of mount.h header · fb3648a6
      Namhyung Kim authored
      tldr; Just FYI, I'm carrying this on the perf tools tree.
      
      Full explanation:
      
      There used to be no copies, with tools/ code using kernel headers
      directly. From time to time tools/perf/ broke due to legitimate kernel
      hacking. At some point Linus complained about such direct usage. Then we
      adopted the current model.
      
      The way these headers are used in perf are not restricted to just
      including them to compile something.
      
      There are sometimes used in scripts that convert defines into string
      tables, etc, so some change may break one of these scripts, or new MSRs
      may use some different #define pattern, etc.
      
      E.g.:
      
        $ ls -1 tools/perf/trace/beauty/*.sh | head -5
        tools/perf/trace/beauty/arch_errno_names.sh
        tools/perf/trace/beauty/drm_ioctl.sh
        tools/perf/trace/beauty/fadvise.sh
        tools/perf/trace/beauty/fsconfig.sh
        tools/perf/trace/beauty/fsmount.sh
        $
        $ tools/perf/trace/beauty/fadvise.sh
        static const char *fadvise_advices[] = {
              [0] = "NORMAL",
              [1] = "RANDOM",
              [2] = "SEQUENTIAL",
              [3] = "WILLNEED",
              [4] = "DONTNEED",
              [5] = "NOREUSE",
        };
        $
      
      The tools/perf/check-headers.sh script, part of the tools/ build
      process, points out changes in the original files.
      
      So its important not to touch the copies in tools/ when doing changes in
      the original kernel headers, that will be done later, when
      check-headers.sh inform about the change to the perf tools hackers.
      
      Cc: Alexander Viro <viro@zeniv.linux.org.uk>
      Cc: Christian Brauner <brauner@kernel.org>
      Cc: linux-fsdevel@vger.kernel.org
      Signed-off-by: default avatarNamhyung Kim <namhyung@kernel.org>
      Link: https://lore.kernel.org/r/20231121225650.390246-4-namhyung@kernel.org
      fb3648a6
    • Namhyung Kim's avatar
      tools headers UAPI: Update tools's copy of kvm.h header · 5a9f95b6
      Namhyung Kim authored
      tldr; Just FYI, I'm carrying this on the perf tools tree.
      
      Full explanation:
      
      There used to be no copies, with tools/ code using kernel headers
      directly. From time to time tools/perf/ broke due to legitimate kernel
      hacking. At some point Linus complained about such direct usage. Then we
      adopted the current model.
      
      The way these headers are used in perf are not restricted to just
      including them to compile something.
      
      There are sometimes used in scripts that convert defines into string
      tables, etc, so some change may break one of these scripts, or new MSRs
      may use some different #define pattern, etc.
      
      E.g.:
      
        $ ls -1 tools/perf/trace/beauty/*.sh | head -5
        tools/perf/trace/beauty/arch_errno_names.sh
        tools/perf/trace/beauty/drm_ioctl.sh
        tools/perf/trace/beauty/fadvise.sh
        tools/perf/trace/beauty/fsconfig.sh
        tools/perf/trace/beauty/fsmount.sh
        $
        $ tools/perf/trace/beauty/fadvise.sh
        static const char *fadvise_advices[] = {
              [0] = "NORMAL",
              [1] = "RANDOM",
              [2] = "SEQUENTIAL",
              [3] = "WILLNEED",
              [4] = "DONTNEED",
              [5] = "NOREUSE",
        };
        $
      
      The tools/perf/check-headers.sh script, part of the tools/ build
      process, points out changes in the original files.
      
      So its important not to touch the copies in tools/ when doing changes in
      the original kernel headers, that will be done later, when
      check-headers.sh inform about the change to the perf tools hackers.
      
      Cc: Paolo Bonzini <pbonzini@redhat.com>
      Cc: kvm@vger.kernel.org
      Signed-off-by: default avatarNamhyung Kim <namhyung@kernel.org>
      Link: https://lore.kernel.org/r/20231121225650.390246-3-namhyung@kernel.org
      5a9f95b6
    • Namhyung Kim's avatar
      tools headers UAPI: Update tools's copy of fscrypt.h header · 11184466
      Namhyung Kim authored
      tldr; Just FYI, I'm carrying this on the perf tools tree.
      
      Full explanation:
      
      There used to be no copies, with tools/ code using kernel headers
      directly. From time to time tools/perf/ broke due to legitimate kernel
      hacking. At some point Linus complained about such direct usage. Then we
      adopted the current model.
      
      The way these headers are used in perf are not restricted to just
      including them to compile something.
      
      There are sometimes used in scripts that convert defines into string
      tables, etc, so some change may break one of these scripts, or new MSRs
      may use some different #define pattern, etc.
      
      E.g.:
      
        $ ls -1 tools/perf/trace/beauty/*.sh | head -5
        tools/perf/trace/beauty/arch_errno_names.sh
        tools/perf/trace/beauty/drm_ioctl.sh
        tools/perf/trace/beauty/fadvise.sh
        tools/perf/trace/beauty/fsconfig.sh
        tools/perf/trace/beauty/fsmount.sh
        $
        $ tools/perf/trace/beauty/fadvise.sh
        static const char *fadvise_advices[] = {
              [0] = "NORMAL",
              [1] = "RANDOM",
              [2] = "SEQUENTIAL",
              [3] = "WILLNEED",
              [4] = "DONTNEED",
              [5] = "NOREUSE",
        };
        $
      
      The tools/perf/check-headers.sh script, part of the tools/ build
      process, points out changes in the original files.
      
      So its important not to touch the copies in tools/ when doing changes in
      the original kernel headers, that will be done later, when
      check-headers.sh inform about the change to the perf tools hackers.
      
      Cc: Eric Biggers <ebiggers@kernel.org>
      Cc: "Theodore Y. Ts'o" <tytso@mit.edu>
      Cc: Jaegeuk Kim <jaegeuk@kernel.org>
      Cc: linux-fscrypt@vger.kernel.org
      Signed-off-by: default avatarNamhyung Kim <namhyung@kernel.org>
      Link: https://lore.kernel.org/r/20231121225650.390246-2-namhyung@kernel.org
      11184466
    • Namhyung Kim's avatar
      tools headers UAPI: Update tools's copy of drm headers · 1041dfe6
      Namhyung Kim authored
      tldr; Just FYI, I'm carrying this on the perf tools tree.
      
      Full explanation:
      
      There used to be no copies, with tools/ code using kernel headers
      directly. From time to time tools/perf/ broke due to legitimate kernel
      hacking. At some point Linus complained about such direct usage. Then we
      adopted the current model.
      
      The way these headers are used in perf are not restricted to just
      including them to compile something.
      
      There are sometimes used in scripts that convert defines into string
      tables, etc, so some change may break one of these scripts, or new MSRs
      may use some different #define pattern, etc.
      
      E.g.:
      
        $ ls -1 tools/perf/trace/beauty/*.sh | head -5
        tools/perf/trace/beauty/arch_errno_names.sh
        tools/perf/trace/beauty/drm_ioctl.sh
        tools/perf/trace/beauty/fadvise.sh
        tools/perf/trace/beauty/fsconfig.sh
        tools/perf/trace/beauty/fsmount.sh
        $
        $ tools/perf/trace/beauty/fadvise.sh
        static const char *fadvise_advices[] = {
              [0] = "NORMAL",
              [1] = "RANDOM",
              [2] = "SEQUENTIAL",
              [3] = "WILLNEED",
              [4] = "DONTNEED",
              [5] = "NOREUSE",
        };
        $
      
      The tools/perf/check-headers.sh script, part of the tools/ build
      process, points out changes in the original files.
      
      So its important not to touch the copies in tools/ when doing changes in
      the original kernel headers, that will be done later, when
      check-headers.sh inform about the change to the perf tools hackers.
      
      Cc: David Airlie <airlied@gmail.com>
      Cc: Daniel Vetter <daniel@ffwll.ch>
      Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
      Cc: Maxime Ripard <mripard@kernel.org>
      Cc: Thomas Zimmermann <tzimmermann@suse.de>
      Cc: dri-devel@lists.freedesktop.org
      Signed-off-by: default avatarNamhyung Kim <namhyung@kernel.org>
      Link: https://lore.kernel.org/r/20231121225650.390246-1-namhyung@kernel.org
      1041dfe6
  2. 21 Nov, 2023 2 commits
  3. 19 Nov, 2023 8 commits
  4. 18 Nov, 2023 11 commits
    • Linus Torvalds's avatar
      Merge tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi · 037266a5
      Linus Torvalds authored
      Pull SCSI fixes from James Bottomley:
       "Seven small fixes, six in drivers and one in sd.
      
        The sd fix is so large because it changes a struct pointer to a struct
        but otherwise is fairly simple"
      
      * tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi:
        scsi: ufs: qcom-ufs: dt-bindings: Document the SM8650 UFS Controller
        scsi: sd: Fix sshdr use in sd_suspend_common()
        scsi: scsi_debug: Delete some bogus error checking
        scsi: scsi_debug: Fix some bugs in sdebug_error_write()
        scsi: ufs: core: Fix racing issue between ufshcd_mcq_abort() and ISR
        scsi: ufs: core: Expand MCQ queue slot to DeviceQueueDepth + 1
        scsi: qla2xxx: Fix system crash due to bad pointer access
      037266a5
    • Linus Torvalds's avatar
      Merge tag 'parisc-for-6.7-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux · 2254005e
      Linus Torvalds authored
      Pull parisc fixes from Helge Deller:
       "On parisc we still sometimes need writeable stacks, e.g. if programs
        aren't compiled with gcc-14. To avoid issues with the upcoming
        systemd-254 we therefore have to disable prctl(PR_SET_MDWE) for now
        (for parisc only).
      
        The other two patches are minor: a bugfix for the soft power-off on
        qemu with 64-bit kernel and prefer strscpy() over strlcpy():
      
         - Fix power soft-off on qemu
      
         - Disable prctl(PR_SET_MDWE) since parisc sometimes still needs
           writeable stacks
      
         - Use strscpy instead of strlcpy in show_cpuinfo()"
      
      * tag 'parisc-for-6.7-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux:
        prctl: Disable prctl(PR_SET_MDWE) on parisc
        parisc/power: Fix power soft-off when running on qemu
        parisc: Replace strlcpy() with strscpy()
      2254005e
    • Linus Torvalds's avatar
      Merge tag 'xfs-6.7-fixes-1' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux · b8f1fa24
      Linus Torvalds authored
      Pull xfs fixes from Chandan Babu:
      
       - Fix deadlock arising due to intent items in AIL not being cleared
         when log recovery fails
      
       - Fix stale data exposure bug when remapping COW fork extents to data
         fork
      
       - Fix deadlock when data device flush fails
      
       - Fix AGFL minimum size calculation
      
       - Select DEBUG_FS instead of XFS_DEBUG when XFS_ONLINE_SCRUB_STATS is
         selected
      
       - Fix corruption of log inode's extent count field when NREXT64 feature
         is enabled
      
      * tag 'xfs-6.7-fixes-1' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux:
        xfs: recovery should not clear di_flushiter unconditionally
        xfs: inode recovery does not validate the recovered inode
        xfs: fix again select in kconfig XFS_ONLINE_SCRUB_STATS
        xfs: fix internal error from AGFL exhaustion
        xfs: up(ic_sema) if flushing data device fails
        xfs: only remap the written blocks in xfs_reflink_end_cow_extent
        XFS: Update MAINTAINERS to catch all XFS documentation
        xfs: abort intent items when recovery intents fail
        xfs: factor out xfs_defer_pending_abort
      b8f1fa24
    • Linus Torvalds's avatar
      Merge tag 'nfsd-6.7-1' of git://git.kernel.org/pub/scm/linux/kernel/git/cel/linux · bb28378a
      Linus Torvalds authored
      Pull nfsd fixes from Chuck Lever:
      
       - Fix several long-standing bugs in the duplicate reply cache
      
       - Fix a memory leak
      
      * tag 'nfsd-6.7-1' of git://git.kernel.org/pub/scm/linux/kernel/git/cel/linux:
        NFSD: Fix checksum mismatches in the duplicate reply cache
        NFSD: Fix "start of NFS reply" pointer passed to nfsd_cache_update()
        NFSD: Update nfsd_cache_append() to use xdr_stream
        nfsd: fix file memleak on client_opens_release
      bb28378a
    • Linus Torvalds's avatar
      Merge tag '6.7-rc1-smb3-client-fixes' of git://git.samba.org/sfrench/cifs-2.6 · 33b63f15
      Linus Torvalds authored
      Pull smb client fixes from Steve French:
      
       - multichannel fixes (including a lock ordering fix and an important
         refcounting fix)
      
       - spnego fix
      
      * tag '6.7-rc1-smb3-client-fixes' of git://git.samba.org/sfrench/cifs-2.6:
        cifs: fix lock ordering while disabling multichannel
        cifs: fix leak of iface for primary channel
        cifs: fix check of rc in function generate_smb3signingkey
        cifs: spnego: add ';' in HOST_KEY_LEN
      33b63f15
    • Helge Deller's avatar
      prctl: Disable prctl(PR_SET_MDWE) on parisc · 79383813
      Helge Deller authored
      systemd-254 tries to use prctl(PR_SET_MDWE) for it's MemoryDenyWriteExecute
      functionality, but fails on parisc which still needs executable stacks in
      certain combinations of gcc/glibc/kernel.
      
      Disable prctl(PR_SET_MDWE) by returning -EINVAL for now on parisc, until
      userspace has catched up.
      Signed-off-by: default avatarHelge Deller <deller@gmx.de>
      Co-developed-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      Reported-by: default avatarSam James <sam@gentoo.org>
      Closes: https://github.com/systemd/systemd/issues/29775Tested-by: default avatarSam James <sam@gentoo.org>
      Link: https://lore.kernel.org/all/875y2jro9a.fsf@gentoo.org/
      Cc: <stable@vger.kernel.org> # v6.3+
      79383813
    • Linus Torvalds's avatar
      Merge tag 'for-6.7/dm-fixes' of... · 05aa69b0
      Linus Torvalds authored
      Merge tag 'for-6.7/dm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm
      
      Pull device mapper fixes from Mike Snitzer:
      
       - Various fixes for the DM delay target to address regressions
         introduced during the 6.7 merge window
      
       - Fixes to both DM bufio and the verity target for no-sleep mode,
         to address sleeping while atomic issues
      
       - Update DM crypt target in response to the treewide change that
         made MAX_ORDER inclusive
      
      * tag 'for-6.7/dm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm:
        dm-crypt: start allocating with MAX_ORDER
        dm-verity: don't use blocking calls from tasklets
        dm-bufio: fix no-sleep mode
        dm-delay: avoid duplicate logic
        dm-delay: fix bugs introduced by kthread mode
        dm-delay: fix a race between delay_presuspend and delay_bio
      05aa69b0
    • Helge Deller's avatar
      parisc/power: Fix power soft-off when running on qemu · 6ad6e15a
      Helge Deller authored
      Firmware returns the physical address of the power switch,
      so need to use gsc_writel() instead of direct memory access.
      
      Fixes: d0c21947 ("parisc/power: Add power soft-off when running on qemu")
      Signed-off-by: default avatarHelge Deller <deller@gmx.de>
      Cc: stable@vger.kernel.org # v6.0+
      6ad6e15a
    • Kees Cook's avatar
      parisc: Replace strlcpy() with strscpy() · 721d28f3
      Kees Cook authored
      strlcpy() reads the entire source buffer first. This read may exceed
      the destination size limit. This is both inefficient and can lead
      to linear read overflows if a source string is not NUL-terminated[1].
      Additionally, it returns the size of the source string, not the
      resulting size of the destination string. In an effort to remove strlcpy()
      completely[2], replace strlcpy() here with strscpy().
      
      Link: https://www.kernel.org/doc/html/latest/process/deprecated.html#strlcpy [1]
      Link: https://github.com/KSPP/linux/issues/89 [2]
      Cc: "James E.J. Bottomley" <James.Bottomley@HansenPartnership.com>
      Cc: Helge Deller <deller@gmx.de>
      Cc: Azeem Shaikh <azeemshaikh38@gmail.com>
      Cc: linux-parisc@vger.kernel.org
      Signed-off-by: default avatarKees Cook <keescook@chromium.org>
      Signed-off-by: default avatarHelge Deller <deller@gmx.de>
      721d28f3
    • Linus Torvalds's avatar
      Merge tag 'i2c-for-6.7-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux · 23dfa043
      Linus Torvalds authored
      Pull i2c fixes from Wolfram Sang:
       "Revert a not-working conversion to generic recovery for PXA,
        use proper IO accessors for designware, and use proper PM level
        for ocores to allow accessing interrupt providers late"
      
      * tag 'i2c-for-6.7-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux:
        i2c: ocores: Move system PM hooks to the NOIRQ phase
        i2c: designware: Fix corrupted memory seen in the ISR
        Revert "i2c: pxa: move to generic GPIO recovery"
      23dfa043
    • Linus Torvalds's avatar
      Merge tag 'turbostat-2023.11.07' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux · 9ea991a5
      Linus Torvalds authored
      Pull turbostat updates from Len Brown:
      
       - Turbostat features are now table-driven (Rui Zhang)
      
       - Add support for some new platforms (Sumeet Pawnikar, Rui Zhang)
      
       - Gracefully run in configs when CPUs are limited (Rui Zhang, Srinivas
         Pandruvada)
      
       - misc minor fixes
      
      [ This came in during the merge window, but sorting out the signed tag
        took a while, so thus the late merge   - Linus ]
      
      * tag 'turbostat-2023.11.07' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux: (86 commits)
        tools/power turbostat: version 2023.11.07
        tools/power/turbostat: bugfix "--show IPC"
        tools/power/turbostat: Add initial support for LunarLake
        tools/power/turbostat: Add initial support for ArrowLake
        tools/power/turbostat: Add initial support for GrandRidge
        tools/power/turbostat: Add initial support for SierraForest
        tools/power/turbostat: Add initial support for GraniteRapids
        tools/power/turbostat: Add MSR_CORE_C1_RES support for spr_features
        tools/power/turbostat: Move process to root cgroup
        tools/power/turbostat: Handle cgroup v2 cpu limitation
        tools/power/turbostat: Abstrct function for parsing cpu string
        tools/power/turbostat: Handle offlined CPUs in cpu_subset
        tools/power/turbostat: Obey allowed CPUs for system summary
        tools/power/turbostat: Obey allowed CPUs for primary thread/core detection
        tools/power/turbostat: Abstract several functions
        tools/power/turbostat: Obey allowed CPUs during startup
        tools/power/turbostat: Obey allowed CPUs when accessing CPU counters
        tools/power/turbostat: Introduce cpu_allowed_set
        tools/power/turbostat: Remove PC7/PC9 support on ADL/RPL
        tools/power/turbostat: Enable MSR_CORE_C1_RES on recent Intel client platforms
        ...
      9ea991a5
  5. 17 Nov, 2023 6 commits
    • Linus Torvalds's avatar
      Merge tag 'bcachefs-2023-11-17' of https://evilpiepirate.org/git/bcachefs · 791c8ab0
      Linus Torvalds authored
      Pull bcachefs fixes from Kent Overstreet:
       "Lots of small fixes for minor nits and compiler warnings.
      
        Bigger items:
      
         - The six locks lost wakeup is finally fixed: six_read_trylock() was
           checking for the waiting bit before decrementing the number of
           readers - validated the fix with a torture test.
      
         - Fix for a memory reclaim issue: when needing to reallocate a key
           cache key, we now do our usual GFP_NOWAIT; unlock(); GFP_KERNEL
           dance.
      
         - Multiple deleted inodes btree fixes
      
         - Fix an issue in fsck, where i_nlink would be recalculated
           incorrectly for hardlinked files if a snapshot had ever been taken.
      
         - Kill journal pre-reservations: This is a bigger patch than I would
           normally send at this point, but it deletes code and it fixes some
           of our tests that would sporadically die with the journal getting
           stuck, and it's a performance improvement, too"
      
      * tag 'bcachefs-2023-11-17' of https://evilpiepirate.org/git/bcachefs: (22 commits)
        bcachefs: Fix missing locking for dentry->d_parent access
        bcachefs: six locks: Fix lost wakeup
        bcachefs: Fix no_data_io mode checksum check
        bcachefs: Fix bch2_check_nlinks() for snapshots
        bcachefs: Don't decrease BTREE_ITER_MAX when LOCKDEP=y
        bcachefs: Disable debug log statements
        bcachefs: Fix missing transaction commit
        bcachefs: Fix error path in bch2_mount()
        bcachefs: Fix potential sleeping during mount
        bcachefs: Fix iterator leak in may_delete_deleted_inode()
        bcachefs: Kill journal pre-reservations
        bcachefs: Check for nonce offset inconsistency in data_update path
        bcachefs: Make sure to drop/retake btree locks before reclaim
        bcachefs: btree_trans->write_locked
        bcachefs: Run btree key cache shrinker less aggressively
        bcachefs: Split out btree_key_cache_types.h
        bcachefs: Guard against insufficient devices to create stripes
        bcachefs: Fix null ptr deref in bch2_backpointer_get_node()
        bcachefs: Fix multiple -Warray-bounds warnings
        bcachefs: Use DECLARE_FLEX_ARRAY() helper and fix multiple -Warray-bounds warnings
        ...
      791c8ab0
    • Linus Torvalds's avatar
      Merge tag 'mm-hotfixes-stable-2023-11-17-14-04' of... · 12ee72fe
      Linus Torvalds authored
      Merge tag 'mm-hotfixes-stable-2023-11-17-14-04' of git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm
      
      Pull misc fixes from Andrew Morton:
       "Thirteen hotfixes. Seven are cc:stable and the remainder pertain to
        post-6.6 issues or aren't considered suitable for backporting"
      
      * tag 'mm-hotfixes-stable-2023-11-17-14-04' of git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm:
        mm: more ptep_get() conversion
        parisc: fix mmap_base calculation when stack grows upwards
        mm/damon/core.c: avoid unintentional filtering out of schemes
        mm: kmem: drop __GFP_NOFAIL when allocating objcg vectors
        mm/damon/sysfs-schemes: handle tried region directory allocation failure
        mm/damon/sysfs-schemes: handle tried regions sysfs directory allocation failure
        mm/damon/sysfs: check error from damon_sysfs_update_target()
        mm: fix for negative counter: nr_file_hugepages
        selftests/mm: add hugetlb_fault_after_madv to .gitignore
        selftests/mm: restore number of hugepages
        selftests: mm: fix some build warnings
        selftests: mm: skip whole test instead of failure
        mm/damon/sysfs: eliminate potential uninitialized variable warning
      12ee72fe
    • Linus Torvalds's avatar
      Merge tag 'block-6.7-2023-11-17' of git://git.kernel.dk/linux · ffd75bc7
      Linus Torvalds authored
      Pull block fix from Jens Axboe:
       "Just a single fix from Christoph/Ming, fixing a case where integrity
        IO could be called without having an appropriate queue reference"
      
      * tag 'block-6.7-2023-11-17' of git://git.kernel.dk/linux:
        blk-mq: make sure active queue usage is held for bio_integrity_prep()
      ffd75bc7
    • Linus Torvalds's avatar
      Merge tag 'io_uring-6.7-2023-11-17' of git://git.kernel.dk/linux · 0e413c2a
      Linus Torvalds authored
      Pull io_uring fix from Jens Axboe:
       "Just a single fixup for a change we made in this release, which caused
        a regression in sometimes missing fdinfo output if the SQPOLL thread
        had the lock held when fdinfo output was retrieved.
      
        This brings us back on par with what we had before, where just the
        main uring_lock will prevent that output. We'd love to get rid of that
        too, but that is beyond the scope of this release and will have to
        wait for 6.8"
      
      * tag 'io_uring-6.7-2023-11-17' of git://git.kernel.dk/linux:
        io_uring/fdinfo: remove need for sqpoll lock for thread/pid retrieval
      0e413c2a
    • Linus Torvalds's avatar
      Merge tag 'drm-fixes-2023-11-17' of git://anongit.freedesktop.org/drm/drm · e63fe2d3
      Linus Torvalds authored
      Pull drm fixes from Daniel Vetter:
       "This is a 'blast from the bast' fixes pull, because it contains a
        bunch of AGP fixes for amdgpu. Otherwise nothing out of the ordinary.
      
        Next week is back to Dave unless he's knocked out by some conference
        bug.
      
         - amdgpu: fixes all over, including a set of AGP fixes
      
         - nouvea: GSP + other bugfixes
      
         - ivpu build fix
      
         - lenovo legion go panel orientation quirk"
      
      * tag 'drm-fixes-2023-11-17' of git://anongit.freedesktop.org/drm/drm: (30 commits)
        drm/amdgpu/gmc9: disable AGP aperture
        drm/amdgpu/gmc10: disable AGP aperture
        drm/amdgpu/gmc11: disable AGP aperture
        drm/amdgpu: add a module parameter to control the AGP aperture
        drm/amdgpu/gmc11: fix logic typo in AGP check
        drm/amd/display: Fix encoder disable logic
        drm/amd/display: Change the DMCUB mailbox memory location from FB to inbox
        drm/amdgpu: add and populate the port num into xgmi topology info
        drm/amd/display: Negate IPS allow and commit bits
        drm/amd/pm: Don't send unload message for reset
        drm/amdgpu: fix ras err_data null pointer issue in amdgpu_ras.c
        drm/amd/display: Clear dpcd_sink_ext_caps if not set
        drm/amd/display: Enable fast plane updates on DCN3.2 and above
        drm/amd/display: fix NULL dereference
        drm/amd/display: fix a NULL pointer dereference in amdgpu_dm_i2c_xfer()
        drm/amd/display: Add null checks for 8K60 lightup
        drm/amd/pm: Fill pcie error counters for gpu v1_4
        drm/amd/pm: Update metric table for smu v13_0_6
        drm/amdgpu: correct chunk_ptr to a pointer to chunk.
        drm/amd/display: Fix DSC not Enabled on Direct MST Sink
        ...
      e63fe2d3
    • Chuck Lever's avatar
      NFSD: Fix checksum mismatches in the duplicate reply cache · bf51c52a
      Chuck Lever authored
      nfsd_cache_csum() currently assumes that the server's RPC layer has
      been advancing rq_arg.head[0].iov_base as it decodes an incoming
      request, because that's the way it used to work. On entry, it
      expects that buf->head[0].iov_base points to the start of the NFS
      header, and excludes the already-decoded RPC header.
      
      These days however, head[0].iov_base now points to the start of the
      RPC header during all processing. It no longer points at the NFS
      Call header when execution arrives at nfsd_cache_csum().
      
      In a retransmitted RPC the XID and the NFS header are supposed to
      be the same as the original message, but the contents of the
      retransmitted RPC header can be different. For example, for krb5,
      the GSS sequence number will be different between the two. Thus if
      the RPC header is always included in the DRC checksum computation,
      the checksum of the retransmitted message might not match the
      checksum of the original message, even though the NFS part of these
      messages is identical.
      
      The result is that, even if a matching XID is found in the DRC,
      the checksum mismatch causes the server to execute the
      retransmitted RPC transaction again.
      Reviewed-by: default avatarJeff Layton <jlayton@kernel.org>
      Tested-by: default avatarJeff Layton <jlayton@kernel.org>
      Signed-off-by: default avatarChuck Lever <chuck.lever@oracle.com>
      bf51c52a