From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from outboundhk.mxmail.xiaomi.com (outboundhk.mxmail.xiaomi.com [207.226.244.123]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 598ED23D7FF for ; Fri, 15 May 2026 12:46:29 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=207.226.244.123 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1778849192; cv=none; b=QCkbAJ7VImFiVpiva0FE9q4i4HYaUnWlpiAiYI2St3RbmhvcnDj1ogPiIM/iwB6l8qNL7St7pTpMYmLN2Mi9nHiEFvtjW3xMqZgKzDF2wErnkpz6aKDgnO/0SZ8d3SYGmpwnT8S0qv2drKY2OyUsXo3QCMPuDABboXgjhwsQbHY= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1778849192; c=relaxed/simple; bh=j/6xldoqAuk4Vy3ksTytTfWFQ4thk7YsxPXIG1+23WM=; h=From:To:CC:Subject:Date:Message-ID:Content-Type:MIME-Version; b=uX+8nm6bxuaX4XRM2JHqWamzJz3iXF6F/ApfytJTCTkwquh++YLkUJXQHXpXQoSJucOMfZ2eZyk14Sfd0fP3CERBNuSkHgCvHNcTjNiWF8i94Vw6H2+EUMWn6+7RxDp/o/HB0QAVYdQ2GufoekLCBmfpp7Ex/FB0hob5KMKqgf8= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=xiaomi.com; spf=pass smtp.mailfrom=xiaomi.com; arc=none smtp.client-ip=207.226.244.123 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=xiaomi.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=xiaomi.com X-CSE-ConnectionGUID: bT0kd7LaQ7iCBJZe9uqIWg== X-CSE-MsgGUID: HBxQjWYFQ42R57+f1Ct2Sg== X-IronPort-AV: E=Sophos;i="6.23,236,1770566400"; d="scan'208";a="175896371" From: =?gb2312?B?wsDQxLrG?= To: "wsa+renesas@sang-engineering.com" CC: "andi.shyti@kernel.org" , "linux-i2c@vger.kernel.org" , "linux-i2c@vger.kernel.org" , "linux-i2c@vger.kernel.org" Subject: [PATCH] i2c: dev: cap msg length against allocated buffer in i2cdev_ioctl_rdwr Thread-Topic: [PATCH] i2c: dev: cap msg length against allocated buffer in i2cdev_ioctl_rdwr Thread-Index: AQHc5GfSGbLVYlek7UKxqrlZJtIYMA== Date: Fri, 15 May 2026 12:46:16 +0000 Message-ID: Accept-Language: zh-CN, en-US Content-Language: zh-CN X-MS-Has-Attach: X-MS-TNEF-Correlator: Content-Type: text/plain; charset="gb2312" Content-Transfer-Encoding: base64 Precedence: bulk X-Mailing-List: linux-i2c@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 SW4gaTJjZGV2X2lvY3RsX3Jkd3IoKSwgdGhlIGJ1ZmZlciBmb3IgZWFjaCBJMkMgbWVzc2FnZSBp cyBhbGxvY2F0ZWQNCnZpYSBtZW1kdXBfdXNlcigpIHVzaW5nIHRoZSB1c2VyLXN1cHBsaWVkIG1z Z3NbaV0ubGVuLiBIb3dldmVyLCB0aGUNCnVuZGVybHlpbmcgSTJDIGFkYXB0ZXIgZHJpdmVyIG1h eSBtb2RpZnkgbXNnc1tpXS5sZW4gZHVyaW5nDQppMmNfdHJhbnNmZXIoKSAoZS5nLiwgZm9yIEky Q19NX1JFQ1ZfTEVOIG1lc3NhZ2VzIHdoZXJlIHRoZSBhY3R1YWwNCmxlbmd0aCBpcyBkZXRlcm1p bmVkIGJ5IHRoZSBzbGF2ZSBkZXZpY2UpLg0KDQpBZnRlciBpMmNfdHJhbnNmZXIoKSByZXR1cm5z LCBjb3B5X3RvX3VzZXIoKSB1c2VzIHRoZSBwb3RlbnRpYWxseQ0KbW9kaWZpZWQgbXNnc1tpXS5s ZW4gd2l0aG91dCB2ZXJpZnlpbmcgaXQgc3RpbGwgZml0cyB3aXRoaW4gdGhlDQpvcmlnaW5hbGx5 IGFsbG9jYXRlZCBidWZmZXIuIElmIGFuIGFkYXB0ZXIgZHJpdmVyIHNldHMgbXNnc1tpXS5sZW4g dG8gYQ0KdmFsdWUgbGFyZ2VyIHRoYW4gdGhlIGFsbG9jYXRpb24sIHRoaXMgcmVzdWx0cyBpbiBh biBvdXQtb2YtYm91bmRzIHJlYWQNCmZyb20gdGhlIFNMVUIgb2JqZWN0LCB3aGljaCBDT05GSUdf SEFSREVORURfVVNFUkNPUFkgZGV0ZWN0cyBhcyBhDQprZXJuZWwgbWVtb3J5IGV4cG9zdXJlIGF0 dGVtcHQ6DQoNCiAgdXNlcmNvcHk6IEtlcm5lbCBtZW1vcnkgZXhwb3N1cmUgYXR0ZW1wdCBkZXRl Y3RlZCBmcm9tIFNMVUIgb2JqZWN0DQogICdrbWFsbG9jLTEyOCcgKG9mZnNldCAwLCBzaXplIDI3 MSkhDQoNCiAgQ2FsbCB0cmFjZToNCiAgIHVzZXJjb3B5X2Fib3J0KzB4ZTAvMHhlNA0KICAgX19j aGVja19oZWFwX29iamVjdCsweGQwLzB4ZjANCiAgIF9fY2hlY2tfb2JqZWN0X3NpemUrMHgzOTgv MHg0YTANCiAgIGkyY2Rldl9pb2N0bF9yZHdyKzB4Mjk4LzB4M2YwDQogICBpMmNkZXZfaW9jdGwr MHgxNjAvMHg1YTANCiAgIF9fYXJtNjRfc3lzX2lvY3RsKzB4MTE0LzB4MTcwDQoNCkZpeCB0aGlz IGJ5IHNhdmluZyBlYWNoIG1lc3NhZ2UncyBvcmlnaW5hbCBhbGxvY2F0aW9uIGxlbmd0aCBiZWZv cmUNCmNhbGxpbmcgaTJjX3RyYW5zZmVyKCksIGFuZCBjYXBwaW5nIG1zZ3NbaV0ubGVuIHRvIHRo YXQgc2F2ZWQgbGVuZ3RoDQpiZWZvcmUgY29weV90b191c2VyKCkuIFRoaXMgZW5zdXJlcyB3ZSBu ZXZlciBjb3B5IG1vcmUgYnl0ZXMgdGhhbiB3ZXJlDQphY3R1YWxseSBhbGxvY2F0ZWQsIHJlZ2Fy ZGxlc3Mgb2Ygd2hhdCB0aGUgYWRhcHRlciBkcml2ZXIgZG9lcyB0byB0aGUNCmxlbmd0aCBmaWVs ZC4NCg0KRm91bmQgYnkgc3l6a2FsbGVyIG9uIGFuIEFSTTY0IHBsYXRmb3JtLg0KDQpTaWduZWQt b2ZmLWJ5OiBYaW5oYW8gTHYgPGx2eGluaGFvM0B4aWFvbWkuY29tPg0KLS0tDQogZHJpdmVycy9p MmMvaTJjLWRldi5jIHwgMTIgKysrKysrKysrKysrDQogMSBmaWxlIGNoYW5nZWQsIDEyIGluc2Vy dGlvbnMoKykNCg0KZGlmZiAtLWdpdCBhL2RyaXZlcnMvaTJjL2kyYy1kZXYuYyBiL2RyaXZlcnMv aTJjL2kyYy1kZXYuYw0KaW5kZXggY2NhYWM1ZS4uYWY1YjBhNyAxMDA2NDQNCi0tLSBhL2RyaXZl cnMvaTJjL2kyYy1kZXYuYw0KKysrIGIvZHJpdmVycy9pMmMvaTJjLWRldi5jDQpAQCAtMjQ0LDYg KzI0NCw3IEBAIHN0YXRpYyBub2lubGluZSBpbnQgaTJjZGV2X2lvY3RsX3Jkd3Ioc3RydWN0IGky Y19jbGllbnQgKmNsaWVudCwNCiB1bnNpZ25lZCBubXNncywgc3RydWN0IGkyY19tc2cgKm1zZ3Mp DQogew0KIHU4IF9fdXNlciAqKmRhdGFfcHRyczsNCit1MTYgKm9yaWdfbGVuczsNCiBpbnQgaSwg cmVzOw0KDQogLyogQWRhcHRlciBtdXN0IHN1cHBvcnQgSTJDIHRyYW5zZmVycyAqLw0KQEAgLTI1 NCw2ICsyNTUsMTIgQEAgc3RhdGljIG5vaW5saW5lIGludCBpMmNkZXZfaW9jdGxfcmR3cihzdHJ1 Y3QgaTJjX2NsaWVudCAqY2xpZW50LA0KIGlmICghZGF0YV9wdHJzKQ0KIHJldHVybiAtRU5PTUVN Ow0KDQorb3JpZ19sZW5zID0ga21hbGxvY19hcnJheShubXNncywgc2l6ZW9mKHUxNiksIEdGUF9L RVJORUwpOw0KK2lmICghb3JpZ19sZW5zKSB7DQora2ZyZWUoZGF0YV9wdHJzKTsNCityZXR1cm4g LUVOT01FTTsNCit9DQorDQogcmVzID0gMDsNCiBmb3IgKGkgPSAwOyBpIDwgbm1zZ3M7IGkrKykg ew0KIC8qIExpbWl0IHRoZSBzaXplIG9mIHRoZSBtZXNzYWdlIHRvIGEgc2FuZSBhbW91bnQgKi8N CkBAIC0yNjgsNiArMjc1LDcgQEAgc3RhdGljIG5vaW5saW5lIGludCBpMmNkZXZfaW9jdGxfcmR3 cihzdHJ1Y3QgaTJjX2NsaWVudCAqY2xpZW50LA0KIHJlcyA9IFBUUl9FUlIobXNnc1tpXS5idWYp Ow0KIGJyZWFrOw0KIH0NCitvcmlnX2xlbnNbaV0gPSBtc2dzW2ldLmxlbjsNCiAvKiBtZW1kdXBf dXNlciBhbGxvY2F0ZXMgd2l0aCBHRlBfS0VSTkVMLCBzbyBETUEgaXMgb2sgKi8NCiBtc2dzW2ld LmZsYWdzIHw9IEkyQ19NX0RNQV9TQUZFOw0KDQpAQCAtMzAwLDEyICszMDgsMTUgQEAgc3RhdGlj IG5vaW5saW5lIGludCBpMmNkZXZfaW9jdGxfcmR3cihzdHJ1Y3QgaTJjX2NsaWVudCAqY2xpZW50 LA0KIGZvciAoaiA9IDA7IGogPCBpOyArK2opDQoga2ZyZWUobXNnc1tqXS5idWYpOw0KIGtmcmVl KGRhdGFfcHRycyk7DQora2ZyZWUob3JpZ19sZW5zKTsNCiByZXR1cm4gcmVzOw0KIH0NCg0KIHJl cyA9IGkyY190cmFuc2ZlcihjbGllbnQtPmFkYXB0ZXIsIG1zZ3MsIG5tc2dzKTsNCiB3aGlsZSAo aS0tID4gMCkgew0KIGlmIChyZXMgPj0gMCAmJiAobXNnc1tpXS5mbGFncyAmIEkyQ19NX1JEKSkg ew0KK2lmIChtc2dzW2ldLmxlbiA+IG9yaWdfbGVuc1tpXSkNCittc2dzW2ldLmxlbiA9IG9yaWdf bGVuc1tpXTsNCiBpZiAoY29weV90b191c2VyKGRhdGFfcHRyc1tpXSwgbXNnc1tpXS5idWYsDQog IG1zZ3NbaV0ubGVuKSkNCiByZXMgPSAtRUZBVUxUOw0KQEAgLTMxMyw2ICszMjQsNyBAQCBzdGF0 aWMgbm9pbmxpbmUgaW50IGkyY2Rldl9pb2N0bF9yZHdyKHN0cnVjdCBpMmNfY2xpZW50ICpjbGll bnQsDQoga2ZyZWUobXNnc1tpXS5idWYpOw0KIH0NCiBrZnJlZShkYXRhX3B0cnMpOw0KK2tmcmVl KG9yaWdfbGVucyk7DQogcmV0dXJuIHJlczsNCiB9DQoNCi0tDQoyLjUwLjENCiMvKioqKioqsb7T yrz+vLDG5Li9vP66rNPQ0KHD17mry761xLGjw9zQxc+io6y99s/e09q3osvNuPjJz8PmtdjWt9bQ wdCz9rXEuPbIy7vyyLrX6aGjvfvWucjOus7G5Mv7yMvS1MjOus7Qzsq9yrnTw6OosPzAqLWrsrvP 3tPayKuyv7vysr+31rXY0LnCtqGiuLTWxqGiu/LJoreio6mxvtPKvP7W0LXE0MXPoqGjyOe5+8T6 tO3K1cHLsb7Tyrz+o6zH68T6waK8tLXnu7C78tPKvP7NqNaqt6K8/sjLsqLJvrP9sb7Tyrz+o6Eg VGhpcyBlLW1haWwgYW5kIGl0cyBhdHRhY2htZW50cyBjb250YWluIGNvbmZpZGVudGlhbCBpbmZv cm1hdGlvbiBmcm9tIFhJQU9NSSwgd2hpY2ggaXMgaW50ZW5kZWQgb25seSBmb3IgdGhlIHBlcnNv biBvciBlbnRpdHkgd2hvc2UgYWRkcmVzcyBpcyBsaXN0ZWQgYWJvdmUuIEFueSB1c2Ugb2YgdGhl IGluZm9ybWF0aW9uIGNvbnRhaW5lZCBoZXJlaW4gaW4gYW55IHdheSAoaW5jbHVkaW5nLCBidXQg bm90IGxpbWl0ZWQgdG8sIHRvdGFsIG9yIHBhcnRpYWwgZGlzY2xvc3VyZSwgcmVwcm9kdWN0aW9u LCBvciBkaXNzZW1pbmF0aW9uKSBieSBwZXJzb25zIG90aGVyIHRoYW4gdGhlIGludGVuZGVkIHJl Y2lwaWVudChzKSBpcyBwcm9oaWJpdGVkLiBJZiB5b3UgcmVjZWl2ZSB0aGlzIGUtbWFpbCBpbiBl cnJvciwgcGxlYXNlIG5vdGlmeSB0aGUgc2VuZGVyIGJ5IHBob25lIG9yIGVtYWlsIGltbWVkaWF0 ZWx5IGFuZCBkZWxldGUgaXQhKioqKioqLyMNCg==