From patchwork Wed Nov 2 21:23:35 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Armin Wolf X-Patchwork-Id: 14490 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:6687:0:0:0:0:0 with SMTP id l7csp151699wru; Wed, 2 Nov 2022 14:28:18 -0700 (PDT) X-Google-Smtp-Source: AMsMyM4jiZ0B/FtGGZuN9Y19L2IhprICTjtoDsz1+3g/ijgqPope7fu1L2v+MQINANzg147gocKX X-Received: by 2002:a17:903:494:b0:186:a227:436f with SMTP id jj20-20020a170903049400b00186a227436fmr26729946plb.133.1667424498401; Wed, 02 Nov 2022 14:28:18 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1667424498; cv=none; d=google.com; s=arc-20160816; b=gBnsyo6wau1Bpd1rjYZzbf0XWzLY4jnLW+eDDzy9qP44BFsoYv+RMIy6wRDoBJ6NfI zHWA4KZXZ88dMokNYBUeZuZ8JjURN9K9qmeYojHVinOe1Nq/m2NXWi8wKZT66bzvcvab ptB7a6zgtlztJG8u7VLe2KL7a9AlKf9Pk56sexNOXzhtndwFqg3kieneKQp6w443S12J RCCvKQAlZWNppuYAFjZ4e1boS0BGwCQp9PqlHi5/7mOM5K5lOaRW/qkwe5bcCDacC2AT U2mL2RfYvur4HsTACfhBQqZaQdNxMPZ9Tdsj1bjay0PSRpmvqbbTsQcVj0UYd6S+SVHD Wsbw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:ui-outboundreport:content-transfer-encoding :mime-version:message-id:date:subject:cc:to:from:dkim-signature; bh=KWmt3H67NLvEofFFtviCv6baaPNqHR+8RsusTPtOuRU=; b=Kfc61mS1R8Z3CSDUxuCJl6w/sQSGsxjCN4ae3NKXhjwc9L9AP2NRZjit3VSrAf8MMb HrdB/39AkXIAY6Z99VQbsxLArvGYFBZ4miR1NshQBlxLfzAiJ4gC0Jt6aruTLPBdp27k 8rQkD0hZOHZDKaFzYlI6Qo3RNl+z5e+4oayrbeU+tCzWfLfNgW0qOn3iG0BwTXCqjdOb /Fbl8onYbx0PinpASoLfkrtrjN3m6RLhyrJOOd9jCzKq3znxQHk0dCb0t2+54nPQg3ht rLgvcu0QcuHzZT2gEN7R9I2k09GzskiUSaEPzM787zdXgvWuKgsP9jmx7FR1bX6kEgAD UjAA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmx.de header.s=s31663417 header.b=kZtXtH+N; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=gmx.de Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id ob9-20020a17090b390900b001fb706e96afsi4056867pjb.182.2022.11.02.14.28.05; Wed, 02 Nov 2022 14:28:18 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@gmx.de header.s=s31663417 header.b=kZtXtH+N; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=gmx.de Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230427AbiKBVXv (ORCPT + 99 others); Wed, 2 Nov 2022 17:23:51 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:59402 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229523AbiKBVXt (ORCPT ); Wed, 2 Nov 2022 17:23:49 -0400 Received: from mout.gmx.net (mout.gmx.net [212.227.15.19]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 372B1386; Wed, 2 Nov 2022 14:23:48 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.de; s=s31663417; t=1667424219; bh=aampEa/W6j9d6+DzK+wvXKve8YoufcAeq3lEwB+0Uao=; h=X-UI-Sender-Class:From:To:Cc:Subject:Date; b=kZtXtH+N4DsT7bPMIy0s4JioiFGeG85GG3Nx5zRynB6hk+UFkXbXhCZElOHkeOtF4 1IxbPeI/LPAHQF6T6RAEi14uZbTSZYoMibmp4mTwCITfJxvb/QuktN1JtRQhZ9ss9G a8r7gYz/nYNYusTYwwqY211t2zNAEnIm8RbAQnPrGXhg0p9vynPvIQemYI3Om6Jwoc xw1jExnitpzbd+Jdzv0fJz2ETY7Eh0vK9aDMUXQCbDTJcVC0szDHAOO9RbRlBX8kOJ +yhE9pE5LrhhYH6zfr7k2zEKGxHZkJRwyYDdipo/B8Zh6OoVa1yGBZpO4TDTIImjg/ f12+yxCMOAqUA== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from esprimo-mx.users.agdsn.de ([141.30.226.129]) by mail.gmx.net (mrgmx004 [212.227.17.190]) with ESMTPSA (Nemesis) id 1MMGN2-1oZDUy4C50-00JIEH; Wed, 02 Nov 2022 22:23:39 +0100 From: Armin Wolf To: hdegoede@redhat.com, markgross@kernel.org Cc: platform-driver-x86@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH 1/2] platform/x86: dell-ddv: Improve buffer handling Date: Wed, 2 Nov 2022 22:23:35 +0100 Message-Id: <20221102212336.380257-1-W_Armin@gmx.de> X-Mailer: git-send-email 2.30.2 MIME-Version: 1.0 X-Provags-ID: V03:K1:Nr9KeNWdY7WLGxN05P9csXuYDmA/r2Qe4xbNDZlNmjJ+fC8e95q XBS9UT7JG1cpeC8H68zLCPZ9wI2GNEvWLyB6PruNFrJpXdw4/Ft6WCiMhDRBkm7fudmWMX3 rylZJdtavVPnrY62EumARp+M2vEpJgVpaDHxZDrq60qKLsN3zlsEkIFJcOHG5C4Z2m23tLS L1XolCjM5XFcxElNIxqRQ== UI-OutboundReport: notjunk:1;M01:P0:9uLHvllaT/A=;ZithkZVRqNPOK2V8hjiT5neSuNo cz4HCWUs6YlIDEIj1q11gYFMa7sdja+NrDRs+i/vkbsfLJ0pp4IIZ/E6L+6U9d45BB7kGiDgC 3XvzC7BuChN0vI8VoHLkvocrYEA6J5MhbBPgkT9pqPAhGq5Y5O3IKW1cDWCz4ZXXxiV7wDZTt jTA0EiQDG2pv2JbZnfFnfb+TA/ugtZCmVanHbnBH6PDG8bzsVUmyiX3sucwv5/Ey6SSRdWUCI xw9dra48IzB+2v/MehxSJCGBammZLWdlhKTpIH8EhYydgkJ5ZftnOr0eVxNHZ2GDY1ohLhglA YjnV3OxwK3nS5muK5uIBFghJ5/jFniqoGTLWhB1LmzdZRS+hzCJ13oUPZ1Pyfy1VQOo1/K/BD /ZWezwPJvFktb9tA54fi/3TtWg3AFRxu3N6DMg+cK1DMWcK9cRKRIRj+sP/9eeT1g29afiEPR HGC2ctpcH87MKB4SpSATgxw5wVc396SZsJKq2hKkMg270z4kG3Qxdib0ZJXhBlfbFXLpYYaAL CG+otK9MUabBNxDtwXdEvLUx1DqHOwlVj/CJuCD1expdXQYy+UuiU2+S7gKXHsdhg+HcGbvNS fWMPVv9y/wHiHAYg5knK+uvvDmkaoVDxr/b34iCP5szRRB2B5rU6yrKKp7EjIgEyle6zbQu/+ FuCktFX1OTiJEQKGM9FuWfv0wFrSCzwEO13eA/ShcTYNPQ2B2nNsJ/Fci0FFTn/hrxU5aaqKf Cdx2rfdnjzlvoJOvbajoSvQw+/aPQCTc83Ay74OjohPd2LtiswDNGkvgxQZwnz1DKqyCZm3Rh U0YiMlz8BV8cWIkHskJZ9ACoGcbR4L7TyPY8pg1Wst+327R9GE1tfs0OEN69jTbMVsd15qnO/ KGdNfwXTIyWkxYj5e+o+UddEIMn5sUPGl6voWkS/ylTuS+K+Ph1pMKKmaHhdYV7eHF/s/29sN pCvruSvEtcHZB0IPLNYmd+USnxA= X-Spam-Status: No, score=-2.8 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM,RCVD_IN_DNSWL_LOW, RCVD_IN_MSPIKE_H2,SPF_HELO_NONE,SPF_PASS autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1748421311049305855?= X-GMAIL-MSGID: =?utf-8?q?1748421311049305855?= When the DDV interface returns a buffer, it actually returns a acpi buffer containing an integer (buffer size) and another acpi buffer (buffer content). The size of the buffer may be smaller than the size of the buffer content, which is perfectly valid and should not be treated as an error. Also use the buffer size instead of the buffer content size when accessing the buffer to prevent accessing bogus data. Tested on a Dell Inspiron 3505. Signed-off-by: Armin Wolf --- drivers/platform/x86/dell/dell-wmi-ddv.c | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) -- 2.30.2 diff --git a/drivers/platform/x86/dell/dell-wmi-ddv.c b/drivers/platform/x86/dell/dell-wmi-ddv.c index 699feae3c435..1a001296e8c6 100644 --- a/drivers/platform/x86/dell/dell-wmi-ddv.c +++ b/drivers/platform/x86/dell/dell-wmi-ddv.c @@ -129,9 +129,9 @@ static int dell_wmi_ddv_query_buffer(struct wmi_device *wdev, enum dell_ddv_meth if (obj->package.elements[1].type != ACPI_TYPE_BUFFER) goto err_free; - if (buffer_size != obj->package.elements[1].buffer.length) { + if (buffer_size > obj->package.elements[1].buffer.length) { dev_warn(&wdev->dev, - FW_WARN "ACPI buffer size (%llu) does not match WMI buffer size (%d)\n", + FW_WARN "WMI buffer size (%llu) exceeds ACPI buffer size (%d)\n", buffer_size, obj->package.elements[1].buffer.length); goto err_free; @@ -271,15 +271,17 @@ static int dell_wmi_ddv_buffer_read(struct seq_file *seq, enum dell_ddv_method m struct device *dev = seq->private; struct dell_wmi_ddv_data *data = dev_get_drvdata(dev); union acpi_object *obj; - union acpi_object buf; + u64 size; + u8 *buf; int ret; ret = dell_wmi_ddv_query_buffer(data->wdev, method, 0, &obj); if (ret < 0) return ret; - buf = obj->package.elements[1]; - ret = seq_write(seq, buf.buffer.pointer, buf.buffer.length); + size = obj->package.elements[0].integer.value; + buf = obj->package.elements[1].buffer.pointer; + ret = seq_write(seq, buf, size); kfree(obj); return ret; From patchwork Wed Nov 2 21:23:36 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Armin Wolf X-Patchwork-Id: 14491 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:6687:0:0:0:0:0 with SMTP id l7csp151735wru; Wed, 2 Nov 2022 14:28:24 -0700 (PDT) X-Google-Smtp-Source: AMsMyM5Nc8SJkLyGGpGBjPxTW0uQyjUmTC+ayF3s8LOJXc3vdkabppoF81twikYQ3S8lk8/QZ6OY X-Received: by 2002:a62:ea0d:0:b0:55f:8624:4d8b with SMTP id t13-20020a62ea0d000000b0055f86244d8bmr26891088pfh.74.1667424504502; Wed, 02 Nov 2022 14:28:24 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1667424504; cv=none; d=google.com; s=arc-20160816; b=CAURPvwOvstjkqtgDPD6iATR+9nOcqBpkoY3eAw7UvUKzPfA/kFnAXrGLnaDINzRO2 z6eo0y20LwiZasP4ixPHeu3K13fV/ooHv6cFab5tw/XWeL9r98ln6qAMaujqzn9CT5BL DhWpEe7xIsiGp6TlernAGNYE7LpxdvnuT0UvQeuw38w9Vekzhe6mpCpG2wj46/zjORDz NF3ugiT8BVrkBoQCdCXbKr08IDMSkv7tvKKadeR3EOaLomil0oJ6TGMclWJwnNOOUmaX D8Z+D7uGy8iiQFWq+oQ1QgSy0e3QRBThbSvpJuveqfCrXeZL289l0iMpEOgq/LBorCNH LXfg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:ui-outboundreport:content-transfer-encoding :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=tIsOYcjbCtp6C9LBcTW33xqwACdZ4GOrDXAeE6j98gw=; b=rOvf6ASRK78uOyu68x25akLN/3EFE9EbdXdTZ6l8rnCCOrhW5mKDDvIzAZZAqzBlfj Ae+W3e9zJhdRn3X3dGX3gaVKZuwNr6zKYHrA2enhgqofP813qqY+9HZYxLorzeN8B5un Qw44xnc+HbIUcJSDLuZa2dmyHrOXKyiN/zOY6HTCN53y9G5G5leKziH5wdmWzdaGVVh+ dGcHQUl+/fpzdA4DM0d7+wKJt09yFTFMaEVEIccNNuP0JU9sXu2Tde/4GxSpxmYj+Vbv mX1aprQauMw3O6xZZRppq52n0czmeTb66lX3pIYJMon/Y1TMN4vb3WtCL2HvtLl6MpoN wURg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmx.de header.s=s31663417 header.b="anaXfdO/"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=gmx.de Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id k17-20020a170902f29100b0018668baa655si14250981plc.280.2022.11.02.14.28.11; Wed, 02 Nov 2022 14:28:24 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@gmx.de header.s=s31663417 header.b="anaXfdO/"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=gmx.de Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231167AbiKBVXy (ORCPT + 99 others); Wed, 2 Nov 2022 17:23:54 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:59404 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229882AbiKBVXu (ORCPT ); Wed, 2 Nov 2022 17:23:50 -0400 Received: from mout.gmx.net (mout.gmx.net [212.227.17.22]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 04A5B3B3; Wed, 2 Nov 2022 14:23:48 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.de; s=s31663417; t=1667424221; bh=563YttvuumXCAkFcYzDRK3i2GybkAFkEzHBYksZEWqI=; h=X-UI-Sender-Class:From:To:Cc:Subject:Date:In-Reply-To:References; b=anaXfdO/64IuThV7el5fQKM6XEYNbXrxkvTzU9lCSvuCyyHwnyKd9o0MYshpj8JP2 +XeGoWCsNbne5eCdIcjJDTQXNtnvRAgXdwordeZ8hjl3xHy4ukpx31VC/qKmbV4W0g w2rYh+p3jT7M5voi9LJvsCpeRSO6QiAHy0lFH7/2aH2R+KN5FnyRk36rXO3fq04Qn6 OTLaWIFMuUy+TUXZYtKN87R0wwFELtyDYMndzOCfJgU7uYTzwF2Fytkrwjkq/PW2U5 1YY1hmpSM4LyWoBfYrWHLGX0y7HLkXY32A6egrTahuYkKE8+lh8CQ5Z0b3vYA8ieZ5 PcC5jWZ6f4ZQg== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from esprimo-mx.users.agdsn.de ([141.30.226.129]) by mail.gmx.net (mrgmx105 [212.227.17.168]) with ESMTPSA (Nemesis) id 1MrhUK-1pM77w3KIW-00niY3; Wed, 02 Nov 2022 22:23:40 +0100 From: Armin Wolf To: hdegoede@redhat.com, markgross@kernel.org Cc: platform-driver-x86@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH 2/2] platform/x86: dell-ddv: Warn if ePPID has a suspicious length Date: Wed, 2 Nov 2022 22:23:36 +0100 Message-Id: <20221102212336.380257-2-W_Armin@gmx.de> X-Mailer: git-send-email 2.30.2 In-Reply-To: <20221102212336.380257-1-W_Armin@gmx.de> References: <20221102212336.380257-1-W_Armin@gmx.de> MIME-Version: 1.0 X-Provags-ID: V03:K1:bPHFCUaFM4G5bc43gyqGc0rmvo24NZRgRlCSd6py95bDNiEWccD opHe4nHaVq/OJ2fpBiIfvfpI1/ldnvgOn0bQFIN10f/dX3bLkueAmGKjaWomXeoEpid/QBM mHHBvur28rmqRrzEDAKuw4tB6O849oEIiUuYQmz635ivFYzkMNNTIIZukSmPev7F+UD2kub bgbYHLjBFU0e1xefThLMQ== UI-OutboundReport: notjunk:1;M01:P0:PoCCcPMRsyQ=;IHRoRgARaxt+hB6bwzo1YPqX1B/ EKiXMZBDgCXEDhwNIzxYlrcCdpHu/PmqYY43U4i1+d2HhCsZMBBoZp5ft+e9SmcIDRZXa8txR 3KQrBCJHYf1ekuxFmtJ6w2XneOlBXxANwYsePGWoKRt0pBXATFnxtnrRkEPlwnGBBqT1BW4OD YYwj1oALeMoFmeD+S+Tggd0JVWRLT6xPZwbUG4ruRpkZeSIU+OYnxaq/QjUMQ4kKEBqqK27yH Te5Y4cCzsBYjG1wAj2keHaC4Y47gXoDdFMC98ztVz0gbUGp/DcqVpsl3GNkpwbgsdI5blVxhQ oNkMBH5FXyiPbow4hYGuifyGFud+0LpmYTtqY9rpafLuqSc2lneK4BzRV08H8gxEn82pTpU/C H3DM22Mx5URnuUjjfyu+VLgO6utZ8g/jIU6WSkP73AL1VdgW0ASYzW9b08wMs6q8CNaN/hZaj g5eEcQMSgaRkIR1JQaHX5OKJaxYb9yTX9UIb43DLKQQ0LteeSSNsTGY490JWRik5OTdL5vfyQ 4cj+u0RHtdcvuwnF5TrbKGYlRjacSyIc8nK0Gdae2I3/s61aDxO5pgnciYADGAaPsqSKltWYS F/7coQK5rtOdpU6PbY2hwzOq5cNjw7HNEqNPF36XXomAbqbQ7shgc2/R2wQayHjje7M9MeA5t /6nygh0Hd4MyvwU95hftxpw2IaZHYYCJfqMbMLLfCUdq1zYtWLoUyXRszftyTL/UcAUgeA85c v7Jmn39qLmMX9282IX/eYXm1BoKlVjdEYI3vDti95Rv6mJD6yM8M/9umuBctepxlDopxsysh+ +f8MUHmGhfTQkhna6gQ5/nY98h3DlE5mChSzWPn+GhUh8YxGkc5zeb/Kt18StJoey0RNir/zR chSjOLeejtNbpgn4jY9MmalFF8j9B66LOw+LJFOYHYyo10RCmuagHXqyVU6p0Hi8cPMcgAMiR F3x0ulRF2V0cQJbB7vCIvUFKIF4= X-Spam-Status: No, score=-2.8 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM,RCVD_IN_DNSWL_LOW, RCVD_IN_MSPIKE_H2,SPF_HELO_NONE,SPF_PASS autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1748421317524166315?= X-GMAIL-MSGID: =?utf-8?q?1748421317524166315?= On some systems (like the Dell Inspiron 3505), the acpi operation region holding the ePPID string is two bytes too short, causing acpi functions like ToString() to omit the last two bytes. This does not happen on Windows, supposedly due to their implementation of ToString() ignoring buffer boundaries. Inform users if the ePPID length differs from the Dell specification so they can complain to Dell to fix their BIOS. Tested on a Dell Inspiron 3505. Signed-off-by: Armin Wolf --- drivers/platform/x86/dell/dell-wmi-ddv.c | 9 +++++++++ 1 file changed, 9 insertions(+) -- 2.30.2 diff --git a/drivers/platform/x86/dell/dell-wmi-ddv.c b/drivers/platform/x86/dell/dell-wmi-ddv.c index 1a001296e8c6..2bb449845d14 100644 --- a/drivers/platform/x86/dell/dell-wmi-ddv.c +++ b/drivers/platform/x86/dell/dell-wmi-ddv.c @@ -10,12 +10,14 @@ #include #include #include +#include #include #include #include #include #include #include +#include #include #include #include @@ -27,6 +29,9 @@ #define DELL_DDV_SUPPORTED_INTERFACE 2 #define DELL_DDV_GUID "8A42EA14-4F2A-FD45-6422-0087F7A7E608" +#define DELL_EPPID_LENGTH 20 +#define DELL_EPPID_EXT_LENGTH 23 + enum dell_ddv_method { DELL_DDV_BATTERY_DESIGN_CAPACITY = 0x01, DELL_DDV_BATTERY_FULL_CHARGE_CAPACITY = 0x02, @@ -196,6 +201,10 @@ static ssize_t eppid_show(struct device *dev, struct device_attribute *attr, cha if (ret < 0) return ret; + if (obj->string.length != DELL_EPPID_LENGTH && obj->string.length != DELL_EPPID_EXT_LENGTH) + dev_info_once(&data->wdev->dev, FW_INFO "Suspicious ePPID length (%d)\n", + obj->string.length); + ret = sysfs_emit(buf, "%s\n", obj->string.pointer); kfree(obj);