initial commit
imported from https://salsa.debian.org/kernel-team/linux.git commit 9d5cc9d9d6501d7f1dd7e194d4b245bd0b6c6a22 version 6.11.4-1
This commit is contained in:
49
debian/patches/bugfix/all/cpupower-fix-checks-for-cpu-existence.patch
vendored
Normal file
49
debian/patches/bugfix/all/cpupower-fix-checks-for-cpu-existence.patch
vendored
Normal file
@@ -0,0 +1,49 @@
|
||||
From: Ben Hutchings <ben@decadent.org.uk>
|
||||
Date: Thu, 03 Nov 2016 15:25:26 -0600
|
||||
Subject: cpupower: Fix checks for CPU existence
|
||||
Forwarded: https://lore.kernel.org/all/20170418023118.GD4152@decadent.org.uk/
|
||||
|
||||
Calls to cpufreq_cpu_exists(cpu) were converted to
|
||||
cpupower_is_cpu_online(cpu) when libcpupower was introduced and the
|
||||
former function was deleted. However, cpupower_is_cpu_online() does
|
||||
not distinguish physically absent and offline CPUs, and does not set
|
||||
errno.
|
||||
|
||||
cpufreq-set has already been fixed (commit c25badc9ceb6).
|
||||
|
||||
In cpufreq-bench, which prints an error message for offline CPUs,
|
||||
properly distinguish and report the zero and negative cases.
|
||||
|
||||
Fixes: ac5a181d065d ("cpupower: Add cpuidle parts into library")
|
||||
Fixes: 53d1cd6b125f ("cpupowerutils: bench - Fix cpu online check")
|
||||
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
|
||||
[carnil: Update/Refresh patch for 4.14.17: The issue with the
|
||||
incorrect check has been fixed with upstream commit 53d1cd6b125f.
|
||||
Keep in the patch the distinction and report for the zero and
|
||||
negative cases.]
|
||||
---
|
||||
--- a/tools/power/cpupower/bench/system.c
|
||||
+++ b/tools/power/cpupower/bench/system.c
|
||||
@@ -58,12 +58,19 @@ long long int get_time()
|
||||
|
||||
int set_cpufreq_governor(char *governor, unsigned int cpu)
|
||||
{
|
||||
+ int rc;
|
||||
|
||||
dprintf("set %s as cpufreq governor\n", governor);
|
||||
|
||||
- if (cpupower_is_cpu_online(cpu) != 1) {
|
||||
- perror("cpufreq_cpu_exists");
|
||||
- fprintf(stderr, "error: cpu %u does not exist\n", cpu);
|
||||
+ rc = cpupower_is_cpu_online(cpu);
|
||||
+ if (rc != 1) {
|
||||
+ if (rc < 0)
|
||||
+ fprintf(stderr, "cpupower_is_cpu_online: %s\n",
|
||||
+ strerror(-rc));
|
||||
+ else
|
||||
+ fprintf(stderr,
|
||||
+ "error: cpu %u is offline or does not exist\n",
|
||||
+ cpu);
|
||||
return -1;
|
||||
}
|
||||
|
91
debian/patches/bugfix/all/disable-some-marvell-phys.patch
vendored
Normal file
91
debian/patches/bugfix/all/disable-some-marvell-phys.patch
vendored
Normal file
@@ -0,0 +1,91 @@
|
||||
From: Ian Campbell <ijc@hellion.org.uk>
|
||||
Subject: phy/marvell: disable 4-port phys
|
||||
Date: Wed, 20 Nov 2013 08:30:14 +0000
|
||||
Bug-Debian: https://bugs.debian.org/723177
|
||||
Forwarded: https://lore.kernel.org/netdev/1386932764.20787.85.camel@dagon.hellion.org.uk/
|
||||
|
||||
The Marvell PHY was originally disabled because it can cause networking
|
||||
failures on some systems. According to Lennert Buytenhek this is because some
|
||||
of the variants added did not share the same register layout. Since the known
|
||||
cases are all 4-ports disable those variants (indicated by a 4 in the
|
||||
penultimate position of the model name) until they can be audited for
|
||||
correctness.
|
||||
|
||||
[bwh: Also #if-out the init functions for these PHYs to avoid
|
||||
compiler warnings]
|
||||
|
||||
--- a/drivers/net/phy/marvell.c
|
||||
+++ b/drivers/net/phy/marvell.c
|
||||
@@ -1366,6 +1366,7 @@ static int m88e1118_config_init(struct p
|
||||
return genphy_soft_reset(phydev);
|
||||
}
|
||||
|
||||
+#if 0
|
||||
static int m88e1149_config_init(struct phy_device *phydev)
|
||||
{
|
||||
int err;
|
||||
@@ -1391,7 +1392,9 @@ static int m88e1149_config_init(struct p
|
||||
|
||||
return genphy_soft_reset(phydev);
|
||||
}
|
||||
+#endif
|
||||
|
||||
+#if 0
|
||||
static int m88e1145_config_init_rgmii(struct phy_device *phydev)
|
||||
{
|
||||
int err;
|
||||
@@ -1469,6 +1472,7 @@ static int m88e1145_config_init(struct p
|
||||
|
||||
return 0;
|
||||
}
|
||||
+#endif
|
||||
|
||||
static int m88e1540_get_fld(struct phy_device *phydev, u8 *msecs)
|
||||
{
|
||||
@@ -3790,6 +3794,7 @@ static struct phy_driver marvell_drivers
|
||||
.led_hw_control_set = m88e1318_led_hw_control_set,
|
||||
.led_hw_control_get = m88e1318_led_hw_control_get,
|
||||
},
|
||||
+#if 0
|
||||
{
|
||||
.phy_id = MARVELL_PHY_ID_88E1145,
|
||||
.phy_id_mask = MARVELL_PHY_ID_MASK,
|
||||
@@ -3813,6 +3818,8 @@ static struct phy_driver marvell_drivers
|
||||
.cable_test_start = m88e1111_vct_cable_test_start,
|
||||
.cable_test_get_status = m88e1111_vct_cable_test_get_status,
|
||||
},
|
||||
+#endif
|
||||
+#if 0
|
||||
{
|
||||
.phy_id = MARVELL_PHY_ID_88E1149R,
|
||||
.phy_id_mask = MARVELL_PHY_ID_MASK,
|
||||
@@ -3831,6 +3838,8 @@ static struct phy_driver marvell_drivers
|
||||
.get_strings = marvell_get_strings,
|
||||
.get_stats = marvell_get_stats,
|
||||
},
|
||||
+#endif
|
||||
+#if 0
|
||||
{
|
||||
.phy_id = MARVELL_PHY_ID_88E1240,
|
||||
.phy_id_mask = MARVELL_PHY_ID_MASK,
|
||||
@@ -3851,6 +3860,7 @@ static struct phy_driver marvell_drivers
|
||||
.get_tunable = m88e1011_get_tunable,
|
||||
.set_tunable = m88e1011_set_tunable,
|
||||
},
|
||||
+#endif
|
||||
{
|
||||
.phy_id = MARVELL_PHY_ID_88E1116R,
|
||||
.phy_id_mask = MARVELL_PHY_ID_MASK,
|
||||
@@ -4139,9 +4149,9 @@ static struct mdio_device_id __maybe_unu
|
||||
{ MARVELL_PHY_ID_88E1111_FINISAR, MARVELL_PHY_ID_MASK },
|
||||
{ MARVELL_PHY_ID_88E1118, MARVELL_PHY_ID_MASK },
|
||||
{ MARVELL_PHY_ID_88E1121R, MARVELL_PHY_ID_MASK },
|
||||
- { MARVELL_PHY_ID_88E1145, MARVELL_PHY_ID_MASK },
|
||||
- { MARVELL_PHY_ID_88E1149R, MARVELL_PHY_ID_MASK },
|
||||
- { MARVELL_PHY_ID_88E1240, MARVELL_PHY_ID_MASK },
|
||||
+/* { MARVELL_PHY_ID_88E1145, MARVELL_PHY_ID_MASK }, */
|
||||
+/* { MARVELL_PHY_ID_88E1149R, MARVELL_PHY_ID_MASK }, */
|
||||
+/* { MARVELL_PHY_ID_88E1240, MARVELL_PHY_ID_MASK }, */
|
||||
{ MARVELL_PHY_ID_88E1318S, MARVELL_PHY_ID_MASK },
|
||||
{ MARVELL_PHY_ID_88E1116R, MARVELL_PHY_ID_MASK },
|
||||
{ MARVELL_PHY_ID_88E1510, MARVELL_PHY_ID_MASK },
|
32
debian/patches/bugfix/all/documentation-use-relative-source-paths-in-abi-documentation.patch
vendored
Normal file
32
debian/patches/bugfix/all/documentation-use-relative-source-paths-in-abi-documentation.patch
vendored
Normal file
@@ -0,0 +1,32 @@
|
||||
From: Ben Hutchings <benh@debian.org>
|
||||
Date: Mon, 16 Sep 2024 00:07:04 +0200
|
||||
Subject: Documentation: Use relative source filenames in ABI documentation
|
||||
|
||||
Currently the ABI documentation files contain absolute source
|
||||
filenames, which makes them unreproducible if the build directory can
|
||||
vary.
|
||||
|
||||
Remove the source base directory ($srctree) from the source filenames
|
||||
shown in the documentation.
|
||||
|
||||
Signed-off-by: Ben Hutchings <benh@debian.org>
|
||||
---
|
||||
--- a/Documentation/sphinx/kernel_abi.py
|
||||
+++ b/Documentation/sphinx/kernel_abi.py
|
||||
@@ -103,6 +103,7 @@ class KernelCmd(Directive):
|
||||
lines = code_block + "\n\n"
|
||||
|
||||
line_regex = re.compile(r"^\.\. LINENO (\S+)\#([0-9]+)$")
|
||||
+ srctree = os.path.abspath(os.environ["srctree"])
|
||||
ln = 0
|
||||
n = 0
|
||||
f = fname
|
||||
@@ -127,7 +128,7 @@ class KernelCmd(Directive):
|
||||
# sphinx counts lines from 0
|
||||
ln = int(match.group(2)) - 1
|
||||
else:
|
||||
- content.append(line, f, ln)
|
||||
+ content.append(line, os.path.relpath(f, srctree), ln)
|
||||
|
||||
kernellog.info(self.state.document.settings.env.app, "%s: parsed %i lines" % (fname, n))
|
||||
|
60
debian/patches/bugfix/all/fs-add-module_softdep-declarations-for-hard-coded-cr.patch
vendored
Normal file
60
debian/patches/bugfix/all/fs-add-module_softdep-declarations-for-hard-coded-cr.patch
vendored
Normal file
@@ -0,0 +1,60 @@
|
||||
From: Ben Hutchings <ben@decadent.org.uk>
|
||||
Date: Wed, 13 Apr 2016 21:48:06 +0100
|
||||
Subject: fs: Add MODULE_SOFTDEP declarations for hard-coded crypto drivers
|
||||
Bug-Debian: https://bugs.debian.org/819725
|
||||
Forwarded: https://lore.kernel.org/all/20160517133631.GF7555@decadent.org.uk/
|
||||
|
||||
This helps initramfs builders and other tools to find the full
|
||||
dependencies of a module.
|
||||
|
||||
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
|
||||
[Lukas Wunner: Forward-ported to 4.11: drop parts applied upstream]
|
||||
---
|
||||
fs/btrfs/super.c | 2 +-
|
||||
fs/ext4/super.c | 2 +-
|
||||
fs/jbd2/journal.c | 1 +
|
||||
fs/nfsd/nfsctl.c | 3 +++
|
||||
4 files changed, 6 insertions(+), 2 deletions(-)
|
||||
|
||||
--- a/fs/btrfs/super.c
|
||||
+++ b/fs/btrfs/super.c
|
||||
@@ -2619,7 +2619,7 @@ module_exit(exit_btrfs_fs)
|
||||
|
||||
MODULE_DESCRIPTION("B-Tree File System (BTRFS)");
|
||||
MODULE_LICENSE("GPL");
|
||||
-MODULE_SOFTDEP("pre: crc32c");
|
||||
+MODULE_SOFTDEP("pre: crypto-crc32c");
|
||||
MODULE_SOFTDEP("pre: xxhash64");
|
||||
MODULE_SOFTDEP("pre: sha256");
|
||||
MODULE_SOFTDEP("pre: blake2b-256");
|
||||
--- a/fs/ext4/super.c
|
||||
+++ b/fs/ext4/super.c
|
||||
@@ -7404,6 +7404,6 @@ static void __exit ext4_exit_fs(void)
|
||||
MODULE_AUTHOR("Remy Card, Stephen Tweedie, Andrew Morton, Andreas Dilger, Theodore Ts'o and others");
|
||||
MODULE_DESCRIPTION("Fourth Extended Filesystem");
|
||||
MODULE_LICENSE("GPL");
|
||||
-MODULE_SOFTDEP("pre: crc32c");
|
||||
+MODULE_SOFTDEP("pre: crypto-crc32c");
|
||||
module_init(ext4_init_fs)
|
||||
module_exit(ext4_exit_fs)
|
||||
--- a/fs/jbd2/journal.c
|
||||
+++ b/fs/jbd2/journal.c
|
||||
@@ -3194,6 +3194,7 @@ static void __exit journal_exit(void)
|
||||
|
||||
MODULE_DESCRIPTION("Generic filesystem journal-writing module");
|
||||
MODULE_LICENSE("GPL");
|
||||
+MODULE_SOFTDEP("pre: crypto-crc32c");
|
||||
module_init(journal_init);
|
||||
module_exit(journal_exit);
|
||||
|
||||
--- a/fs/nfsd/nfsctl.c
|
||||
+++ b/fs/nfsd/nfsctl.c
|
||||
@@ -2353,5 +2353,8 @@ static void __exit exit_nfsd(void)
|
||||
MODULE_AUTHOR("Olaf Kirch <okir@monad.swb.de>");
|
||||
MODULE_DESCRIPTION("In-kernel NFS server");
|
||||
MODULE_LICENSE("GPL");
|
||||
+#ifdef CONFIG_NFSD_V4
|
||||
+MODULE_SOFTDEP("pre: crypto-md5");
|
||||
+#endif
|
||||
module_init(init_nfsd)
|
||||
module_exit(exit_nfsd)
|
45
debian/patches/bugfix/all/kbuild-bpf-fix-btf-reproducibility.patch
vendored
Normal file
45
debian/patches/bugfix/all/kbuild-bpf-fix-btf-reproducibility.patch
vendored
Normal file
@@ -0,0 +1,45 @@
|
||||
From: Ben Hutchings <benh@debian.org>
|
||||
Date: Mon, 16 Sep 2024 01:54:24 +0200
|
||||
Subject: kbuild, bpf: Fix BTF reproducibility
|
||||
|
||||
pahole 1.22 introduced the -j option for parallel processing, and
|
||||
kbuild uses it, but this makes its output unreproducible.
|
||||
|
||||
pahole 1.27 introduced --btf_features=+reproducible_build which makes
|
||||
the output reproducible even when -j is used.
|
||||
|
||||
Assume that if KBUILD_BUILD_TIMESTAMP is set then a reproducible build
|
||||
is required, and use both options if available or neither if not.
|
||||
|
||||
Signed-off-by: Ben Hutchings <benh@debian.org>
|
||||
---
|
||||
--- a/scripts/Makefile.btf
|
||||
+++ b/scripts/Makefile.btf
|
||||
@@ -12,8 +12,6 @@ endif
|
||||
|
||||
pahole-flags-$(call test-ge, $(pahole-ver), 121) += --btf_gen_floats
|
||||
|
||||
-pahole-flags-$(call test-ge, $(pahole-ver), 122) += -j
|
||||
-
|
||||
pahole-flags-$(call test-ge, $(pahole-ver), 125) += --skip_encoding_btf_inconsistent_proto --btf_gen_optimized
|
||||
|
||||
else
|
||||
@@ -27,6 +25,18 @@ endif
|
||||
|
||||
endif
|
||||
|
||||
+# pahole 1.22 introduced the -j option for parallel processing, but
|
||||
+# this makes its output unreproducible.
|
||||
+# pahole 1.27 introduced --btf_features=+reproducible_build which
|
||||
+# makes the output reproducible even when -j is used.
|
||||
+# Assume that if KBUILD_BUILD_TIMESTAMP is set then a reproducible
|
||||
+# build is required and we must not use -j alone.
|
||||
+ifeq ($(KBUILD_BUILD_TIMESTAMP),)
|
||||
+pahole-flags-$(call test-ge, $(pahole-ver), 122) += -j
|
||||
+else
|
||||
+pahole-flags-$(call test-ge, $(pahole-ver), 127) += -j --btf_features=+reproducible_build
|
||||
+endif
|
||||
+
|
||||
pahole-flags-$(CONFIG_PAHOLE_HAS_LANG_EXCLUDE) += --lang_exclude=rust
|
||||
|
||||
export PAHOLE_FLAGS := $(pahole-flags-y)
|
23
debian/patches/bugfix/all/kbuild-fix-recordmcount-dependency.patch
vendored
Normal file
23
debian/patches/bugfix/all/kbuild-fix-recordmcount-dependency.patch
vendored
Normal file
@@ -0,0 +1,23 @@
|
||||
From: Ben Hutchings <ben@decadent.org.uk>
|
||||
Subject: kbuild: Fix recordmcount dependency for OOT modules
|
||||
Date: Mon, 08 Sep 2014 18:31:24 +0100
|
||||
Forwarded: no
|
||||
|
||||
We never rebuild anything in-tree when building an out-of-tree
|
||||
modules, so external modules should not depend on the recordmcount
|
||||
sources.
|
||||
|
||||
--- a/scripts/Makefile.build
|
||||
+++ b/scripts/Makefile.build
|
||||
@@ -210,6 +210,11 @@ cmd_record_mcount = $(if $(findstring $(
|
||||
$(sub_cmd_record_mcount))
|
||||
endif # CONFIG_FTRACE_MCOUNT_USE_RECORDMCOUNT
|
||||
|
||||
+# Don't require recordmcount source for an OOT build.
|
||||
+ifdef KBUILD_EXTMOD
|
||||
+recordmcount_source :=
|
||||
+endif
|
||||
+
|
||||
# 'OBJECT_FILES_NON_STANDARD := y': skip objtool checking for a directory
|
||||
# 'OBJECT_FILES_NON_STANDARD_foo.o := 'y': skip objtool checking for a file
|
||||
# 'OBJECT_FILES_NON_STANDARD_foo.o := 'n': override directory skip for a file
|
18
debian/patches/bugfix/all/libapi-define-_fortify_source-as-2-not-empty.patch
vendored
Normal file
18
debian/patches/bugfix/all/libapi-define-_fortify_source-as-2-not-empty.patch
vendored
Normal file
@@ -0,0 +1,18 @@
|
||||
From: Ben Hutchings <benh@debian.org>
|
||||
Date: Sat, 15 Jan 2022 22:30:49 +0100
|
||||
Subject: libapi: Define _FORTIFY_SOURCE as 2, not empty
|
||||
Forwarded: https://lore.kernel.org/lkml/20230424102049.58338-1-ukleinek@debian.org/
|
||||
|
||||
Signed-off-by: Ben Hutchings <benh@debian.org>
|
||||
---
|
||||
--- a/tools/lib/api/Makefile
|
||||
+++ b/tools/lib/api/Makefile
|
||||
@@ -29,7 +29,7 @@ endif
|
||||
endif
|
||||
|
||||
ifeq ($(DEBUG),0)
|
||||
- CFLAGS += -D_FORTIFY_SOURCE
|
||||
+ CFLAGS += -D_FORTIFY_SOURCE=2
|
||||
endif
|
||||
|
||||
# Treat warnings as errors unless directed not to
|
23
debian/patches/bugfix/all/module-disable-matching-missing-version-crc.patch
vendored
Normal file
23
debian/patches/bugfix/all/module-disable-matching-missing-version-crc.patch
vendored
Normal file
@@ -0,0 +1,23 @@
|
||||
From: Ben Hutchings <ben@decadent.org.uk>
|
||||
Date: Fri, 02 Dec 2016 23:06:18 +0000
|
||||
Subject: module: Disable matching missing version CRC
|
||||
Forwarded: not-needed
|
||||
|
||||
This partly reverts commit cd3caefb4663e3811d37cc2afad3cce642d60061.
|
||||
We want to fail closed if a symbol version CRC is missing, as the
|
||||
alternative may allow subverting module signing.
|
||||
---
|
||||
--- a/kernel/module/version.c
|
||||
+++ b/kernel/module/version.c
|
||||
@@ -46,9 +46,8 @@ int check_version(const struct load_info
|
||||
goto bad_version;
|
||||
}
|
||||
|
||||
- /* Broken toolchain. Warn once, then let it go.. */
|
||||
- pr_warn_once("%s: no symbol version for %s\n", info->name, symname);
|
||||
- return 1;
|
||||
+ pr_warn("%s: no symbol version for %s\n", info->name, symname);
|
||||
+ return 0;
|
||||
|
||||
bad_version:
|
||||
pr_warn("%s: disagrees about version of symbol %s\n", info->name, symname);
|
27
debian/patches/bugfix/all/perf-tools-pass-extra_cflags-through-to-libbpf-build-again.patch
vendored
Normal file
27
debian/patches/bugfix/all/perf-tools-pass-extra_cflags-through-to-libbpf-build-again.patch
vendored
Normal file
@@ -0,0 +1,27 @@
|
||||
From: Ben Hutchings <benh@debian.org>
|
||||
Date: Fri, 16 Aug 2024 15:58:04 +0200
|
||||
Subject: perf tools: Pass EXTRA_CFLAGS through to libbpf build again
|
||||
|
||||
When perf was statically linked to libbpf, any definition of
|
||||
EXTRA_CFLAGS passed to Makefile.perf propagated to the sub-make of
|
||||
libbpf. Since commit 9dabf4003423 ("perf python: Switch module to
|
||||
linking libraries from building source"), EXTRA_CFLAGS is overridden
|
||||
to "-fPIC" for the sub-make.
|
||||
|
||||
Change to include any user-provided EXTRA_CFLAGS before the "-fPIC"
|
||||
option.
|
||||
|
||||
Fixes: 9dabf4003423 ("perf python: Switch module to linking libraries ...")
|
||||
Signed-off-by: Ben Hutchings <benh@debian.org>
|
||||
---
|
||||
--- a/tools/perf/Makefile.perf
|
||||
+++ b/tools/perf/Makefile.perf
|
||||
@@ -951,7 +951,7 @@ $(LIBAPI)-clean:
|
||||
$(LIBBPF): FORCE | $(LIBBPF_OUTPUT)
|
||||
$(Q)$(MAKE) -C $(LIBBPF_DIR) FEATURES_DUMP=$(FEATURE_DUMP_EXPORT) \
|
||||
O= OUTPUT=$(LIBBPF_OUTPUT)/ DESTDIR=$(LIBBPF_DESTDIR) prefix= subdir= \
|
||||
- EXTRA_CFLAGS="-fPIC" $@ install_headers
|
||||
+ EXTRA_CFLAGS="$(EXTRA_CFLAGS) -fPIC" $@ install_headers
|
||||
|
||||
$(LIBBPF)-clean:
|
||||
$(call QUIET_CLEAN, libbpf)
|
30
debian/patches/bugfix/all/perf-tools-support-extra-cxxflags.patch
vendored
Normal file
30
debian/patches/bugfix/all/perf-tools-support-extra-cxxflags.patch
vendored
Normal file
@@ -0,0 +1,30 @@
|
||||
From: Ben Hutchings <benh@debian.org>
|
||||
Date: Mon, 15 May 2023 15:58:39 +0200
|
||||
Subject: perf tools: Support EXTRA_CXXFLAGS
|
||||
|
||||
Add support for an EXTRA_CXXFLAGS variable, used similarly to
|
||||
EXTRA_CFLAGS.
|
||||
|
||||
Signed-off-by: Ben Hutchings <benh@debian.org>
|
||||
---
|
||||
--- a/tools/perf/Makefile.config
|
||||
+++ b/tools/perf/Makefile.config
|
||||
@@ -18,6 +18,7 @@ detected_var = $(shell echo "$(1)=$($(1)
|
||||
|
||||
CFLAGS := $(EXTRA_CFLAGS) $(filter-out -Wnested-externs,$(EXTRA_WARNINGS))
|
||||
HOSTCFLAGS := $(filter-out -Wnested-externs,$(EXTRA_WARNINGS))
|
||||
+CXXFLAGS := $(EXTRA_CXXFLAGS)
|
||||
|
||||
# Enabled Wthread-safety analysis for clang builds.
|
||||
ifeq ($(CC_NO_CLANG), 0)
|
||||
--- a/tools/perf/Makefile.perf
|
||||
+++ b/tools/perf/Makefile.perf
|
||||
@@ -33,7 +33,7 @@ include ../scripts/utilities.mak
|
||||
#
|
||||
# Define LDFLAGS=-static to build a static binary.
|
||||
#
|
||||
-# Define EXTRA_CFLAGS=-m64 or EXTRA_CFLAGS=-m32 as appropriate for cross-builds.
|
||||
+# Define EXTRA_CFLAGS=-m64 or EXTRA_CFLAGS=-m32 as appropriate for cross-builds, and similarly EXTRA_CXXFLAGS.
|
||||
#
|
||||
# Define EXCLUDE_EXTLIBS=-lmylib to exclude libmylib from the auto-generated
|
||||
# EXTLIBS.
|
@@ -0,0 +1,88 @@
|
||||
From: Ben Hutchings <ben@decadent.org.uk>
|
||||
Subject: radeon, amdgpu: Firmware is required for DRM and KMS on R600 onward
|
||||
Date: Tue, 08 Jan 2013 03:25:52 +0000
|
||||
Bug-Debian: https://bugs.debian.org/607194
|
||||
Bug-Debian: https://bugs.debian.org/607471
|
||||
Bug-Debian: https://bugs.debian.org/610851
|
||||
Bug-Debian: https://bugs.debian.org/627497
|
||||
Bug-Debian: https://bugs.debian.org/632212
|
||||
Bug-Debian: https://bugs.debian.org/637943
|
||||
Bug-Debian: https://bugs.debian.org/649448
|
||||
Bug-Debian: https://bugs.debian.org/697229
|
||||
Bug-Debian: https://bugs.debian.org/1053764
|
||||
Forwarded: no
|
||||
Last-Update: 2023-11-08
|
||||
|
||||
radeon requires firmware/microcode for the GPU in all chips, but for
|
||||
newer chips (apparently R600 'Evergreen' onward) it also expects
|
||||
firmware for the memory controller and other sub-blocks.
|
||||
|
||||
radeon attempts to gracefully fall back and disable some features if
|
||||
the firmware is not available, but becomes unstable - the framebuffer
|
||||
and/or system memory may be corrupted, or the display may stay black.
|
||||
|
||||
Therefore, perform a basic check for the existence of
|
||||
/lib/firmware/radeon when a device is probed, and abort if it
|
||||
is missing, except for the pre-R600 case.
|
||||
|
||||
Update 2023-11-08:
|
||||
In bug 1053764 Mario Limonciello <mario.limonciello@amd.com> states
|
||||
that the patch isn't needed anymore for amdgpu, so remove that part
|
||||
of the patch
|
||||
---
|
||||
drivers/gpu/drm/radeon/radeon_drv.c | 30 +++++++++++++++++++++++++
|
||||
1 files changed, 30 insertions(+)
|
||||
|
||||
--- a/drivers/gpu/drm/radeon/radeon_drv.c
|
||||
+++ b/drivers/gpu/drm/radeon/radeon_drv.c
|
||||
@@ -32,6 +32,8 @@
|
||||
|
||||
#include <linux/compat.h>
|
||||
#include <linux/module.h>
|
||||
+#include <linux/namei.h>
|
||||
+#include <linux/path.h>
|
||||
#include <linux/pm_runtime.h>
|
||||
#include <linux/vga_switcheroo.h>
|
||||
#include <linux/mmu_notifier.h>
|
||||
@@ -255,6 +257,28 @@ MODULE_DEVICE_TABLE(pci, pciidlist);
|
||||
|
||||
static const struct drm_driver kms_driver;
|
||||
|
||||
+/* Test that /lib/firmware/radeon is a directory (or symlink to a
|
||||
+ * directory). We could try to match the udev search path, but let's
|
||||
+ * keep it simple.
|
||||
+ */
|
||||
+static bool radeon_firmware_installed(void)
|
||||
+{
|
||||
+#if IS_BUILTIN(CONFIG_DRM_RADEON)
|
||||
+ /* It may be too early to tell. Assume it's there. */
|
||||
+ return true;
|
||||
+#else
|
||||
+ struct path path;
|
||||
+
|
||||
+ if (kern_path("/lib/firmware/radeon", LOOKUP_DIRECTORY | LOOKUP_FOLLOW,
|
||||
+ &path) == 0) {
|
||||
+ path_put(&path);
|
||||
+ return true;
|
||||
+ }
|
||||
+
|
||||
+ return false;
|
||||
+#endif
|
||||
+}
|
||||
+
|
||||
static int radeon_pci_probe(struct pci_dev *pdev,
|
||||
const struct pci_device_id *ent)
|
||||
{
|
||||
@@ -295,6 +319,12 @@ static int radeon_pci_probe(struct pci_d
|
||||
if (vga_switcheroo_client_probe_defer(pdev))
|
||||
return -EPROBE_DEFER;
|
||||
|
||||
+ if ((ent->driver_data & RADEON_FAMILY_MASK) >= CHIP_R600 &&
|
||||
+ !radeon_firmware_installed()) {
|
||||
+ DRM_ERROR("radeon kernel modesetting for R600 or later requires firmware installed\n");
|
||||
+ return -ENODEV;
|
||||
+ }
|
||||
+
|
||||
/* Get rid of things like offb */
|
||||
ret = drm_aperture_remove_conflicting_pci_framebuffers(pdev, &kms_driver);
|
||||
if (ret)
|
21
debian/patches/bugfix/all/revert-tools-build-clean-cflags-and-ldflags-for-fixdep.patch
vendored
Normal file
21
debian/patches/bugfix/all/revert-tools-build-clean-cflags-and-ldflags-for-fixdep.patch
vendored
Normal file
@@ -0,0 +1,21 @@
|
||||
From: Ben Hutchings <benh@debian.org>
|
||||
Date: Mon, 16 Sep 2024 19:14:19 +0200
|
||||
Subject: Revert "tools build: Clean CFLAGS and LDFLAGS for fixdep"
|
||||
|
||||
This reverts commit 5725dd8fa888b4dcdff58241f9d3d3ac42a048e2. That
|
||||
was a workaround for the bug fixed by commit 6b3db6f9b970 "tools
|
||||
build: Make fixdep a hostprog" and is no longer needed.
|
||||
|
||||
Signed-off-by: Ben Hutchings <benh@debian.org>
|
||||
---
|
||||
--- a/tools/build/Makefile.include
|
||||
+++ b/tools/build/Makefile.include
|
||||
@@ -2,7 +2,7 @@
|
||||
build := -f $(srctree)/tools/build/Makefile.build dir=. obj
|
||||
|
||||
fixdep:
|
||||
- $(Q)$(MAKE) -C $(srctree)/tools/build CFLAGS= LDFLAGS= $(OUTPUT)fixdep
|
||||
+ $(Q)$(MAKE) -C $(srctree)/tools/build $(OUTPUT)fixdep
|
||||
|
||||
fixdep-clean:
|
||||
$(Q)$(MAKE) -C $(srctree)/tools/build clean
|
27
debian/patches/bugfix/all/tools-build-remove-bpf-run-time-check-at-build-time.patch
vendored
Normal file
27
debian/patches/bugfix/all/tools-build-remove-bpf-run-time-check-at-build-time.patch
vendored
Normal file
@@ -0,0 +1,27 @@
|
||||
From: Ben Hutchings <ben@decadent.org.uk>
|
||||
Date: Sun, 21 Feb 2016 15:33:15 +0000
|
||||
Subject: tools/build: Remove bpf() run-time check at build time
|
||||
Forwarded: no
|
||||
|
||||
It is not correct to test that a syscall works on the build system's
|
||||
kernel. We might be building on an earlier kernel version or with
|
||||
security restrictions that block bpf().
|
||||
|
||||
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
|
||||
---
|
||||
--- a/tools/build/feature/test-bpf.c
|
||||
+++ b/tools/build/feature/test-bpf.c
|
||||
@@ -35,8 +35,10 @@ int main(void)
|
||||
attr.prog_flags = 0;
|
||||
|
||||
/*
|
||||
- * Test existence of __NR_bpf and BPF_PROG_LOAD.
|
||||
- * This call should fail if we run the testcase.
|
||||
+ * bwh: Don't use the bpf() syscall as we might be building on a
|
||||
+ * much older kernel. Do "use" the attr structure here to avoid
|
||||
+ * a "set but not used" warning.
|
||||
*/
|
||||
- return syscall(__NR_bpf, BPF_PROG_LOAD, &attr, sizeof(attr));
|
||||
+ (void)&attr;
|
||||
+ return 0;
|
||||
}
|
17
debian/patches/bugfix/all/tools-perf-fix-missing-ldflags-for-some-programs.patch
vendored
Normal file
17
debian/patches/bugfix/all/tools-perf-fix-missing-ldflags-for-some-programs.patch
vendored
Normal file
@@ -0,0 +1,17 @@
|
||||
From: Ben Hutchings <benh@debian.org>
|
||||
Date: Sat, 15 Jan 2022 22:59:11 +0100
|
||||
Subject: tools/perf: Fix missing LDFLAGS for some programs
|
||||
|
||||
Signed-off-by: Ben Hutchings <benh@debian.org>
|
||||
---
|
||||
--- a/tools/perf/Makefile.perf
|
||||
+++ b/tools/perf/Makefile.perf
|
||||
@@ -785,7 +785,7 @@ $(OUTPUT)dlfilters/%.o: dlfilters/%.c in
|
||||
.SECONDARY: $(DLFILTERS:.so=.o)
|
||||
|
||||
$(OUTPUT)dlfilters/%.so: $(OUTPUT)dlfilters/%.o
|
||||
- $(QUIET_LINK)$(CC) $(EXTRA_CFLAGS) -shared -o $@ $<
|
||||
+ $(QUIET_LINK)$(CC) $(EXTRA_CFLAGS) $(LDFLAGS) -shared -o $@ $<
|
||||
|
||||
ifndef NO_JVMTI
|
||||
LIBJVMTI_IN := $(OUTPUT)jvmti/jvmti-in.o
|
39
debian/patches/bugfix/all/tools-perf-remove-shebangs.patch
vendored
Normal file
39
debian/patches/bugfix/all/tools-perf-remove-shebangs.patch
vendored
Normal file
@@ -0,0 +1,39 @@
|
||||
From: Ben Hutchings <ben@decadent.org.uk>
|
||||
Date: Fri, 25 Sep 2015 20:09:23 +0100
|
||||
Subject: tools/perf: Remove shebang lines from perf scripts
|
||||
Forwarded: no
|
||||
|
||||
perf scripts need to be invoked through perf, not directly through
|
||||
perl (or other language interpreter). So including shebang lines in
|
||||
them is useless and possibly misleading.
|
||||
|
||||
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
|
||||
---
|
||||
--- a/tools/perf/scripts/perl/rw-by-file.pl
|
||||
+++ b/tools/perf/scripts/perl/rw-by-file.pl
|
||||
@@ -1,4 +1,3 @@
|
||||
-#!/usr/bin/perl -w
|
||||
# SPDX-License-Identifier: GPL-2.0-only
|
||||
# (c) 2009, Tom Zanussi <tzanussi@gmail.com>
|
||||
|
||||
--- a/tools/perf/scripts/perl/rw-by-pid.pl
|
||||
+++ b/tools/perf/scripts/perl/rw-by-pid.pl
|
||||
@@ -1,4 +1,3 @@
|
||||
-#!/usr/bin/perl -w
|
||||
# SPDX-License-Identifier: GPL-2.0-only
|
||||
# (c) 2009, Tom Zanussi <tzanussi@gmail.com>
|
||||
|
||||
--- a/tools/perf/scripts/perl/rwtop.pl
|
||||
+++ b/tools/perf/scripts/perl/rwtop.pl
|
||||
@@ -1,4 +1,3 @@
|
||||
-#!/usr/bin/perl -w
|
||||
# SPDX-License-Identifier: GPL-2.0-only
|
||||
# (c) 2010, Tom Zanussi <tzanussi@gmail.com>
|
||||
|
||||
--- a/tools/perf/scripts/perl/wakeup-latency.pl
|
||||
+++ b/tools/perf/scripts/perl/wakeup-latency.pl
|
||||
@@ -1,4 +1,3 @@
|
||||
-#!/usr/bin/perl -w
|
||||
# SPDX-License-Identifier: GPL-2.0-only
|
||||
# (c) 2009, Tom Zanussi <tzanussi@gmail.com>
|
||||
|
31
debian/patches/bugfix/all/tools_lib_symbol_use_d_fortify_source_2_for_non_debug_builds.patch
vendored
Normal file
31
debian/patches/bugfix/all/tools_lib_symbol_use_d_fortify_source_2_for_non_debug_builds.patch
vendored
Normal file
@@ -0,0 +1,31 @@
|
||||
From: Uwe Kleine-König <ukleinek@debian.org>
|
||||
Subject: tools lib symbol: Use -D_FORTIFY_SOURCE=2 for non-debug builds
|
||||
Date: Mon, 24 Apr 2023 12:28:27 +0200
|
||||
Forwarded: https://lore.kernel.org/all/20230424102827.58707-1-ukleinek@debian.org/
|
||||
|
||||
Commit 160be157eaba ("tool lib symbol: Add Makefile/Build") failed to
|
||||
define _FORTIFY_SOURCE to 2, probabaly this was cut&pasted from other
|
||||
Makefiles with the same problem.
|
||||
|
||||
Fixes: 160be157eaba ("tool lib symbol: Add Makefile/Build")
|
||||
Signed-off-by: Uwe Kleine-König <ukleinek@debian.org>
|
||||
Acked-by: Ian Rogers <irogers@google.com>
|
||||
---
|
||||
tools/lib/symbol/Makefile | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/tools/lib/symbol/Makefile b/tools/lib/symbol/Makefile
|
||||
index 13d43c6f92b4..4a08cc4e19f2 100644
|
||||
--- a/tools/lib/symbol/Makefile
|
||||
+++ b/tools/lib/symbol/Makefile
|
||||
@@ -39,7 +39,7 @@ endif
|
||||
endif
|
||||
|
||||
ifeq ($(DEBUG),0)
|
||||
- CFLAGS += -D_FORTIFY_SOURCE
|
||||
+ CFLAGS += -D_FORTIFY_SOURCE=2
|
||||
endif
|
||||
|
||||
# Treat warnings as errors unless directed not to
|
||||
--
|
||||
2.39.2
|
29
debian/patches/bugfix/all/usbip-document-tcp-wrappers.patch
vendored
Normal file
29
debian/patches/bugfix/all/usbip-document-tcp-wrappers.patch
vendored
Normal file
@@ -0,0 +1,29 @@
|
||||
From: Ben Hutchings <ben@decadent.org.uk>
|
||||
Date: Sun, 24 Jun 2012 02:51:39 +0100
|
||||
Subject: usbip: Document TCP wrappers
|
||||
Forwarded: no
|
||||
|
||||
Add references to TCP wrappers configuration in the manual page.
|
||||
|
||||
--- a/tools/usb/usbip/doc/usbipd.8
|
||||
+++ b/tools/usb/usbip/doc/usbipd.8
|
||||
@@ -14,7 +14,8 @@ Devices have to explicitly be exported u
|
||||
before usbipd makes them available to other hosts.
|
||||
|
||||
The daemon accepts connections from USB/IP clients
|
||||
-on TCP port 3240 by default.
|
||||
+on TCP port 3240 by default. The clients authorised to connect may be
|
||||
+configured as documented in hosts_access(5).
|
||||
|
||||
.SH OPTIONS
|
||||
.HP
|
||||
@@ -69,7 +70,8 @@ Show version.
|
||||
|
||||
.B usbipd
|
||||
offers no authentication or authorization for USB/IP. Any
|
||||
-USB/IP client can connect and use exported devices.
|
||||
+USB/IP client running on an authorised host can connect and
|
||||
+use exported devices.
|
||||
|
||||
.SH EXAMPLES
|
||||
|
Reference in New Issue
Block a user