diff options
author | Jeremy Cline <jcline@redhat.com> | 2020-04-23 16:47:21 -0400 |
---|---|---|
committer | Jeremy Cline <jcline@redhat.com> | 2020-04-23 16:47:21 -0400 |
commit | d1b6f8c7af0eb9a0a44b2d4723e58dde5eafa236 (patch) | |
tree | 842b7a6410c2572bc8c1643196f83d2e19d80e1e /0001-ipmi-do-not-configure-ipmi-for-HPE-m400.patch | |
parent | 4f478aae8055f932b9a8fdd88d93db6b9da5709e (diff) | |
download | kernel-d1b6f8c7af0eb9a0a44b2d4723e58dde5eafa236.tar.gz kernel-d1b6f8c7af0eb9a0a44b2d4723e58dde5eafa236.tar.xz kernel-d1b6f8c7af0eb9a0a44b2d4723e58dde5eafa236.zip |
kernel-5.7.0-0.rc2.20200423git7adc4b399952.1
* Thu Apr 23 2020 CKI@GitLab <cki-project@redhat.com> [5.7.0-0.rc2.20200423git7adc4b399952.1]
- 7adc4b399952 rebase
- Match template format in kernel.spec.template ("Justin M. Forbes")
- Break out the Patches into individual files for dist-git ("Justin M. Forbes")
- Break the Red Hat patch into individual commits (Jeremy Cline)
- Adjust module filtering so CONFIG_DRM_DP_CEC can be set (Jeremy Cline)
- Add a script to generate release tags and branches (Jeremy Cline)
- Set CONFIG_VDPA for fedora ("Justin M. Forbes")
- Provide defaults in ark-rebase-patches.sh (Jeremy Cline)
- Default ark-rebase-patches.sh to not report issues (Jeremy Cline)
Resolves: rhbz#
Signed-off-by: Jeremy Cline <jcline@redhat.com>
Diffstat (limited to '0001-ipmi-do-not-configure-ipmi-for-HPE-m400.patch')
-rw-r--r-- | 0001-ipmi-do-not-configure-ipmi-for-HPE-m400.patch | 123 |
1 files changed, 123 insertions, 0 deletions
diff --git a/0001-ipmi-do-not-configure-ipmi-for-HPE-m400.patch b/0001-ipmi-do-not-configure-ipmi-for-HPE-m400.patch new file mode 100644 index 000000000..f79c4e90c --- /dev/null +++ b/0001-ipmi-do-not-configure-ipmi-for-HPE-m400.patch @@ -0,0 +1,123 @@ +From a4b4f429ce8f886677bab6b1bd6f11b44c7c194d Mon Sep 17 00:00:00 2001 +From: Laura Abbott <labbott@redhat.com> +Date: Sun, 10 Feb 2019 01:27:54 +0000 +Subject: [PATCH] ipmi: do not configure ipmi for HPE m400 + +Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=1670017 +Brew: https://brewweb.engineering.redhat.com/brew/taskinfo?taskID=20147017 + +Commit 913a89f009d9 ("ipmi: Don't initialize anything in the core until +something uses it") added new locking which broke context. + + Message-id: <20180713142210.15700-1-tcamuso@redhat.com> + Patchwork-id: 224899 + O-Subject: [RHEL8 BZ 1583537 1/1] ipmi: do not configure ipmi for HPE m400 + Bugzilla: 1583537 + RH-Acked-by: Dean Nelson <dnelson@redhat.com> + RH-Acked-by: Al Stone <ahs3@redhat.com> + RH-Acked-by: Mark Salter <msalter@redhat.com> + + bugzilla:https://bugzilla.redhat.com/show_bug.cgi?id=1583537 + brew: https://brewweb.engineering.redhat.com/brew/taskinfo?taskID=17150528 + + RHEL-only + + The ARM-based HPE m400 reports host-side ipmi as residing in intel + port-io space, which does not exist in ARM processors. Therefore, when + running on an m400, host-side ipmi configuration code must simply return + zero without trying to configure the host-side ipmi. + + This patch prevents panic on boot by averting attempts to configure + host-side ipmi on this platform. + + Though HPE m400 is not certified with RHEL, and HPE has relegated it to + EOL status, the platform is still used extensively in ARM development + and test for RHEL. + + Testing: + Boot without blacklisting ipmi and check to see that no ipmi modules + are loaded. + + Signed-off-by: Tony Camuso <tcamuso@redhat.com> + + cc: Prarit Bhargava <prarit@redhat.com> + cc: Brendan Conoboy <blc@redhat.com> + cc: Jeff Bastian <jbastian@redhat.com> + cc: Scott Herold <sherold@redhat.com> + Signed-off-by: Herton R. Krzesinski <herton@redhat.com> + +Upstream Status: RHEL only +Signed-off-by: Laura Abbott <labbott@redhat.com> +Acked-by: Tony Camuso <tcamuso@redhat.com> +Acked-by: Dean Nelson <dnelson@redhat.com> +Acked-by: Jarod Wilson <jarod@redhat.com> +Acked-by: Mark Salter <msalter@redhat.com> +--- + drivers/char/ipmi/ipmi_dmi.c | 15 +++++++++++++++ + drivers/char/ipmi/ipmi_msghandler.c | 16 +++++++++++++++- + 2 files changed, 30 insertions(+), 1 deletion(-) + +diff --git a/drivers/char/ipmi/ipmi_dmi.c b/drivers/char/ipmi/ipmi_dmi.c +index bbf7029e224b..cf7faa970dd6 100644 +--- a/drivers/char/ipmi/ipmi_dmi.c ++++ b/drivers/char/ipmi/ipmi_dmi.c +@@ -215,6 +215,21 @@ static int __init scan_for_dmi_ipmi(void) + { + const struct dmi_device *dev = NULL; + ++#ifdef CONFIG_ARM64 ++ /* RHEL-only ++ * If this is ARM-based HPE m400, return now, because that platform ++ * reports the host-side ipmi address as intel port-io space, which ++ * does not exist in the ARM architecture. ++ */ ++ const char *dmistr = dmi_get_system_info(DMI_PRODUCT_NAME); ++ ++ if (dmistr && (strcmp("ProLiant m400 Server", dmistr) == 0)) { ++ pr_debug("%s does not support host ipmi\n", dmistr); ++ return 0; ++ } ++ /* END RHEL-only */ ++#endif ++ + while ((dev = dmi_find_device(DMI_DEV_TYPE_IPMI, NULL, dev))) + dmi_decode_ipmi((const struct dmi_header *) dev->device_data); + +diff --git a/drivers/char/ipmi/ipmi_msghandler.c b/drivers/char/ipmi/ipmi_msghandler.c +index c48d8f086382..0fc980a87ed0 100644 +--- a/drivers/char/ipmi/ipmi_msghandler.c ++++ b/drivers/char/ipmi/ipmi_msghandler.c +@@ -33,6 +33,7 @@ + #include <linux/workqueue.h> + #include <linux/uuid.h> + #include <linux/nospec.h> ++#include <linux/dmi.h> + + #define IPMI_DRIVER_VERSION "39.2" + +@@ -5154,8 +5155,21 @@ static int __init ipmi_init_msghandler_mod(void) + { + int rv; + +- pr_info("version " IPMI_DRIVER_VERSION "\n"); ++#ifdef CONFIG_ARM64 ++ /* RHEL-only ++ * If this is ARM-based HPE m400, return now, because that platform ++ * reports the host-side ipmi address as intel port-io space, which ++ * does not exist in the ARM architecture. ++ */ ++ const char *dmistr = dmi_get_system_info(DMI_PRODUCT_NAME); + ++ if (dmistr && (strcmp("ProLiant m400 Server", dmistr) == 0)) { ++ pr_debug("%s does not support host ipmi\n", dmistr); ++ return -ENOSYS; ++ } ++ /* END RHEL-only */ ++#endif ++ pr_info("version " IPMI_DRIVER_VERSION "\n"); + mutex_lock(&ipmi_interfaces_mutex); + rv = ipmi_register_driver(); + mutex_unlock(&ipmi_interfaces_mutex); +-- +2.26.0 + |