From nobody Sat Sep 26 14:38:31 2026 Received: from mail-vs1-f50.google.com (mail-vs1-f50.google.com [209.85.217.50]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id A4076378D72 for ; Mon, 31 Aug 2026 19:28:00 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.217.50 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1788204482; cv=none; b=kWScAdlAFV0hdIpuRXTj9cjzx1tZdS7Ki9Rqc/Fo8ExrKQmpkO+CGqEUcW5JN4TpbA4GsXGmEb08qoFlNL2o1R69Pw7hl6v+KY8To4462j59XoQlQhszVXw2klCMBZIrZD8a9oYSQxRAGvQGHoL0bQ6uFCYli/mXPWwPCVXxd94= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1788204482; c=relaxed/simple; bh=xF4vDxhZsiTA4r2A8/vCm1EiUkqmg5AbA5+SGktjuhg=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=pKXRGU235FGQSuWhjkpbm1HA56rR9p9z/pCAMjUcumlx8FPIs9bsOJccWxmSK9q7zCX3Bqbu2sj4mw3DW8K5VFl5sqOg/ek2L+uHDCWeOnbAF+f13ZltclRE68xt1GoLUYylu23T08uEmneZMOvUWU3JCS8xgAGQAnLYR3zff1U= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=JHdbXuLj; arc=none smtp.client-ip=209.85.217.50 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="JHdbXuLj" Received: by mail-vs1-f50.google.com with SMTP id ada2fe7eead31-777c2d69446so2452002137.2 for ; Mon, 31 Aug 2026 12:28:00 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1788204479; x=1788809279; darn=vger.kernel.org; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:from:to:cc:subject :date:message-id:reply-to:content-type; bh=0rSuKTGURsC+BjATOKT6I6iefn9uhHjm15dQZzDRO74=; b=JHdbXuLjs/uvzE0KKURgJQtzVvjb0QIrI06ntbD2DqYHJpBdJC3I0V6dVpAvgQZeL7 K9QGL/WhMygN+0AatxaAzPRRwEFEe0xuYpeXC5Dg6mRcfdYxj94wCJEcEaUbzH5NTrFW plTfz992Ry0isMW8lFWRiwcBCOmznyUutaWUXs8iEUIhcq6SzZqdupmo5RBLFJEcoJT3 GB75C4P8maHiAx8mNL4C5MvDneo1Sjcdm+/zPMqq51TYzjuHsjLdLraF3LFrub7OvRpv ufPJUbEmjPA/hL4Ig1lC/O11+MtqdQ0geiuywzkhFV0wLo1abkIsl1cvrKwalP8crMmt SR+w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1788204479; x=1788809279; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=0rSuKTGURsC+BjATOKT6I6iefn9uhHjm15dQZzDRO74=; b=jxeMTgKY1UovR9yl6ABhSw2x1qt65wKFmleWMMHI8NFogw7z5v9eEtxWpABHbA0BuA cUIgr7x0F2jK3sX6AETPjaGp99QhzJ0ZEOlmIkMV9PVJW06hMd0RfrvEyKZAt759PEiK 6yf77jw9gbficcQTmU5YKTywMvXlOoDAa1hcC+HveXjDO7/F90h7n8CkU+2aQq2vxJZJ YL3cg9LyoVtmSsjlD2nUO3+xjtqsgA7iZd26VQ/TLfU1rd2ma9WGaST11FoKdmlNKSTy 80D+7kROv1ctjwDu5QitQ1IpyxSmBXDb4rwEAdkjiyHhZH8BMDbtbp9zcyJKrA+MTgTx WK5w== X-Forwarded-Encrypted: i=1; AHgh+RrfUw08ikey1XiysUoOSCsMxOtmcjeeVUEcJcijFkbNw/+Gt8x1kxSZMTE8HUR9im6ExXMIz090XH0zcQY=@vger.kernel.org X-Gm-Message-State: AFuF++kWklphh7rP3Dqqa/Cv+oNfhxprfDdcmTLV0lzp0vzEGrgXOC0B tsnhlSahMszdGuU2MmdHAGvNRBht41kgZT/6VMPDOMUFntko8FwxhXIJ X-Gm-Gg: AR+sD13TWyw6J6hz4s2nRQ7w8k3e2cBBmVoBxO3m9KGHp7UQcypDmjJLRs1YIs+Gpz0 BzoMrlX2Az1JjIwKkjFb+D9oE37JhQVD4lkuqUsrGygZ/OTf4ekzp7h8rn65lEUjcpLx0wMCA11 XT9rL2ISPPZbOC6UjEI/8JMS5RyLRMVlUB/iCKWNYYmhaaHHbZtlb4fgzZMgPRREpwVL8szH8+p 1ax8Zp6S0ncJagXp+U2fCQmQukRpxbQaSfjot2g5snS1ujtYlfZO/skffRCaQFdADq5tEONhaQm 1j7xoW0MpqZ/A1ZNu9wiDdGpc24GcYc++gDvAO6yk4jT+d15F9KpJgTmKkgHv78Ol/MypxsljYi uwF4mPPux2r9twjA4hWEXidJkI3PXgOMXnV6exMADOBcTDAJJnpdipjWxTOppOoltnKg8ge1vi4 5HdxWQwg8Yvr/IdT/VDo0XFk3dXMGxGdf/lVUg+EWjuAFg7Yn3uw4uXg== X-Received: by 2002:a05:6102:f0e:b0:785:10ea:be93 with SMTP id ada2fe7eead31-78597c00625mr11953348137.4.1788204479427; Mon, 31 Aug 2026 12:27:59 -0700 (PDT) Received: from unix.. ([181.229.23.179]) by smtp.gmail.com with ESMTPSA id ada2fe7eead31-785f247e397sm7359428137.0.2026.08.31.12.27.57 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 31 Aug 2026 12:27:58 -0700 (PDT) From: =?UTF-8?q?Iv=C3=A1n=20Ezequiel=20Rodriguez?= To: Dmitry Torokhov Cc: linux-input@vger.kernel.org, linux-kernel@vger.kernel.org, =?UTF-8?q?Iv=C3=A1n=20Ezequiel=20Rodriguez?= Subject: [PATCH v2 1/2] Input: evdev: propagate EVIOCSFF copy errors correctly Date: Mon, 31 Aug 2026 16:27:51 -0300 Message-ID: <20260831192752.258550-2-ivanrwcm25@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260831152156.166514-1-ivanrwcm25@gmail.com> References: <20260831152156.166514-1-ivanrwcm25@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Return the error from input_ff_effect_from_user() instead of always mapping failures to -EFAULT, so wrong buffer sizes surface as -EINVAL. Signed-off-by: Iv=C3=A1n Ezequiel Rodriguez --- drivers/input/evdev.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/drivers/input/evdev.c b/drivers/input/evdev.c index 3a718d600006..27bcf4f099be 100644 --- a/drivers/input/evdev.c +++ b/drivers/input/evdev.c @@ -1180,8 +1180,9 @@ static long evdev_do_ioctl(struct file *file, unsigne= d int cmd, return str_to_user(dev->uniq, size, p); =20 case EVIOC_MASK_SIZE(EVIOCSFF): - if (input_ff_effect_from_user(p, size, &effect)) - return -EFAULT; + error =3D input_ff_effect_from_user(p, size, &effect); + if (error) + return error; =20 error =3D input_ff_upload(dev, &effect, file); if (error) --=20 2.43.0 From nobody Sat Sep 26 14:38:31 2026 Received: from mail-wm1-f48.google.com (mail-wm1-f48.google.com [209.85.128.48]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 2CD8A46D0A8 for ; Mon, 31 Aug 2026 15:22:32 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.48 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1788189754; cv=none; b=tqJDG4IC/nbcY639SIS0PwCW0BDRfBdLG6AAIBENX391Tm7zf1fqbO5+VEMEPzo6ngSLVqh/YmaNwc1xx8q5f50z77e1cTPcO6mpjyApnmwkKkQP4d7x+BRtIDLssjeRxcIpdi3JZ1xp2t7rIpGbQvR99s0HIkzjhnbd+lK2BkE= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1788189754; c=relaxed/simple; bh=xF4vDxhZsiTA4r2A8/vCm1EiUkqmg5AbA5+SGktjuhg=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=PG5SOhEPOQRdF4fmlMWMrZ5G/fmtRniIUMGMOAetFDg0oBJlUG7tdo/p5NBa+Q3UwSjpCysquLnIand0FihYn1+Jr/SZWsXziKiI/KClZJ/6VrO0AKjafR1czXBLYZ9MfwRORRZ3KU1h3SRTzn02xgXy0SU1/DxgJrW94nk7Smo= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=TVC7eJ0K; arc=none smtp.client-ip=209.85.128.48 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="TVC7eJ0K" Received: by mail-wm1-f48.google.com with SMTP id 5b1f17b1804b1-4921eed3fa2so33043025e9.0 for ; Mon, 31 Aug 2026 08:22:32 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1788189751; x=1788794551; darn=vger.kernel.org; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:from:to:cc:subject :date:message-id:reply-to:content-type; bh=0rSuKTGURsC+BjATOKT6I6iefn9uhHjm15dQZzDRO74=; b=TVC7eJ0K0D1sriZ9t62OwxLOetT5Oz50xrZW0yBKOFXQ4ISRb4BvNH75Yea+/f95aP UnUwht9BaogaVQKG6X20c2gQUgN5wE86ei0ap+iHCG3WBs00SUS7ZZBXmCcMEPdx0pCX FjCb9znoknMbRulscor/RsYe7pP7ETuWHA0bacgowTE5sTZjqWf38rPo2U0x5v3McycJ TRKM9woWjRQR5oCj5pKQr25Cc0kwI3P77eTje6MaH6h+C0cfrWeXPhUkMGNzDJDEqMQy 8rvfCo4WM50op4Jdmr3l62+Ii6U+e4xkvyfm6Y+/fqbPy3QI5cqqh1l3HWBYf73SukSb XaSw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1788189751; x=1788794551; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=0rSuKTGURsC+BjATOKT6I6iefn9uhHjm15dQZzDRO74=; b=tKaZMtJkWeugtunsoOfE+bKsU1stHfmS39yNLDOsj0H+C/8DG1sHdfjnwTxy7QmWSF CIm/vQpJmo7TMJo54pcKx9guv5OQK5KFNIBAEwuQtlZq1GKMsJVb31sEYRssVdSMDeJQ JSAXKuBZPeNQGyEUli+sDSv1mbxTfWg0KPcHlYO7GshA5imudbJw8ZyXpLCj/nwWo92L XHPjgBOGDFfijrLBwDD5vJO4h6tvyPsJmaqh4VKkdctA5NO8Zewfp+XJO5LZQweuKGxQ sFVw8HhpQP7CBSmujMckNMHXrD6/iPCYWCvpj2BXNs22i4qsOwMQ0u2X+QPiZF5Qp9tC y99A== X-Forwarded-Encrypted: i=1; AHgh+RrGqFgdW95EAe23nPH9kKRiprlOSGS7l9U5ZJuUjnWeTHz4M/u1Lw5yrHz6YqMyZ57qtclF/ctDcOE/2rs=@vger.kernel.org X-Gm-Message-State: AFuF++m8Hr36AnMDb4iKt7sXjwck65iQTw8FRNjXcwyOvTU+tWj2qxun 5GZg/JtpxvVxz0EEPIo0CU7HmFpcKLd5CGqhWg+SsCDXLZbnCr1flcj6iQN7dzsedvk= X-Gm-Gg: AR+sD128Ryrq1zFRKPYXacuf0muf2STNgc68rmTdWMT9PBL5iPVbyXJPMAzjgRDqwaa b7Hr26mhbAMHQPKWj07XnSglyrk/LooMnckEgwZqTtZ15vx1JKgOPyeRwsG2jzhlr951V2bhuoQ DxpXpWRCeUe9MjpuzgD3+BjO6TMRQ/AIFgRuSSwVxQD4s0sBFLLtpqrUBsh/Nv+u7a9McprTDQs 7agipXSt8ziATbvE2jwqqqbFB0r5Rd5Y/N8tFp8s5/Ppoaj9HeAQeEyCpNL/YlHAMHrwC1q0Nrk PiDFbxeU++MMDCLTnuXBNcq2uCxqauJStQmcnDuBCfJKJR4vSEebrg72a5vW6Zsrld5LssMKoOl K4bttWWqSG9tN5Qt9IUH6ZkyN/DNHeKq2P6pEitESxDX9Kmba4SQ0MzRASwHBkiqpb3r6/FKFQk nTk8XmZoMqOXkUuw1aU6eABdstGp6UjP6F+G9iFptk9klGBFPgdVSFFzNLx8zp/tZaTixsSO7tq oe4Eutnt25jaOh+pN3teel0 X-Received: by 2002:a05:600c:c113:b0:497:fecd:5b00 with SMTP id 5b1f17b1804b1-49cdc435d58mr25770285e9.9.1788189751203; Mon, 31 Aug 2026 08:22:31 -0700 (PDT) Received: from unix.. (244.red-81-44-253.staticip.rima-tde.net. [81.44.253.244]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-484322ce2a6sm17342585f8f.19.2026.08.31.08.22.25 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 31 Aug 2026 08:22:29 -0700 (PDT) From: =?UTF-8?q?Iv=C3=A1n=20Ezequiel=20Rodriguez?= To: Dmitry Torokhov Cc: linux-input@vger.kernel.org, linux-kernel@vger.kernel.org, =?UTF-8?q?Iv=C3=A1n=20Ezequiel=20Rodriguez?= Subject: [PATCH v1 1/2] Input: evdev: propagate EVIOCSFF copy errors correctly Date: Mon, 31 Aug 2026 12:21:55 -0300 Message-ID: <20260831152156.166514-2-ivanrwcm25@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260831152156.166514-1-ivanrwcm25@gmail.com> References: <20260831152156.166514-1-ivanrwcm25@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Return the error from input_ff_effect_from_user() instead of always mapping failures to -EFAULT, so wrong buffer sizes surface as -EINVAL. Signed-off-by: Iv=C3=A1n Ezequiel Rodriguez --- drivers/input/evdev.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/drivers/input/evdev.c b/drivers/input/evdev.c index 3a718d600006..27bcf4f099be 100644 --- a/drivers/input/evdev.c +++ b/drivers/input/evdev.c @@ -1180,8 +1180,9 @@ static long evdev_do_ioctl(struct file *file, unsigne= d int cmd, return str_to_user(dev->uniq, size, p); =20 case EVIOC_MASK_SIZE(EVIOCSFF): - if (input_ff_effect_from_user(p, size, &effect)) - return -EFAULT; + error =3D input_ff_effect_from_user(p, size, &effect); + if (error) + return error; =20 error =3D input_ff_upload(dev, &effect, file); if (error) --=20 2.43.0 From nobody Sat Sep 26 14:38:31 2026 Received: from mail-vs1-f47.google.com (mail-vs1-f47.google.com [209.85.217.47]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id C1A0837C0FB for ; Mon, 31 Aug 2026 19:28:02 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.217.47 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1788204484; cv=none; b=Oa6aO8xO1/9ZKmwx8od2I2NTJ97iMU7k0JHDsTJJO7m69YSidT5jeA2AybByZEOXY5cl6zLr6f8Q3Ns9hcXbn8mzUbPQ20CJHMzLBpEeIMBu0uUsVXmdra8l6yVMhECwlD9UmfKFG8/GCUBLoIYdfj1SPsxpnXdmG4KRQ1wkgwU= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1788204484; c=relaxed/simple; bh=NnEQOnZj4BFAWotZoJ9Pa2KYzLkhMswxt53AVdkVHVo=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=Z2dWy3VUP/+TK8oMoaK2D64n967UeON2ruXM+0cvWD4j5TRrZ+1NrhD/B+f0mRRncIIkIg1m6AeSzQ1B0mlRCE+yteUY5m5hfeG3xnNXqQW9yjRUP3Tsn6NsRtMz9ydB9u+ceL4Knmdd0XEoHcFukpHV8kHR6CWRrl4luoV1dZU= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=CfsGlr9a; arc=none smtp.client-ip=209.85.217.47 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="CfsGlr9a" Received: by mail-vs1-f47.google.com with SMTP id ada2fe7eead31-73720e58dafso3737137.1 for ; Mon, 31 Aug 2026 12:28:02 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1788204481; x=1788809281; darn=vger.kernel.org; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:from:to:cc:subject :date:message-id:reply-to:content-type; bh=EN7H2mlXyqcLAf7M2EYDutGVS5enJP1kVnOii3DYdIE=; b=CfsGlr9awmPj6BOaUxb8t4d1xyG2siLpKbOxQV/JGjbPbuuTMQUonX6bHCpcMKzIfK +FqVIQNeiHsrBgzDOHt8fcJpJZYZHco0hOg6IUr7VEnygMlWrH0cV5FpO9qJ7ErIYNPf yQI0V2F6upz/9KGfLl/5x29nC0b7RpJNiYBo6k33p5kBLP8/5Xd8nk2HDLU6G7WGQ0dp QTQUgJ5GVhdx5WLcEImCF20czmcmysHBN2yrMQWK6FcnOCJdKoPmlTX3cDa548GR9ELW TdKGLHsEWFf7kpaVwHUbsXwMJ647OfODMCLNi9mII+dK0mIi9R+5x9QIGGzRVda+ja6r DtkA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1788204481; x=1788809281; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=EN7H2mlXyqcLAf7M2EYDutGVS5enJP1kVnOii3DYdIE=; b=rUiZTixIE/iJTP4PkskP5Wk11+GFP38yDpk8buktKrK7SD8Yms1gKPz5SXFGhqXrbO 0kzrB/D2M/P+yN+kQ3l0GzZ+Ydzr/JNb42+dNwxb5RCpDwlIxcNu9fSTzbS5/HvzMlZr Ck529f8CATM9hB7DA0HkTk4Bmko47GFXLXW7hHFVBfgi8l9QZncB4YEJBlz8AfW5kvrv UiDtH8yhuc1eGg28XRSgheUmfEr0SazvkQRaQk+TVl5Uelr72Djbkth8xiZcDTvR6Rot phHya/GCnKWu2CTq5pIW6XynHUatrYOh6bbn7VUjJ4PP1trFPLLm5zeFCn8go7Ac01kF OoBw== X-Forwarded-Encrypted: i=1; AHgh+Rr5aGOmwDGuteIefG2QoU1fYVsNqScRIt8p7EJp3uv14t+4mIVNSzrDPkJoIkYDoCioSNBv4W9P7xTnDzU=@vger.kernel.org X-Gm-Message-State: AFuF++l+4fK6ZVfr8ZQUmPnMealD6sXJ6LzWMGiGDHlp6RDSC08IdTdt DlRtqapuWSDpcjzXayeI49RknXoMG6TJ5bwN9fR5b0eRBrGinvIJiEGr4Yd2Ci2q8Hs= X-Gm-Gg: AR+sD12A3XLTrqLCEHJA5L0GDDwRFNIp3fcqYyvYAZdmydgYwXCLCsfH+NKqRxZNIPz lam7XHO9MKLGv8foGK8ARGCVwKbFU+DkBqdjShl3q5VfDkvIMjYtyolOsTDx2jhAa0Opc9EGu9J 7Q/5s5Dyfgv9RGVIGx6P7GURC/2pYurHpg/CU0pMjPTCa8t3Ob5kBTzrMHebjR6xGFa45OkW4K1 haTa2qEINJ1i6EJP7WwjExfpX5tj0csKXq46D9uv27KekDFj7H9H0iDVG0q3s+veC65fwDio2Tj SJ15a+N0/CdHFVA8mp0MThIuj2W66ReGoQPZ4WGkXKCkTIqs1L+qArwGH2RlRCn+ituGnpNTj2D qVXj8uEhSCIk6iw++UziPq0gTsKrF2UcvLVu4LARe6lSlPMdq8rLDhGNztUAM0A1hDYId7KsUdP TSPVgDfBdzRniqnLn58+0Nsj6uLdEz75+Nh1Nbp6yJU6VCIL0y6JksqU7awhCVQvMf X-Received: by 2002:a05:6102:c10:b0:77b:28c1:210e with SMTP id ada2fe7eead31-785967c8f7emr10293783137.1.1788204481486; Mon, 31 Aug 2026 12:28:01 -0700 (PDT) Received: from unix.. ([181.229.23.179]) by smtp.gmail.com with ESMTPSA id ada2fe7eead31-785f247e397sm7359428137.0.2026.08.31.12.27.59 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 31 Aug 2026 12:28:01 -0700 (PDT) From: =?UTF-8?q?Iv=C3=A1n=20Ezequiel=20Rodriguez?= To: Dmitry Torokhov Cc: linux-input@vger.kernel.org, linux-kernel@vger.kernel.org, =?UTF-8?q?Iv=C3=A1n=20Ezequiel=20Rodriguez?= Subject: [PATCH v2 2/2] Input: uinput: return -EINVAL for out-of-range UI_ABS_SETUP axis code Date: Mon, 31 Aug 2026 16:27:52 -0300 Message-ID: <20260831192752.258550-3-ivanrwcm25@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260831152156.166514-1-ivanrwcm25@gmail.com> References: <20260831152156.166514-1-ivanrwcm25@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable uinput_abs_setup() rejects an axis code above ABS_MAX with -ERANGE, but the UI_ABS_SETUP documentation in include/uapi/linux/uinput.h states the ioctl may only fail with -EINVAL, -ENOMEM or -EFAULT. An out-of-range code is exactly the "incorrect values" case described there, and every other validation failure in this path already returns -EINVAL. Return -EINVAL so the code matches its documented uapi contract. Signed-off-by: Iv=C3=A1n Ezequiel Rodriguez --- drivers/input/misc/uinput.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/input/misc/uinput.c b/drivers/input/misc/uinput.c index d32fa4b508fc..7d6266c2bd84 100644 --- a/drivers/input/misc/uinput.c +++ b/drivers/input/misc/uinput.c @@ -524,7 +524,7 @@ static int uinput_abs_setup(struct uinput_device *udev, return -EFAULT; =20 if (setup.code > ABS_MAX) - return -ERANGE; + return -EINVAL; =20 dev =3D udev->dev; =20 --=20 2.43.0 From nobody Sat Sep 26 14:38:31 2026 Received: from mail-wr1-f51.google.com (mail-wr1-f51.google.com [209.85.221.51]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 3AB6E53A887 for ; Mon, 31 Aug 2026 15:22:46 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.221.51 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1788189767; cv=none; b=NB+yYDxKcSlUrNHxpgP8Ot7evjvMSbLMUDnsZSonYLMw6ObeqDI3A0iujYkggnAxdCtZvjhOl2yqItBqZ6yAI4O7j1NIpbmRanPbqcbhZzSBWxdEnsWRLs6Bw//g6rc2B3bNFSeazXKcrIw7TpMi6HkIb6fs5CvXSRCvNJn2Q6o= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1788189767; c=relaxed/simple; bh=8uWwuLTbjvbKa5agNuttA+2GRu/EMBc+DbU7hG1WJLU=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=bHv1HIyi3f3HNbgmYTFSVVSeb8FmLg+6/bLHATbFhFmtmaDk2r2LY7nxzGpJsxvbDi289yYjmKAFSXaEs6GLGDkVA7GRACjXNWP9dj4IxsIuZC313n3dpYUv2PsaOHrh1feg8JEIiRUINwr/cPtXWjUVGCBWY3lUaXNLiENmhgY= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=A2+16Cnp; arc=none smtp.client-ip=209.85.221.51 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="A2+16Cnp" Received: by mail-wr1-f51.google.com with SMTP id ffacd0b85a97d-47fe89fb333so2128280f8f.3 for ; Mon, 31 Aug 2026 08:22:45 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1788189764; x=1788794564; darn=vger.kernel.org; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:from:to:cc:subject :date:message-id:reply-to:content-type; bh=BNOjgOexwjRZk3IN1bkdWZODfXKgHQbtu+Lx5gdpkPE=; b=A2+16Cnp0rK69gIkar0dHYxRH0V3qfCd5H3iMy5X+Odf1eZbxR40B636i3haE84yoF hZQmLirpEvl1Jf95ksjER0Fi+zPSkX6w8ssRRJbDRzY7AuApupV0unhENKvay+0Nq1oZ tuP6RLTQsoVoTFB8lk68XJUhlJgu595VTvK5CWbmYmrKp8ZzfSFXe8uHO65xuhy6OSLc ayTDIPJgR+jGQC492Oxa0oeh2+IMjHeCNSfYbPFYHlaAaqP16lK5+lRuQySu0axKczqP xmTKzD2mxQ7iw+NcepLA5dvCl5Yd8vhW7Lez0HF6CxN63Bz6n+IzBSAl2ZBuvVXI7zpF yldA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1788189764; x=1788794564; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=BNOjgOexwjRZk3IN1bkdWZODfXKgHQbtu+Lx5gdpkPE=; b=rG21AS5XdJB2cUqW1bL3fhhPzbAQ3Ysqml80pIamF9cUzXM/cI2mN095HYzmZEAuZO rMd7mb6+oGoxczmPvBxBOi1fctmv9j5b7dspbuaMQz1JQMs/Oi962XFRyCnP2O4Yicon 8SX7xN01unHf1A8G0zX0itay+dr4IcDIFVL2wED7O2l969eh2dNcIB8B6s6pysrDMt+N US7hWcoeBd74GpcZTgikYl2YC1rJBNtxS79gTcYf8L3tYnoXm/mt7fYr72xE+7QvSWUw /OglXt1++S8+KohV2tz6LT+ufFHPlprzY641dnyPrbIz0dbnAMHaN+43IvKJ4RgWYGhg sbyg== X-Forwarded-Encrypted: i=1; AKwUvBzH/sZJrO88AvE/T/Ch6cTa0bUc+ebzHme010kgfWfSti0DsBon/+ILTxjxvImpHK37c495tAkjIGZnlOA=@vger.kernel.org X-Gm-Message-State: AFuF++kAW38gxO+/za2W5ElUJje65czTYQjzjO+cuGlrPb/9BuIxWIGr 6wPe9uqsNj4U//4YGvP4Sv2P7uuOyE51HIhgtx6I5S8jGcwM5xtyQP2Z X-Gm-Gg: AYBFou0XZ91mJAOaMLDmMFwFqcn/Onw2ohSOa9HZJOJzkOYJT/JGbcDI2KVBVYCHDBQ Y5lxo3FrFoUVyLGKtC4o6FaBW+7ZqOFYx87qBoyS9V7c0HODOQzspJ1Y3MQCc01tt/T7kmv2f+z jvaiNpZtqGtaAktO6IK4v0ai9yKR2qGozTB3+VLiHcFd5rWO9uhfnnQLPfwHcvVm/+40t6ntcU0 117Env6OfJLeV5F/y4qvp/rMRoms0Y+LXHIJlzhHnRRUf7GhNDsoespQti3oOK+WPGYcmJYeJfn TWBreto33O7NxniUm3Tr8TbHl4BwhnnD32KUvLQ5r7FcmfgLOdVoDCTDNd1M7DHencb5EHUNZCr 1QDAjyGO5+J4uxIAsX9uK1KlXFjXavPePQAQSA/nbCLSSmABo6ZZeSpayPoT5X9kkVvxQJ/kE8X 6io5IDW4t5HMizcqlOLVMuE5c3afQ5mi/ckvEBe4UDWuiwQ4xV4gSZZIwtRzoD4f7DZst6MeFyC MQIX/S0ruBNtLlYmyCQkqM3Iu7NdVe8dK8h X-Received: by 2002:a05:6000:4305:b0:484:3647:d977 with SMTP id ffacd0b85a97d-484410431f7mr2552640f8f.27.1788189764283; Mon, 31 Aug 2026 08:22:44 -0700 (PDT) Received: from unix.. (244.red-81-44-253.staticip.rima-tde.net. [81.44.253.244]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-484322ce2a6sm17342585f8f.19.2026.08.31.08.22.38 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 31 Aug 2026 08:22:43 -0700 (PDT) From: =?UTF-8?q?Iv=C3=A1n=20Ezequiel=20Rodriguez?= To: Dmitry Torokhov Cc: linux-input@vger.kernel.org, linux-kernel@vger.kernel.org, =?UTF-8?q?Iv=C3=A1n=20Ezequiel=20Rodriguez?= Subject: [PATCH v1 2/2] Input: uinput: align UI_ABS_SETUP validation with uapi docs Date: Mon, 31 Aug 2026 12:21:56 -0300 Message-ID: <20260831152156.166514-3-ivanrwcm25@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260831152156.166514-1-ivanrwcm25@gmail.com> References: <20260831152156.166514-1-ivanrwcm25@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Return -EINVAL for out-of-range axis codes and reject ABS_MT_SLOT configurations whose minimum is not zero, as documented in uapi. Signed-off-by: Iv=C3=A1n Ezequiel Rodriguez --- drivers/input/misc/uinput.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/drivers/input/misc/uinput.c b/drivers/input/misc/uinput.c index d32fa4b508fc..e05c80182252 100644 --- a/drivers/input/misc/uinput.c +++ b/drivers/input/misc/uinput.c @@ -424,6 +424,13 @@ static int uinput_validate_absinfo(struct input_dev *d= ev, unsigned int code, min =3D abs->minimum; max =3D abs->maximum; =20 + if (code =3D=3D ABS_MT_SLOT && min !=3D 0) { + printk(KERN_DEBUG + "%s: abs[%02x] minimum must be 0\n", + UINPUT_NAME, code); + return -EINVAL; + } + if ((min !=3D 0 || max !=3D 0) && max < min) { printk(KERN_DEBUG "%s: invalid abs[%02x] min:%d max:%d\n", @@ -524,7 +531,7 @@ static int uinput_abs_setup(struct uinput_device *udev, return -EFAULT; =20 if (setup.code > ABS_MAX) - return -ERANGE; + return -EINVAL; =20 dev =3D udev->dev; =20 --=20 2.43.0