diff options
author | V3n3RiX <venerix@redcorelinux.org> | 2021-07-04 23:31:16 +0100 |
---|---|---|
committer | V3n3RiX <venerix@redcorelinux.org> | 2021-07-04 23:31:16 +0100 |
commit | 3fc9b3d212714187a135994038e9b09d49bf44a3 (patch) | |
tree | d185adf5d71042e2d0f63cd3f5914aa088a904b6 | |
parent | 588050cd588f23bc1d7f3cdc3ed0e273c3d34093 (diff) |
sys-kernel/linux-{image,sources}-redcore-lts : version bump
-rw-r--r-- | metadata/md5-cache/sys-kernel/linux-image-redcore-lts-5.10.47 (renamed from metadata/md5-cache/sys-kernel/linux-image-redcore-lts-5.10.40) | 8 | ||||
-rw-r--r-- | metadata/md5-cache/sys-kernel/linux-sources-redcore-lts-5.10.47 (renamed from metadata/md5-cache/sys-kernel/linux-sources-redcore-lts-5.10.40) | 4 | ||||
-rw-r--r-- | metadata/pkg_desc_index | 4 | ||||
-rw-r--r-- | sys-kernel/linux-image-redcore-lts/Manifest | 2 | ||||
-rw-r--r-- | sys-kernel/linux-image-redcore-lts/files/5.10-linux-hardened.patch | 76 | ||||
-rw-r--r-- | sys-kernel/linux-image-redcore-lts/linux-image-redcore-lts-5.10.47.ebuild (renamed from sys-kernel/linux-image-redcore-lts/linux-image-redcore-lts-5.10.40.ebuild) | 0 | ||||
-rw-r--r-- | sys-kernel/linux-sources-redcore-lts/Manifest | 2 | ||||
-rw-r--r-- | sys-kernel/linux-sources-redcore-lts/files/5.10-linux-hardened.patch | 76 | ||||
-rw-r--r-- | sys-kernel/linux-sources-redcore-lts/linux-sources-redcore-lts-5.10.47.ebuild (renamed from sys-kernel/linux-sources-redcore-lts/linux-sources-redcore-lts-5.10.40.ebuild) | 0 |
9 files changed, 86 insertions, 86 deletions
diff --git a/metadata/md5-cache/sys-kernel/linux-image-redcore-lts-5.10.40 b/metadata/md5-cache/sys-kernel/linux-image-redcore-lts-5.10.47 index d6f1fe08..f0d4f8a2 100644 --- a/metadata/md5-cache/sys-kernel/linux-image-redcore-lts-5.10.40 +++ b/metadata/md5-cache/sys-kernel/linux-image-redcore-lts-5.10.47 @@ -1,14 +1,14 @@ DEFINED_PHASES=compile install postinst postrm prepare setup -DEPEND=app-arch/lz4 app-arch/xz-utils sys-devel/autoconf sys-devel/bc sys-devel/make cryptsetup? ( sys-fs/cryptsetup ) dmraid? ( sys-fs/dmraid ) dracut? ( >=sys-kernel/dracut-0.44-r8 ) dkms? ( sys-kernel/dkms sys-kernel/linux-sources-redcore-lts:5.10.40 ) mdadm? ( sys-fs/mdadm ) >=sys-kernel/linux-firmware-20180314 +DEPEND=app-arch/lz4 app-arch/xz-utils sys-devel/autoconf sys-devel/bc sys-devel/make cryptsetup? ( sys-fs/cryptsetup ) dmraid? ( sys-fs/dmraid ) dracut? ( >=sys-kernel/dracut-0.44-r8 ) dkms? ( sys-kernel/dkms sys-kernel/linux-sources-redcore-lts:5.10.47 ) mdadm? ( sys-fs/mdadm ) >=sys-kernel/linux-firmware-20180314 DESCRIPTION=Redcore Linux Kernel Image (LTS) EAPI=6 HOMEPAGE=https://redcorelinux.org IUSE=+cryptsetup +dmraid +dracut +dkms +mdadm KEYWORDS=~amd64 LICENSE=GPL-2 -RDEPEND=app-arch/lz4 app-arch/xz-utils sys-devel/autoconf sys-devel/bc sys-devel/make cryptsetup? ( sys-fs/cryptsetup ) dmraid? ( sys-fs/dmraid ) dracut? ( >=sys-kernel/dracut-0.44-r8 ) dkms? ( sys-kernel/dkms sys-kernel/linux-sources-redcore-lts:5.10.40 ) mdadm? ( sys-fs/mdadm ) >=sys-kernel/linux-firmware-20180314 +RDEPEND=app-arch/lz4 app-arch/xz-utils sys-devel/autoconf sys-devel/bc sys-devel/make cryptsetup? ( sys-fs/cryptsetup ) dmraid? ( sys-fs/dmraid ) dracut? ( >=sys-kernel/dracut-0.44-r8 ) dkms? ( sys-kernel/dkms sys-kernel/linux-sources-redcore-lts:5.10.47 ) mdadm? ( sys-fs/mdadm ) >=sys-kernel/linux-firmware-20180314 RESTRICT=binchecks strip mirror -SLOT=5.10.40 -SRC_URI=https://cdn.kernel.org/pub/linux/kernel/v5.x/linux-5.10.40.tar.xz +SLOT=5.10.47 +SRC_URI=https://cdn.kernel.org/pub/linux/kernel/v5.x/linux-5.10.47.tar.xz _eclasses_=desktop c0d27bf73aa08ca05b663dbd31fbef28 edos2unix 33e347e171066657f91f8b0c72ec8773 epatch 9f813bb3c47cf2e60619a663b87c5f4e estack 055c42df72f76a4f45ec92b35e83cd56 eutils dab5d8ec471d025b79c9e6906bcf3bff ltprune 4f3f2db5ce3ccbeeacdf3f94954043aa multilib 97566c1a256d07b00848aa767e38a352 preserve-libs dbc9f8d2d49c66467bc327fddd8317bd strip-linguas ac3ee41ee2d31d8c41a77c0838320cc7 toolchain-funcs 9ea1c67b6f8315fdc2568abb674519aa vcs-clean b690a7e9b6c497cf59326a7545df4283 wrapper 4251d4c84c25f59094fd557e0063a974 _md5_=e4471973e9da3660d18b9dedcc9d26b9 diff --git a/metadata/md5-cache/sys-kernel/linux-sources-redcore-lts-5.10.40 b/metadata/md5-cache/sys-kernel/linux-sources-redcore-lts-5.10.47 index 99acdc85..e3bc1ec8 100644 --- a/metadata/md5-cache/sys-kernel/linux-sources-redcore-lts-5.10.40 +++ b/metadata/md5-cache/sys-kernel/linux-sources-redcore-lts-5.10.47 @@ -7,7 +7,7 @@ KEYWORDS=~amd64 LICENSE=GPL-2 RDEPEND=app-arch/lz4 app-arch/xz-utils sys-devel/autoconf sys-devel/bc sys-devel/make RESTRICT=strip mirror -SLOT=5.10.40 -SRC_URI=https://cdn.kernel.org/pub/linux/kernel/v5.x/linux-5.10.40.tar.xz +SLOT=5.10.47 +SRC_URI=https://cdn.kernel.org/pub/linux/kernel/v5.x/linux-5.10.47.tar.xz _eclasses_=desktop c0d27bf73aa08ca05b663dbd31fbef28 edos2unix 33e347e171066657f91f8b0c72ec8773 epatch 9f813bb3c47cf2e60619a663b87c5f4e estack 055c42df72f76a4f45ec92b35e83cd56 eutils dab5d8ec471d025b79c9e6906bcf3bff ltprune 4f3f2db5ce3ccbeeacdf3f94954043aa multilib 97566c1a256d07b00848aa767e38a352 preserve-libs dbc9f8d2d49c66467bc327fddd8317bd strip-linguas ac3ee41ee2d31d8c41a77c0838320cc7 toolchain-funcs 9ea1c67b6f8315fdc2568abb674519aa vcs-clean b690a7e9b6c497cf59326a7545df4283 wrapper 4251d4c84c25f59094fd557e0063a974 _md5_=1e1ce7d1328417d6f098dcccb2eb1fc3 diff --git a/metadata/pkg_desc_index b/metadata/pkg_desc_index index 168d7445..19224a04 100644 --- a/metadata/pkg_desc_index +++ b/metadata/pkg_desc_index @@ -68,10 +68,10 @@ sys-kernel/dracut 048-r5: Generic initramfs generation tool sys-kernel/dracutcfg 1337: Redcore Linux Dracut configuration files sys-kernel/linux-headers 5.9-r10: Linux system headers sys-kernel/linux-image-redcore 5.11.22: Redcore Linux Kernel Image -sys-kernel/linux-image-redcore-lts 5.10.40: Redcore Linux Kernel Image (LTS) +sys-kernel/linux-image-redcore-lts 5.10.47: Redcore Linux Kernel Image (LTS) sys-kernel/linux-image-redcore-lts-legacy 5.4.129: Redcore Linux Kernel Image (LTS Legacy 5.4) sys-kernel/linux-sources-redcore 5.11.22: Redcore Linux Kernel Sources -sys-kernel/linux-sources-redcore-lts 5.10.40: Redcore Linux Kernel Sources (LTS) +sys-kernel/linux-sources-redcore-lts 5.10.47: Redcore Linux Kernel Sources (LTS) sys-kernel/linux-sources-redcore-lts-legacy 5.4.129: Redcore Linux Kernel Sources (LTS Legacy 5.4) sys-kernel/nvidia-drivers-dkms 460.67: NVIDIA driver sources for linux sys-kernel/nvidia-drivers-legacy-dkms 390.141-r1: NVIDIA driver sources for linux diff --git a/sys-kernel/linux-image-redcore-lts/Manifest b/sys-kernel/linux-image-redcore-lts/Manifest index 62fb370c..6b661c69 100644 --- a/sys-kernel/linux-image-redcore-lts/Manifest +++ b/sys-kernel/linux-image-redcore-lts/Manifest @@ -1 +1 @@ -DIST linux-5.10.40.tar.xz 116350428 BLAKE2B f1df7204db26d588a93d09e1322e20f57b426a0e33a11bbb111e88805b43ebb865ebcf1c7a75362650bed372102706a48171521c62a07d1261e604c03b553d24 SHA512 1b55504b5ccef17c4392a6e78a6fa481a10c5778147450dd492aceac5ed8089ee76f7f650f4cacd9ceb03a5173f33dbfa0a0c975fc29ce7fff7a31a9f59e941f +DIST linux-5.10.47.tar.xz 116362372 BLAKE2B 6cfe773c5004d742e1f47f8ec408cd37b8183de5662370437b62a53ccb7960dc97499a90e41d94c8ff25207c4cc9428ca9fe6e15388e4be83ba34e83bb2df9da SHA512 80760ce0e55f146b1434cb21975cb1b3f94a6fa7f5c8edd9e534084596e8262ee5945f2b25b98039d9d405232083f995782bbdaafbb7b387bb785eafc3e2e9c8 diff --git a/sys-kernel/linux-image-redcore-lts/files/5.10-linux-hardened.patch b/sys-kernel/linux-image-redcore-lts/files/5.10-linux-hardened.patch index d2b02ca9..e304e170 100644 --- a/sys-kernel/linux-image-redcore-lts/files/5.10-linux-hardened.patch +++ b/sys-kernel/linux-image-redcore-lts/files/5.10-linux-hardened.patch @@ -102,13 +102,13 @@ index 4abcfff15e38..fa2d0a9709f2 100644 If set, provide RFC2861 behavior and time out the congestion window after an idle period. An idle period is defined at diff --git a/Makefile b/Makefile -index 42c915ccc5b8..7bd6aed86f87 100644 +index fb2937bca41b..711389d443ab 100644 --- a/Makefile +++ b/Makefile @@ -2,7 +2,7 @@ VERSION = 5 PATCHLEVEL = 10 - SUBLEVEL = 40 + SUBLEVEL = 47 -EXTRAVERSION = +EXTRAVERSION = -hardened1 NAME = Dare mighty things @@ -600,10 +600,10 @@ index 18e874b0441e..fc7a3a9aa72a 100644 obj-$(CONFIG_USB) += usbcore.o diff --git a/drivers/usb/core/hub.c b/drivers/usb/core/hub.c -index 228e3d4e1a9f..4d4afa81d7f2 100644 +index 357730e8f52f..3884416d9029 100644 --- a/drivers/usb/core/hub.c +++ b/drivers/usb/core/hub.c -@@ -5114,6 +5114,12 @@ static void hub_port_connect(struct usb_hub *hub, int port1, u16 portstatus, +@@ -5116,6 +5116,12 @@ static void hub_port_connect(struct usb_hub *hub, int port1, u16 portstatus, goto done; return; } @@ -1013,7 +1013,7 @@ index 2b5b64256cf4..8cdce21dce0f 100644 const struct kobj_ns_type_operations *kobj_child_ns_ops(struct kobject *parent); const struct kobj_ns_type_operations *kobj_ns_ops(struct kobject *kobj); diff --git a/include/linux/mm.h b/include/linux/mm.h -index 5106db3ad1ce..d8644f4bc544 100644 +index 289c26f055cd..0a691a57044d 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h @@ -759,7 +759,7 @@ static inline int is_vmalloc_or_module_addr(const void *x) @@ -1587,7 +1587,7 @@ index de7eac903a2a..5602178f3d21 100644 /** diff --git a/kernel/events/core.c b/kernel/events/core.c -index 45fa7167cee2..3710b7c7ed5d 100644 +index 7e0fdc19043e..42636279e201 100644 --- a/kernel/events/core.c +++ b/kernel/events/core.c @@ -408,8 +408,13 @@ static cpumask_var_t perf_online_mask; @@ -1604,7 +1604,7 @@ index 45fa7167cee2..3710b7c7ed5d 100644 /* Minimum for 512 kiB + 1 user control page */ int sysctl_perf_event_mlock __read_mostly = 512 + (PAGE_SIZE / 1024); /* 'free' kiB per user */ -@@ -11690,7 +11695,7 @@ SYSCALL_DEFINE5(perf_event_open, +@@ -11692,7 +11697,7 @@ SYSCALL_DEFINE5(perf_event_open, return -EINVAL; /* Do we allow access to perf_event_open(2) ? */ @@ -1676,10 +1676,10 @@ index 61e250cdd7c9..9ef3aa84f3c9 100644 rcu_core(); } diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c -index 1ad0e52487f6..2c20745f2597 100644 +index d6e1c90de570..03ea833c66a5 100644 --- a/kernel/sched/fair.c +++ b/kernel/sched/fair.c -@@ -10663,7 +10663,7 @@ static int newidle_balance(struct rq *this_rq, struct rq_flags *rf) +@@ -10669,7 +10669,7 @@ static int newidle_balance(struct rq *this_rq, struct rq_flags *rf) * run_rebalance_domains is triggered when needed from the scheduler tick. * Also triggered for nohz idle balancing (with nohz_balancing_kick set). */ @@ -2162,7 +2162,7 @@ index 5c8b4485860d..0e26c225bb53 100644 mm->brk = brk; goto success; diff --git a/mm/page_alloc.c b/mm/page_alloc.c -index 7ffa706e5c30..fcdc61e5014f 100644 +index 81cc7fdc9c8f..254def6fa5b3 100644 --- a/mm/page_alloc.c +++ b/mm/page_alloc.c @@ -70,6 +70,7 @@ @@ -2337,7 +2337,7 @@ index e258ffcfb0ef..6208d0d5ef15 100644 } diff --git a/mm/slab_common.c b/mm/slab_common.c -index 8f27ccf9f7f3..f7832da1a63a 100644 +index ec832904f408..c24e2f33c9fb 100644 --- a/mm/slab_common.c +++ b/mm/slab_common.c @@ -30,10 +30,10 @@ @@ -2363,10 +2363,10 @@ index 8f27ccf9f7f3..f7832da1a63a 100644 static int __init setup_slab_nomerge(char *str) { diff --git a/mm/slub.c b/mm/slub.c -index 05a501b67cd5..e671c743f076 100644 +index f5fc44208bdc..d1021b7544a6 100644 --- a/mm/slub.c +++ b/mm/slub.c -@@ -127,6 +127,12 @@ static inline bool kmem_cache_debug(struct kmem_cache *s) +@@ -128,6 +128,12 @@ static inline bool kmem_cache_debug(struct kmem_cache *s) return kmem_cache_debug_flags(s, SLAB_DEBUG_FLAGS); } @@ -2379,7 +2379,7 @@ index 05a501b67cd5..e671c743f076 100644 void *fixup_red_left(struct kmem_cache *s, void *p) { if (kmem_cache_debug_flags(s, SLAB_RED_ZONE)) -@@ -432,6 +438,55 @@ static inline bool cmpxchg_double_slab(struct kmem_cache *s, struct page *page, +@@ -433,6 +439,55 @@ static inline bool cmpxchg_double_slab(struct kmem_cache *s, struct page *page, return false; } @@ -2435,7 +2435,7 @@ index 05a501b67cd5..e671c743f076 100644 #ifdef CONFIG_SLUB_DEBUG static unsigned long object_map[BITS_TO_LONGS(MAX_OBJS_PER_PAGE)]; static DEFINE_SPINLOCK(object_map_lock); -@@ -486,13 +541,13 @@ static inline void *restore_red_left(struct kmem_cache *s, void *p) +@@ -487,13 +542,13 @@ static inline void *restore_red_left(struct kmem_cache *s, void *p) * Debug settings: */ #if defined(CONFIG_SLUB_DEBUG_ON) @@ -2453,7 +2453,7 @@ index 05a501b67cd5..e671c743f076 100644 /* * slub is about to manipulate internal object metadata. This memory lies -@@ -543,26 +598,6 @@ static void print_section(char *level, char *text, u8 *addr, +@@ -544,26 +599,6 @@ static void print_section(char *level, char *text, u8 *addr, metadata_access_disable(); } @@ -2480,7 +2480,7 @@ index 05a501b67cd5..e671c743f076 100644 static struct track *get_track(struct kmem_cache *s, void *object, enum track_item alloc) { -@@ -570,6 +605,9 @@ static struct track *get_track(struct kmem_cache *s, void *object, +@@ -571,6 +606,9 @@ static struct track *get_track(struct kmem_cache *s, void *object, p = object + get_info_end(s); @@ -2490,7 +2490,7 @@ index 05a501b67cd5..e671c743f076 100644 return p + alloc; } -@@ -711,6 +749,9 @@ static void print_trailer(struct kmem_cache *s, struct page *page, u8 *p) +@@ -712,6 +750,9 @@ static void print_trailer(struct kmem_cache *s, struct page *page, u8 *p) off = get_info_end(s); @@ -2500,7 +2500,7 @@ index 05a501b67cd5..e671c743f076 100644 if (s->flags & SLAB_STORE_USER) off += 2 * sizeof(struct track); -@@ -819,8 +860,9 @@ static int check_bytes_and_report(struct kmem_cache *s, struct page *page, +@@ -820,8 +861,9 @@ static int check_bytes_and_report(struct kmem_cache *s, struct page *page, * Meta data starts here. * * A. Free pointer (if we cannot overwrite object on free) @@ -2512,7 +2512,7 @@ index 05a501b67cd5..e671c743f076 100644 * one word if debugging is on to be able to detect writes * before the word boundary. * -@@ -838,6 +880,9 @@ static int check_pad_bytes(struct kmem_cache *s, struct page *page, u8 *p) +@@ -839,6 +881,9 @@ static int check_pad_bytes(struct kmem_cache *s, struct page *page, u8 *p) { unsigned long off = get_info_end(s); /* The end of info */ @@ -2522,7 +2522,7 @@ index 05a501b67cd5..e671c743f076 100644 if (s->flags & SLAB_STORE_USER) /* We also have user information there */ off += 2 * sizeof(struct track); -@@ -1558,6 +1603,8 @@ static inline bool slab_free_freelist_hook(struct kmem_cache *s, +@@ -1559,6 +1604,8 @@ static inline bool slab_free_freelist_hook(struct kmem_cache *s, object = next; next = get_freepointer(s, object); @@ -2531,7 +2531,7 @@ index 05a501b67cd5..e671c743f076 100644 if (slab_want_init_on_free(s)) { /* * Clear the object and the metadata, but don't touch -@@ -1568,8 +1615,12 @@ static inline bool slab_free_freelist_hook(struct kmem_cache *s, +@@ -1569,8 +1616,12 @@ static inline bool slab_free_freelist_hook(struct kmem_cache *s, : 0; memset((char *)object + s->inuse, 0, s->size - s->inuse - rsize); @@ -2545,7 +2545,7 @@ index 05a501b67cd5..e671c743f076 100644 /* If object's reuse doesn't have to be delayed */ if (!slab_free_hook(s, object)) { /* Move object to the new freelist */ -@@ -1577,6 +1628,18 @@ static inline bool slab_free_freelist_hook(struct kmem_cache *s, +@@ -1578,6 +1629,18 @@ static inline bool slab_free_freelist_hook(struct kmem_cache *s, *head = object; if (!*tail) *tail = object; @@ -2564,7 +2564,7 @@ index 05a501b67cd5..e671c743f076 100644 } } while (object != old_tail); -@@ -1590,8 +1653,9 @@ static void *setup_object(struct kmem_cache *s, struct page *page, +@@ -1591,8 +1654,9 @@ static void *setup_object(struct kmem_cache *s, struct page *page, void *object) { setup_object_debug(s, page, object); @@ -2575,7 +2575,7 @@ index 05a501b67cd5..e671c743f076 100644 kasan_unpoison_object_data(s, object); s->ctor(object); kasan_poison_object_data(s, object); -@@ -2882,8 +2946,28 @@ static __always_inline void *slab_alloc_node(struct kmem_cache *s, +@@ -2883,8 +2947,28 @@ static __always_inline void *slab_alloc_node(struct kmem_cache *s, maybe_wipe_obj_freeptr(s, object); @@ -2605,7 +2605,7 @@ index 05a501b67cd5..e671c743f076 100644 slab_post_alloc_hook(s, objcg, gfpflags, 1, &object); -@@ -3272,7 +3356,7 @@ int kmem_cache_alloc_bulk(struct kmem_cache *s, gfp_t flags, size_t size, +@@ -3273,7 +3357,7 @@ int kmem_cache_alloc_bulk(struct kmem_cache *s, gfp_t flags, size_t size, void **p) { struct kmem_cache_cpu *c; @@ -2614,7 +2614,7 @@ index 05a501b67cd5..e671c743f076 100644 struct obj_cgroup *objcg = NULL; /* memcg and kmem_cache debug support */ -@@ -3322,11 +3406,35 @@ int kmem_cache_alloc_bulk(struct kmem_cache *s, gfp_t flags, size_t size, +@@ -3323,11 +3407,35 @@ int kmem_cache_alloc_bulk(struct kmem_cache *s, gfp_t flags, size_t size, local_irq_enable(); /* Clear memory outside IRQ disabled fastpath loop */ @@ -2652,7 +2652,7 @@ index 05a501b67cd5..e671c743f076 100644 } /* memcg and kmem_cache debug support */ -@@ -3360,9 +3468,9 @@ EXPORT_SYMBOL(kmem_cache_alloc_bulk); +@@ -3361,9 +3469,9 @@ EXPORT_SYMBOL(kmem_cache_alloc_bulk); * and increases the number of allocations possible without having to * take the list_lock. */ @@ -2665,7 +2665,7 @@ index 05a501b67cd5..e671c743f076 100644 /* * Calculate the order of allocation given an slab object size. -@@ -3530,6 +3638,7 @@ static void early_kmem_cache_node_alloc(int node) +@@ -3531,6 +3639,7 @@ static void early_kmem_cache_node_alloc(int node) init_object(kmem_cache_node, n, SLUB_RED_ACTIVE); init_tracking(kmem_cache_node, n); #endif @@ -2673,8 +2673,8 @@ index 05a501b67cd5..e671c743f076 100644 n = kasan_kmalloc(kmem_cache_node, n, sizeof(struct kmem_cache_node), GFP_KERNEL); page->freelist = get_freepointer(kmem_cache_node, n); -@@ -3710,6 +3819,9 @@ static int calculate_sizes(struct kmem_cache *s, int forced_order) - s->offset = ALIGN(freepointer_area / 2, sizeof(void *)); +@@ -3705,6 +3814,9 @@ static int calculate_sizes(struct kmem_cache *s, int forced_order) + s->offset = ALIGN_DOWN(s->object_size / 2, sizeof(void *)); } + if (IS_ENABLED(CONFIG_SLAB_CANARY)) @@ -2683,7 +2683,7 @@ index 05a501b67cd5..e671c743f076 100644 #ifdef CONFIG_SLUB_DEBUG if (flags & SLAB_STORE_USER) /* -@@ -3783,6 +3895,10 @@ static int kmem_cache_open(struct kmem_cache *s, slab_flags_t flags) +@@ -3778,6 +3890,10 @@ static int kmem_cache_open(struct kmem_cache *s, slab_flags_t flags) #ifdef CONFIG_SLAB_FREELIST_HARDENED s->random = get_random_long(); #endif @@ -2694,7 +2694,7 @@ index 05a501b67cd5..e671c743f076 100644 if (!calculate_sizes(s, -1)) goto error; -@@ -4056,6 +4172,8 @@ void __check_heap_object(const void *ptr, unsigned long n, struct page *page, +@@ -4051,6 +4167,8 @@ void __check_heap_object(const void *ptr, unsigned long n, struct page *page, offset -= s->red_left_pad; } @@ -2703,7 +2703,7 @@ index 05a501b67cd5..e671c743f076 100644 /* Allow address range falling entirely within usercopy region. */ if (offset >= s->useroffset && offset - s->useroffset <= s->usersize && -@@ -4089,7 +4207,11 @@ size_t __ksize(const void *object) +@@ -4084,7 +4202,11 @@ size_t __ksize(const void *object) page = virt_to_head_page(object); if (unlikely(!PageSlab(page))) { @@ -2715,7 +2715,7 @@ index 05a501b67cd5..e671c743f076 100644 return page_size(page); } -@@ -4880,7 +5002,7 @@ enum slab_stat_type { +@@ -4875,7 +4997,7 @@ enum slab_stat_type { #define SO_TOTAL (1 << SL_TOTAL) #ifdef CONFIG_MEMCG @@ -2771,10 +2771,10 @@ index 4ddb6e186dd5..62ed34dfceb7 100644 unsigned long arch_mmap_rnd(void) diff --git a/net/core/dev.c b/net/core/dev.c -index 2f17a4ac82f0..223c111f31ab 100644 +index 0c9ce36afc8c..c77d2c765b03 100644 --- a/net/core/dev.c +++ b/net/core/dev.c -@@ -4869,7 +4869,7 @@ int netif_rx_any_context(struct sk_buff *skb) +@@ -4870,7 +4870,7 @@ int netif_rx_any_context(struct sk_buff *skb) } EXPORT_SYMBOL(netif_rx_any_context); @@ -2783,7 +2783,7 @@ index 2f17a4ac82f0..223c111f31ab 100644 { struct softnet_data *sd = this_cpu_ptr(&softnet_data); -@@ -6819,7 +6819,7 @@ static int napi_poll(struct napi_struct *n, struct list_head *repoll) +@@ -6838,7 +6838,7 @@ static int napi_poll(struct napi_struct *n, struct list_head *repoll) return work; } diff --git a/sys-kernel/linux-image-redcore-lts/linux-image-redcore-lts-5.10.40.ebuild b/sys-kernel/linux-image-redcore-lts/linux-image-redcore-lts-5.10.47.ebuild index 0d2a1068..0d2a1068 100644 --- a/sys-kernel/linux-image-redcore-lts/linux-image-redcore-lts-5.10.40.ebuild +++ b/sys-kernel/linux-image-redcore-lts/linux-image-redcore-lts-5.10.47.ebuild diff --git a/sys-kernel/linux-sources-redcore-lts/Manifest b/sys-kernel/linux-sources-redcore-lts/Manifest index 62fb370c..6b661c69 100644 --- a/sys-kernel/linux-sources-redcore-lts/Manifest +++ b/sys-kernel/linux-sources-redcore-lts/Manifest @@ -1 +1 @@ -DIST linux-5.10.40.tar.xz 116350428 BLAKE2B f1df7204db26d588a93d09e1322e20f57b426a0e33a11bbb111e88805b43ebb865ebcf1c7a75362650bed372102706a48171521c62a07d1261e604c03b553d24 SHA512 1b55504b5ccef17c4392a6e78a6fa481a10c5778147450dd492aceac5ed8089ee76f7f650f4cacd9ceb03a5173f33dbfa0a0c975fc29ce7fff7a31a9f59e941f +DIST linux-5.10.47.tar.xz 116362372 BLAKE2B 6cfe773c5004d742e1f47f8ec408cd37b8183de5662370437b62a53ccb7960dc97499a90e41d94c8ff25207c4cc9428ca9fe6e15388e4be83ba34e83bb2df9da SHA512 80760ce0e55f146b1434cb21975cb1b3f94a6fa7f5c8edd9e534084596e8262ee5945f2b25b98039d9d405232083f995782bbdaafbb7b387bb785eafc3e2e9c8 diff --git a/sys-kernel/linux-sources-redcore-lts/files/5.10-linux-hardened.patch b/sys-kernel/linux-sources-redcore-lts/files/5.10-linux-hardened.patch index d2b02ca9..e304e170 100644 --- a/sys-kernel/linux-sources-redcore-lts/files/5.10-linux-hardened.patch +++ b/sys-kernel/linux-sources-redcore-lts/files/5.10-linux-hardened.patch @@ -102,13 +102,13 @@ index 4abcfff15e38..fa2d0a9709f2 100644 If set, provide RFC2861 behavior and time out the congestion window after an idle period. An idle period is defined at diff --git a/Makefile b/Makefile -index 42c915ccc5b8..7bd6aed86f87 100644 +index fb2937bca41b..711389d443ab 100644 --- a/Makefile +++ b/Makefile @@ -2,7 +2,7 @@ VERSION = 5 PATCHLEVEL = 10 - SUBLEVEL = 40 + SUBLEVEL = 47 -EXTRAVERSION = +EXTRAVERSION = -hardened1 NAME = Dare mighty things @@ -600,10 +600,10 @@ index 18e874b0441e..fc7a3a9aa72a 100644 obj-$(CONFIG_USB) += usbcore.o diff --git a/drivers/usb/core/hub.c b/drivers/usb/core/hub.c -index 228e3d4e1a9f..4d4afa81d7f2 100644 +index 357730e8f52f..3884416d9029 100644 --- a/drivers/usb/core/hub.c +++ b/drivers/usb/core/hub.c -@@ -5114,6 +5114,12 @@ static void hub_port_connect(struct usb_hub *hub, int port1, u16 portstatus, +@@ -5116,6 +5116,12 @@ static void hub_port_connect(struct usb_hub *hub, int port1, u16 portstatus, goto done; return; } @@ -1013,7 +1013,7 @@ index 2b5b64256cf4..8cdce21dce0f 100644 const struct kobj_ns_type_operations *kobj_child_ns_ops(struct kobject *parent); const struct kobj_ns_type_operations *kobj_ns_ops(struct kobject *kobj); diff --git a/include/linux/mm.h b/include/linux/mm.h -index 5106db3ad1ce..d8644f4bc544 100644 +index 289c26f055cd..0a691a57044d 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h @@ -759,7 +759,7 @@ static inline int is_vmalloc_or_module_addr(const void *x) @@ -1587,7 +1587,7 @@ index de7eac903a2a..5602178f3d21 100644 /** diff --git a/kernel/events/core.c b/kernel/events/core.c -index 45fa7167cee2..3710b7c7ed5d 100644 +index 7e0fdc19043e..42636279e201 100644 --- a/kernel/events/core.c +++ b/kernel/events/core.c @@ -408,8 +408,13 @@ static cpumask_var_t perf_online_mask; @@ -1604,7 +1604,7 @@ index 45fa7167cee2..3710b7c7ed5d 100644 /* Minimum for 512 kiB + 1 user control page */ int sysctl_perf_event_mlock __read_mostly = 512 + (PAGE_SIZE / 1024); /* 'free' kiB per user */ -@@ -11690,7 +11695,7 @@ SYSCALL_DEFINE5(perf_event_open, +@@ -11692,7 +11697,7 @@ SYSCALL_DEFINE5(perf_event_open, return -EINVAL; /* Do we allow access to perf_event_open(2) ? */ @@ -1676,10 +1676,10 @@ index 61e250cdd7c9..9ef3aa84f3c9 100644 rcu_core(); } diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c -index 1ad0e52487f6..2c20745f2597 100644 +index d6e1c90de570..03ea833c66a5 100644 --- a/kernel/sched/fair.c +++ b/kernel/sched/fair.c -@@ -10663,7 +10663,7 @@ static int newidle_balance(struct rq *this_rq, struct rq_flags *rf) +@@ -10669,7 +10669,7 @@ static int newidle_balance(struct rq *this_rq, struct rq_flags *rf) * run_rebalance_domains is triggered when needed from the scheduler tick. * Also triggered for nohz idle balancing (with nohz_balancing_kick set). */ @@ -2162,7 +2162,7 @@ index 5c8b4485860d..0e26c225bb53 100644 mm->brk = brk; goto success; diff --git a/mm/page_alloc.c b/mm/page_alloc.c -index 7ffa706e5c30..fcdc61e5014f 100644 +index 81cc7fdc9c8f..254def6fa5b3 100644 --- a/mm/page_alloc.c +++ b/mm/page_alloc.c @@ -70,6 +70,7 @@ @@ -2337,7 +2337,7 @@ index e258ffcfb0ef..6208d0d5ef15 100644 } diff --git a/mm/slab_common.c b/mm/slab_common.c -index 8f27ccf9f7f3..f7832da1a63a 100644 +index ec832904f408..c24e2f33c9fb 100644 --- a/mm/slab_common.c +++ b/mm/slab_common.c @@ -30,10 +30,10 @@ @@ -2363,10 +2363,10 @@ index 8f27ccf9f7f3..f7832da1a63a 100644 static int __init setup_slab_nomerge(char *str) { diff --git a/mm/slub.c b/mm/slub.c -index 05a501b67cd5..e671c743f076 100644 +index f5fc44208bdc..d1021b7544a6 100644 --- a/mm/slub.c +++ b/mm/slub.c -@@ -127,6 +127,12 @@ static inline bool kmem_cache_debug(struct kmem_cache *s) +@@ -128,6 +128,12 @@ static inline bool kmem_cache_debug(struct kmem_cache *s) return kmem_cache_debug_flags(s, SLAB_DEBUG_FLAGS); } @@ -2379,7 +2379,7 @@ index 05a501b67cd5..e671c743f076 100644 void *fixup_red_left(struct kmem_cache *s, void *p) { if (kmem_cache_debug_flags(s, SLAB_RED_ZONE)) -@@ -432,6 +438,55 @@ static inline bool cmpxchg_double_slab(struct kmem_cache *s, struct page *page, +@@ -433,6 +439,55 @@ static inline bool cmpxchg_double_slab(struct kmem_cache *s, struct page *page, return false; } @@ -2435,7 +2435,7 @@ index 05a501b67cd5..e671c743f076 100644 #ifdef CONFIG_SLUB_DEBUG static unsigned long object_map[BITS_TO_LONGS(MAX_OBJS_PER_PAGE)]; static DEFINE_SPINLOCK(object_map_lock); -@@ -486,13 +541,13 @@ static inline void *restore_red_left(struct kmem_cache *s, void *p) +@@ -487,13 +542,13 @@ static inline void *restore_red_left(struct kmem_cache *s, void *p) * Debug settings: */ #if defined(CONFIG_SLUB_DEBUG_ON) @@ -2453,7 +2453,7 @@ index 05a501b67cd5..e671c743f076 100644 /* * slub is about to manipulate internal object metadata. This memory lies -@@ -543,26 +598,6 @@ static void print_section(char *level, char *text, u8 *addr, +@@ -544,26 +599,6 @@ static void print_section(char *level, char *text, u8 *addr, metadata_access_disable(); } @@ -2480,7 +2480,7 @@ index 05a501b67cd5..e671c743f076 100644 static struct track *get_track(struct kmem_cache *s, void *object, enum track_item alloc) { -@@ -570,6 +605,9 @@ static struct track *get_track(struct kmem_cache *s, void *object, +@@ -571,6 +606,9 @@ static struct track *get_track(struct kmem_cache *s, void *object, p = object + get_info_end(s); @@ -2490,7 +2490,7 @@ index 05a501b67cd5..e671c743f076 100644 return p + alloc; } -@@ -711,6 +749,9 @@ static void print_trailer(struct kmem_cache *s, struct page *page, u8 *p) +@@ -712,6 +750,9 @@ static void print_trailer(struct kmem_cache *s, struct page *page, u8 *p) off = get_info_end(s); @@ -2500,7 +2500,7 @@ index 05a501b67cd5..e671c743f076 100644 if (s->flags & SLAB_STORE_USER) off += 2 * sizeof(struct track); -@@ -819,8 +860,9 @@ static int check_bytes_and_report(struct kmem_cache *s, struct page *page, +@@ -820,8 +861,9 @@ static int check_bytes_and_report(struct kmem_cache *s, struct page *page, * Meta data starts here. * * A. Free pointer (if we cannot overwrite object on free) @@ -2512,7 +2512,7 @@ index 05a501b67cd5..e671c743f076 100644 * one word if debugging is on to be able to detect writes * before the word boundary. * -@@ -838,6 +880,9 @@ static int check_pad_bytes(struct kmem_cache *s, struct page *page, u8 *p) +@@ -839,6 +881,9 @@ static int check_pad_bytes(struct kmem_cache *s, struct page *page, u8 *p) { unsigned long off = get_info_end(s); /* The end of info */ @@ -2522,7 +2522,7 @@ index 05a501b67cd5..e671c743f076 100644 if (s->flags & SLAB_STORE_USER) /* We also have user information there */ off += 2 * sizeof(struct track); -@@ -1558,6 +1603,8 @@ static inline bool slab_free_freelist_hook(struct kmem_cache *s, +@@ -1559,6 +1604,8 @@ static inline bool slab_free_freelist_hook(struct kmem_cache *s, object = next; next = get_freepointer(s, object); @@ -2531,7 +2531,7 @@ index 05a501b67cd5..e671c743f076 100644 if (slab_want_init_on_free(s)) { /* * Clear the object and the metadata, but don't touch -@@ -1568,8 +1615,12 @@ static inline bool slab_free_freelist_hook(struct kmem_cache *s, +@@ -1569,8 +1616,12 @@ static inline bool slab_free_freelist_hook(struct kmem_cache *s, : 0; memset((char *)object + s->inuse, 0, s->size - s->inuse - rsize); @@ -2545,7 +2545,7 @@ index 05a501b67cd5..e671c743f076 100644 /* If object's reuse doesn't have to be delayed */ if (!slab_free_hook(s, object)) { /* Move object to the new freelist */ -@@ -1577,6 +1628,18 @@ static inline bool slab_free_freelist_hook(struct kmem_cache *s, +@@ -1578,6 +1629,18 @@ static inline bool slab_free_freelist_hook(struct kmem_cache *s, *head = object; if (!*tail) *tail = object; @@ -2564,7 +2564,7 @@ index 05a501b67cd5..e671c743f076 100644 } } while (object != old_tail); -@@ -1590,8 +1653,9 @@ static void *setup_object(struct kmem_cache *s, struct page *page, +@@ -1591,8 +1654,9 @@ static void *setup_object(struct kmem_cache *s, struct page *page, void *object) { setup_object_debug(s, page, object); @@ -2575,7 +2575,7 @@ index 05a501b67cd5..e671c743f076 100644 kasan_unpoison_object_data(s, object); s->ctor(object); kasan_poison_object_data(s, object); -@@ -2882,8 +2946,28 @@ static __always_inline void *slab_alloc_node(struct kmem_cache *s, +@@ -2883,8 +2947,28 @@ static __always_inline void *slab_alloc_node(struct kmem_cache *s, maybe_wipe_obj_freeptr(s, object); @@ -2605,7 +2605,7 @@ index 05a501b67cd5..e671c743f076 100644 slab_post_alloc_hook(s, objcg, gfpflags, 1, &object); -@@ -3272,7 +3356,7 @@ int kmem_cache_alloc_bulk(struct kmem_cache *s, gfp_t flags, size_t size, +@@ -3273,7 +3357,7 @@ int kmem_cache_alloc_bulk(struct kmem_cache *s, gfp_t flags, size_t size, void **p) { struct kmem_cache_cpu *c; @@ -2614,7 +2614,7 @@ index 05a501b67cd5..e671c743f076 100644 struct obj_cgroup *objcg = NULL; /* memcg and kmem_cache debug support */ -@@ -3322,11 +3406,35 @@ int kmem_cache_alloc_bulk(struct kmem_cache *s, gfp_t flags, size_t size, +@@ -3323,11 +3407,35 @@ int kmem_cache_alloc_bulk(struct kmem_cache *s, gfp_t flags, size_t size, local_irq_enable(); /* Clear memory outside IRQ disabled fastpath loop */ @@ -2652,7 +2652,7 @@ index 05a501b67cd5..e671c743f076 100644 } /* memcg and kmem_cache debug support */ -@@ -3360,9 +3468,9 @@ EXPORT_SYMBOL(kmem_cache_alloc_bulk); +@@ -3361,9 +3469,9 @@ EXPORT_SYMBOL(kmem_cache_alloc_bulk); * and increases the number of allocations possible without having to * take the list_lock. */ @@ -2665,7 +2665,7 @@ index 05a501b67cd5..e671c743f076 100644 /* * Calculate the order of allocation given an slab object size. -@@ -3530,6 +3638,7 @@ static void early_kmem_cache_node_alloc(int node) +@@ -3531,6 +3639,7 @@ static void early_kmem_cache_node_alloc(int node) init_object(kmem_cache_node, n, SLUB_RED_ACTIVE); init_tracking(kmem_cache_node, n); #endif @@ -2673,8 +2673,8 @@ index 05a501b67cd5..e671c743f076 100644 n = kasan_kmalloc(kmem_cache_node, n, sizeof(struct kmem_cache_node), GFP_KERNEL); page->freelist = get_freepointer(kmem_cache_node, n); -@@ -3710,6 +3819,9 @@ static int calculate_sizes(struct kmem_cache *s, int forced_order) - s->offset = ALIGN(freepointer_area / 2, sizeof(void *)); +@@ -3705,6 +3814,9 @@ static int calculate_sizes(struct kmem_cache *s, int forced_order) + s->offset = ALIGN_DOWN(s->object_size / 2, sizeof(void *)); } + if (IS_ENABLED(CONFIG_SLAB_CANARY)) @@ -2683,7 +2683,7 @@ index 05a501b67cd5..e671c743f076 100644 #ifdef CONFIG_SLUB_DEBUG if (flags & SLAB_STORE_USER) /* -@@ -3783,6 +3895,10 @@ static int kmem_cache_open(struct kmem_cache *s, slab_flags_t flags) +@@ -3778,6 +3890,10 @@ static int kmem_cache_open(struct kmem_cache *s, slab_flags_t flags) #ifdef CONFIG_SLAB_FREELIST_HARDENED s->random = get_random_long(); #endif @@ -2694,7 +2694,7 @@ index 05a501b67cd5..e671c743f076 100644 if (!calculate_sizes(s, -1)) goto error; -@@ -4056,6 +4172,8 @@ void __check_heap_object(const void *ptr, unsigned long n, struct page *page, +@@ -4051,6 +4167,8 @@ void __check_heap_object(const void *ptr, unsigned long n, struct page *page, offset -= s->red_left_pad; } @@ -2703,7 +2703,7 @@ index 05a501b67cd5..e671c743f076 100644 /* Allow address range falling entirely within usercopy region. */ if (offset >= s->useroffset && offset - s->useroffset <= s->usersize && -@@ -4089,7 +4207,11 @@ size_t __ksize(const void *object) +@@ -4084,7 +4202,11 @@ size_t __ksize(const void *object) page = virt_to_head_page(object); if (unlikely(!PageSlab(page))) { @@ -2715,7 +2715,7 @@ index 05a501b67cd5..e671c743f076 100644 return page_size(page); } -@@ -4880,7 +5002,7 @@ enum slab_stat_type { +@@ -4875,7 +4997,7 @@ enum slab_stat_type { #define SO_TOTAL (1 << SL_TOTAL) #ifdef CONFIG_MEMCG @@ -2771,10 +2771,10 @@ index 4ddb6e186dd5..62ed34dfceb7 100644 unsigned long arch_mmap_rnd(void) diff --git a/net/core/dev.c b/net/core/dev.c -index 2f17a4ac82f0..223c111f31ab 100644 +index 0c9ce36afc8c..c77d2c765b03 100644 --- a/net/core/dev.c +++ b/net/core/dev.c -@@ -4869,7 +4869,7 @@ int netif_rx_any_context(struct sk_buff *skb) +@@ -4870,7 +4870,7 @@ int netif_rx_any_context(struct sk_buff *skb) } EXPORT_SYMBOL(netif_rx_any_context); @@ -2783,7 +2783,7 @@ index 2f17a4ac82f0..223c111f31ab 100644 { struct softnet_data *sd = this_cpu_ptr(&softnet_data); -@@ -6819,7 +6819,7 @@ static int napi_poll(struct napi_struct *n, struct list_head *repoll) +@@ -6838,7 +6838,7 @@ static int napi_poll(struct napi_struct *n, struct list_head *repoll) return work; } diff --git a/sys-kernel/linux-sources-redcore-lts/linux-sources-redcore-lts-5.10.40.ebuild b/sys-kernel/linux-sources-redcore-lts/linux-sources-redcore-lts-5.10.47.ebuild index 7dac91e2..7dac91e2 100644 --- a/sys-kernel/linux-sources-redcore-lts/linux-sources-redcore-lts-5.10.40.ebuild +++ b/sys-kernel/linux-sources-redcore-lts/linux-sources-redcore-lts-5.10.47.ebuild |