diff options
Diffstat (limited to 'patch-5.18-redhat.patch')
-rw-r--r-- | patch-5.18-redhat.patch | 36 |
1 files changed, 22 insertions, 14 deletions
diff --git a/patch-5.18-redhat.patch b/patch-5.18-redhat.patch index 5b1257c4d..b6f93ce99 100644 --- a/patch-5.18-redhat.patch +++ b/patch-5.18-redhat.patch @@ -51,7 +51,7 @@ include/linux/kernel.h | 19 + include/linux/lsm_hook_defs.h | 2 + include/linux/lsm_hooks.h | 6 + - include/linux/mmzone.h | 4 +- + include/linux/mmzone.h | 11 +- include/linux/module.h | 1 + include/linux/panic.h | 19 +- include/linux/pci.h | 16 + @@ -74,13 +74,13 @@ security/lockdown/Kconfig | 13 + security/lockdown/lockdown.c | 1 + security/security.c | 6 + - 76 files changed, 1729 insertions(+), 191 deletions(-) + 76 files changed, 1735 insertions(+), 192 deletions(-) diff --git a/Documentation/admin-guide/kernel-parameters.txt b/Documentation/admin-guide/kernel-parameters.txt -index b7ccaa2ea867..bc58b9348bb8 100644 +index 3f1cc5e317ed..fbc0870dd787 100644 --- a/Documentation/admin-guide/kernel-parameters.txt +++ b/Documentation/admin-guide/kernel-parameters.txt -@@ -6077,6 +6077,15 @@ +@@ -6083,6 +6083,15 @@ unknown_nmi_panic [X86] Cause panic on unknown NMI. @@ -657,7 +657,7 @@ index c59265146e9c..caa8458edde2 100644 rv = ipmi_register_driver(); mutex_unlock(&ipmi_interfaces_mutex); diff --git a/drivers/char/random.c b/drivers/char/random.c -index 66ce7c03a142..e6c0d7e119c7 100644 +index 1d8242969751..ce626cbe3390 100644 --- a/drivers/char/random.c +++ b/drivers/char/random.c @@ -52,6 +52,7 @@ @@ -690,7 +690,7 @@ index 66ce7c03a142..e6c0d7e119c7 100644 /* * Returns whether or not the input pool has been seeded and thus guaranteed * to supply cryptographically secure random numbers. This applies to: the -@@ -575,6 +584,63 @@ static ssize_t get_random_bytes_user(void __user *buf, size_t nbytes) +@@ -576,6 +585,63 @@ static ssize_t get_random_bytes_user(void __user *buf, size_t nbytes) return ret; } @@ -754,7 +754,7 @@ index 66ce7c03a142..e6c0d7e119c7 100644 /* * Batched entropy returns random integers. The quality of the random * number is good as /dev/urandom. In order to ensure that the randomness -@@ -1167,6 +1233,19 @@ void add_bootloader_randomness(const void *buf, size_t size) +@@ -1179,6 +1245,19 @@ void add_bootloader_randomness(const void *buf, size_t size) } EXPORT_SYMBOL_GPL(add_bootloader_randomness); @@ -774,7 +774,7 @@ index 66ce7c03a142..e6c0d7e119c7 100644 #if IS_ENABLED(CONFIG_VMGENID) static BLOCKING_NOTIFIER_HEAD(vmfork_chain); -@@ -1454,6 +1533,9 @@ static void try_to_generate_entropy(void) +@@ -1466,6 +1545,9 @@ static void try_to_generate_entropy(void) SYSCALL_DEFINE3(getrandom, char __user *, buf, size_t, count, unsigned int, flags) { @@ -784,7 +784,7 @@ index 66ce7c03a142..e6c0d7e119c7 100644 if (flags & ~(GRND_NONBLOCK | GRND_RANDOM | GRND_INSECURE)) return -EINVAL; -@@ -1467,6 +1549,18 @@ SYSCALL_DEFINE3(getrandom, char __user *, buf, size_t, count, unsigned int, +@@ -1479,6 +1561,18 @@ SYSCALL_DEFINE3(getrandom, char __user *, buf, size_t, count, unsigned int, if (count > INT_MAX) count = INT_MAX; @@ -803,7 +803,7 @@ index 66ce7c03a142..e6c0d7e119c7 100644 if (!(flags & GRND_INSECURE) && !crng_ready()) { int ret; -@@ -1620,6 +1714,7 @@ static int random_fasync(int fd, struct file *filp, int on) +@@ -1632,6 +1726,7 @@ static int random_fasync(int fd, struct file *filp, int on) } const struct file_operations random_fops = { @@ -2261,22 +2261,30 @@ index 419b5febc3ca..491323dfe4e0 100644 * * @perf_event_open: diff --git a/include/linux/mmzone.h b/include/linux/mmzone.h -index 962b14d403e8..8a89efe47571 100644 +index 962b14d403e8..46ffab808f03 100644 --- a/include/linux/mmzone.h +++ b/include/linux/mmzone.h -@@ -1398,11 +1398,9 @@ static inline unsigned long *section_to_usemap(struct mem_section *ms) +@@ -1397,13 +1397,16 @@ static inline unsigned long *section_to_usemap(struct mem_section *ms) + static inline struct mem_section *__nr_to_section(unsigned long nr) { ++ unsigned long root = SECTION_NR_TO_ROOT(nr); ++ ++ if (unlikely(root >= NR_SECTION_ROOTS)) ++ return NULL; ++ #ifdef CONFIG_SPARSEMEM_EXTREME - if (!mem_section) -+ if (!mem_section || !mem_section[SECTION_NR_TO_ROOT(nr)]) ++ if (!mem_section || !mem_section[root]) return NULL; #endif - if (!mem_section[SECTION_NR_TO_ROOT(nr)]) - return NULL; - return &mem_section[SECTION_NR_TO_ROOT(nr)][nr & SECTION_ROOT_MASK]; +- return &mem_section[SECTION_NR_TO_ROOT(nr)][nr & SECTION_ROOT_MASK]; ++ return &mem_section[root][nr & SECTION_ROOT_MASK]; } extern size_t mem_section_usage_size(void); + diff --git a/include/linux/module.h b/include/linux/module.h index 1e135fd5c076..6ec4d001c1e2 100644 --- a/include/linux/module.h |