Skip to contentSkip to conversation

platform/x86: intel_pmt_class: Initial resource to 0

PATCH Applied David E. Box 2 participants 5 messages Mar 17, 2021 – Mar 23, 2021 x86 platform drivers

lore
Share & tools
lore
#0 lore raw

PATCH 1/2 platform/x86: intel_pmt_class: Initial resource to 0

Initialize the struct resource in intel_pmt_dev_register to zero to avoid a fault should the char *name field be non-zero.

---

Base commit is v5.12-rc3.

 drivers/platform/x86/intel_pmt_class.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
drivers/platform/x86/intel_pmt_class.c +1 -1
index c8939fba4509..ee2b3bbeb83d 100644
@@ -173,7 +173,7 @@ static int intel_pmt_dev_register(struct intel_pmt_entry *entry,
 				  struct intel_pmt_namespace *ns,
 				  struct device *parent)
 {
-	struct resource res;
+	struct resource res = {0};
 	struct device *dev;
 	int ret;
 

base-commit: 1e28eed17697bcf343c6743f0028cc3b5dd88bf0

Signature · 1 line
2.25.1
#1 lore raw

PATCH 2/2 platform_x86: intel_pmt_crashlog: Fix incorrect macros

Fixes off-by-one bugs in the macro assignments for the crashlog control bits. Was initially tested on emulation but bug revealed after testing on silicon.

Fixes 5ef9998c96b0 ("platform/x86: Intel PMT Crashlog capability driver")
---
 drivers/platform/x86/intel_pmt_crashlog.c | 13 ++++++-------
 1 file changed, 6 insertions(+), 7 deletions(-)
drivers/platform/x86/intel_pmt_crashlog.c +6 -7
index 97dd749c8290..92d315a16cfd 100644
@@ -23,18 +23,17 @@
 #define CRASH_TYPE_OOBMSM	1
 
 /* Control Flags */
-#define CRASHLOG_FLAG_DISABLE		BIT(27)
+#define CRASHLOG_FLAG_DISABLE		BIT(28)
 
 /*
- * Bits 28 and 29 control the state of bit 31.
+ * Bits 29 and 30 control the state of bit 31.
  *
- * Bit 28 will clear bit 31, if set, allowing a new crashlog to be captured.
- * Bit 29 will immediately trigger a crashlog to be generated, setting bit 31.
- * Bit 30 is read-only and reserved as 0.
+ * Bit 29 will clear bit 31, if set, allowing a new crashlog to be captured.
+ * Bit 30 will immediately trigger a crashlog to be generated, setting bit 31.
  * Bit 31 is the read-only status with a 1 indicating log is complete.
  */
-#define CRASHLOG_FLAG_TRIGGER_CLEAR	BIT(28)
-#define CRASHLOG_FLAG_TRIGGER_EXECUTE	BIT(29)
+#define CRASHLOG_FLAG_TRIGGER_CLEAR	BIT(29)
+#define CRASHLOG_FLAG_TRIGGER_EXECUTE	BIT(30)
 #define CRASHLOG_FLAG_TRIGGER_COMPLETE	BIT(31)
 #define CRASHLOG_FLAG_TRIGGER_MASK	GENMASK(31, 28)
 
Signature · 1 line
2.25.1
#2 lore raw
In reply to David E. Box
Quoted 3 lines · David E. Box

Initialize the struct resource in intel_pmt_dev_register to zero to avoid a
fault should the char *name field be non-zero.

Hi Hans. Can these 2 patches be pulled as fixes for 5.12? Thanks.

David

Quoted 26 lines

---

Base commit is v5.12-rc3.

 drivers/platform/x86/intel_pmt_class.c | 2 +-

 1 file changed, 1 insertion(+), 1 deletion(-)
drivers/platform/x86/intel_pmt_class.c +1 -1
index c8939fba4509..ee2b3bbeb83d 100644
@@ -173,7 +173,7 @@ static int intel_pmt_dev_register(struct
 intel_pmt_entry *entry,
                                   struct intel_pmt_namespace *ns,
                                   struct device *parent)
  {
-       struct resource res;
+       struct resource res = {0};
         struct device *dev;
         int ret;

base-commit: 1e28eed17697bcf343c6743f0028cc3b5dd88bf0

#3 lore raw

Hi,

Quoted 6 lines · David E. Box
Quoted 3 lines · David E. Box

Initialize the struct resource in intel_pmt_dev_register to zero to avoid a
fault should the char *name field be non-zero.

Hi Hans. Can these 2 patches be pulled as fixes for 5.12? Thanks.

I've merged this into my review-hans branch now.

I'll also them to my fixes branch and add them to my next pull-req to Linus for 5.12.

Regards,

Hans

Quoted 30 lines

David

Quoted 26 lines

---

Base commit is v5.12-rc3.

 drivers/platform/x86/intel_pmt_class.c | 2 +-

 1 file changed, 1 insertion(+), 1 deletion(-)
drivers/platform/x86/intel_pmt_class.c +1 -1
index c8939fba4509..ee2b3bbeb83d 100644
@@ -173,7 +173,7 @@ static int intel_pmt_dev_register(struct
 intel_pmt_entry *entry,
                                   struct intel_pmt_namespace *ns,
                                   struct device *parent)
  {
-       struct resource res;
+       struct resource res = {0};
         struct device *dev;
         int ret;

base-commit: 1e28eed17697bcf343c6743f0028cc3b5dd88bf0

#4 lore raw
In reply to David E. Box

Hi,

Quoted 4 lines · David E. Box

Initialize the struct resource in intel_pmt_dev_register to zero to avoid a fault should the char *name field be non-zero.

Thank you for your patch-series, I've applied the series to my review-hans branch:
https://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86.git/log/?h=review-hans

Note it will show up in my review-hans branch once I've pushed my local branch there, which might take a while.

Once I've run some tests on this branch the patches there will be added to the platform-drivers-x86/for-next branch and eventually will be included in the pdx86 pull-request to Linus for the next merge-window.

Regards,

Hans

Quoted 23 lines

---

Base commit is v5.12-rc3.

 drivers/platform/x86/intel_pmt_class.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
drivers/platform/x86/intel_pmt_class.c +1 -1
index c8939fba4509..ee2b3bbeb83d 100644
@@ -173,7 +173,7 @@ static int intel_pmt_dev_register(struct intel_pmt_entry *entry,
 				  struct intel_pmt_namespace *ns,
 				  struct device *parent)
 {
-	struct resource res;
+	struct resource res = {0};
 	struct device *dev;
 	int ret;
 

base-commit: 1e28eed17697bcf343c6743f0028cc3b5dd88bf0