* Re: [PATCH 1/1] platform/x86: thinkpad_acpi: skip invalid fan speed [not found] ` <20221014211709.6322-2-jvanderwaa@redhat.com> @ 2022-10-15 14:22 ` Hans de Goede 2022-10-17 20:05 ` [External] " Mark Pearson 2022-10-19 19:47 ` [PATCH] " Jelle van der Waa 1 sibling, 1 reply; 4+ messages in thread From: Hans de Goede @ 2022-10-15 14:22 UTC (permalink / raw) To: Jelle van der Waa, Henrique de Moraes Holschuh, Mark Gross, platform-driver-x86@vger.kernel.org Cc: Mark Pearson Hi, On 10/14/22 23:17, Jelle van der Waa wrote: > 65535 is most likely an invalid read. I wonder if it is an invalid read, or if it actually is a reserved value which means "FAN_NOT_PRESENT" I'm tempted to add: #define FAN_NOT_PRESENT 65535 and then change the check to: if (res >= 0 && speed != FAN_NOT_PRESENT) { That would make the code more logical to read. Jelle, can you make this change for v2 ? Also please Cc: platform-driver-x86@vger.kernel.org for v2. Mark, what do you think of this change (and of adding the FAN_NOT_PRESENT define) ? Regards, Hans > > Signed-off-by: Jelle van der Waa <jvanderwaa@redhat.com> > > --- > > Cc: Mark Pearson <markpearson@lenovo.com> > --- > drivers/platform/x86/thinkpad_acpi.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/platform/x86/thinkpad_acpi.c b/drivers/platform/x86/thinkpad_acpi.c > index 6a823b850a77..7e0f72dc53b7 100644 > --- a/drivers/platform/x86/thinkpad_acpi.c > +++ b/drivers/platform/x86/thinkpad_acpi.c > @@ -8876,7 +8876,7 @@ static int __init fan_init(struct ibm_init_struct *iibm) > /* Try and probe the 2nd fan */ > tp_features.second_fan = 1; /* needed for get_speed to work */ > res = fan2_get_speed(&speed); > - if (res >= 0) { > + if (res >= 0 && speed != 65535) { > /* It responded - so let's assume it's there */ > tp_features.second_fan = 1; > tp_features.second_fan_ctl = 1; ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [External] Re: [PATCH 1/1] platform/x86: thinkpad_acpi: skip invalid fan speed 2022-10-15 14:22 ` [PATCH 1/1] platform/x86: thinkpad_acpi: skip invalid fan speed Hans de Goede @ 2022-10-17 20:05 ` Mark Pearson 0 siblings, 0 replies; 4+ messages in thread From: Mark Pearson @ 2022-10-17 20:05 UTC (permalink / raw) To: Hans de Goede, Jelle van der Waa, Henrique de Moraes Holschuh, Mark Gross, platform-driver-x86@vger.kernel.org HI Hans On 2022-10-15 10:22, Hans de Goede wrote: > Hi, > > On 10/14/22 23:17, Jelle van der Waa wrote: >> 65535 is most likely an invalid read. > > I wonder if it is an invalid read, or if it actually is a reserved value > which means "FAN_NOT_PRESENT" > > I'm tempted to add: > > #define FAN_NOT_PRESENT 65535 > > and then change the check to: > > if (res >= 0 && speed != FAN_NOT_PRESENT) { > > > That would make the code more logical to read. > > Jelle, can you make this change for v2 ? Also please Cc: platform-driver-x86@vger.kernel.org > for v2. > > Mark, what do you think of this change (and of adding the > FAN_NOT_PRESENT define) ? Looks good to me. I've asked the FW team to see if they can confirm if this will be standard behaviour (it's not defined in the spec that I have) and will update if I get an answer. But regardless I think it makes sense. Mark > > Regards, > > Hans > > > >> >> Signed-off-by: Jelle van der Waa <jvanderwaa@redhat.com> >> >> --- >> >> Cc: Mark Pearson <markpearson@lenovo.com> >> --- >> drivers/platform/x86/thinkpad_acpi.c | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) >> >> diff --git a/drivers/platform/x86/thinkpad_acpi.c b/drivers/platform/x86/thinkpad_acpi.c >> index 6a823b850a77..7e0f72dc53b7 100644 >> --- a/drivers/platform/x86/thinkpad_acpi.c >> +++ b/drivers/platform/x86/thinkpad_acpi.c >> @@ -8876,7 +8876,7 @@ static int __init fan_init(struct ibm_init_struct *iibm) >> /* Try and probe the 2nd fan */ >> tp_features.second_fan = 1; /* needed for get_speed to work */ >> res = fan2_get_speed(&speed); >> - if (res >= 0) { >> + if (res >= 0 && speed != 65535) { >> /* It responded - so let's assume it's there */ >> tp_features.second_fan = 1; >> tp_features.second_fan_ctl = 1; > ^ permalink raw reply [flat|nested] 4+ messages in thread
* [PATCH] platform/x86: thinkpad_acpi: skip invalid fan speed [not found] ` <20221014211709.6322-2-jvanderwaa@redhat.com> 2022-10-15 14:22 ` [PATCH 1/1] platform/x86: thinkpad_acpi: skip invalid fan speed Hans de Goede @ 2022-10-19 19:47 ` Jelle van der Waa 2022-10-24 9:25 ` Hans de Goede 1 sibling, 1 reply; 4+ messages in thread From: Jelle van der Waa @ 2022-10-19 19:47 UTC (permalink / raw) To: Hans de Goede; +Cc: Jelle van der Waa, platform-driver-x86, Mark Pearson 65535 is most likely an invalid read. Signed-off-by: Jelle van der Waa <jvanderwaa@redhat.com> --- Cc: Mark Pearson <markpearson@lenovo.com> --- drivers/platform/x86/thinkpad_acpi.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/platform/x86/thinkpad_acpi.c b/drivers/platform/x86/thinkpad_acpi.c index 6a823b850a77..20e5c043a8e8 100644 --- a/drivers/platform/x86/thinkpad_acpi.c +++ b/drivers/platform/x86/thinkpad_acpi.c @@ -263,6 +263,8 @@ enum tpacpi_hkey_event_t { #define TPACPI_DBG_BRGHT 0x0020 #define TPACPI_DBG_MIXER 0x0040 +#define FAN_NOT_PRESENT 65535 + #define strlencmp(a, b) (strncmp((a), (b), strlen(b))) @@ -8876,7 +8878,7 @@ static int __init fan_init(struct ibm_init_struct *iibm) /* Try and probe the 2nd fan */ tp_features.second_fan = 1; /* needed for get_speed to work */ res = fan2_get_speed(&speed); - if (res >= 0) { + if (res >= 0 && speed != FAN_NOT_PRESENT) { /* It responded - so let's assume it's there */ tp_features.second_fan = 1; tp_features.second_fan_ctl = 1; -- 2.38.1 ^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH] platform/x86: thinkpad_acpi: skip invalid fan speed 2022-10-19 19:47 ` [PATCH] " Jelle van der Waa @ 2022-10-24 9:25 ` Hans de Goede 0 siblings, 0 replies; 4+ messages in thread From: Hans de Goede @ 2022-10-24 9:25 UTC (permalink / raw) To: Jelle van der Waa; +Cc: platform-driver-x86, Mark Pearson Hi, On 10/19/22 21:47, Jelle van der Waa wrote: > 65535 is most likely an invalid read. > > Signed-off-by: Jelle van der Waa <jvanderwaa@redhat.com> Thank you for your patch, I've applied this patch 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 > > --- > > Cc: Mark Pearson <markpearson@lenovo.com> > --- > drivers/platform/x86/thinkpad_acpi.c | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff --git a/drivers/platform/x86/thinkpad_acpi.c b/drivers/platform/x86/thinkpad_acpi.c > index 6a823b850a77..20e5c043a8e8 100644 > --- a/drivers/platform/x86/thinkpad_acpi.c > +++ b/drivers/platform/x86/thinkpad_acpi.c > @@ -263,6 +263,8 @@ enum tpacpi_hkey_event_t { > #define TPACPI_DBG_BRGHT 0x0020 > #define TPACPI_DBG_MIXER 0x0040 > > +#define FAN_NOT_PRESENT 65535 > + > #define strlencmp(a, b) (strncmp((a), (b), strlen(b))) > > > @@ -8876,7 +8878,7 @@ static int __init fan_init(struct ibm_init_struct *iibm) > /* Try and probe the 2nd fan */ > tp_features.second_fan = 1; /* needed for get_speed to work */ > res = fan2_get_speed(&speed); > - if (res >= 0) { > + if (res >= 0 && speed != FAN_NOT_PRESENT) { > /* It responded - so let's assume it's there */ > tp_features.second_fan = 1; > tp_features.second_fan_ctl = 1; ^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2022-10-24 9:25 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <20221014211709.6322-1-jvanderwaa@redhat.com>
[not found] ` <20221014211709.6322-2-jvanderwaa@redhat.com>
2022-10-15 14:22 ` [PATCH 1/1] platform/x86: thinkpad_acpi: skip invalid fan speed Hans de Goede
2022-10-17 20:05 ` [External] " Mark Pearson
2022-10-19 19:47 ` [PATCH] " Jelle van der Waa
2022-10-24 9:25 ` Hans de Goede
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox