diff for duplicates of <1479048126.13439.8.camel@intel.com> diff --git a/a/1.txt b/N1/1.txt index d9aa2d2..8225718 100644 --- a/a/1.txt +++ b/N1/1.txt @@ -1,70 +1,38 @@ -On Sat, 2016-11-12 at 14:43 +0000, Jonathan Cameron wrote: -> On 11/11/16 00:58, Song Hongyan wrote: -> > -> > Initialize user buffer with 0s. This will avoid random data in the -> > buffer, -> > when the user buffer size is bigger than the actual report size. -> > -> > Signed-off-by: Song Hongyan <hongyan.song@intel.com> -> Please describe the result of this bug in the description. -> Why does it matter? -Hongyan, - -Please resubmit. - - - -The issue is: - -When user tried to read some fields like hysteresis from IIO sysfs on -some systems, it fails. The reason is that this field is a byte field -and caller of sensor_hub_get_feature() passes a buffer of 4 bytes. Here -the function sensor_hub_get_feature() copies the single byte from the -report to the caller buffer and returns "1" as the number of bytes -copied. So caller can use the return value. - -But this is done by multiple callers, so if we just change the -sensor_hub_get_feature so that caller buffer is initialized with 0s -then we don't to change all functions. - - - -> -> Without that info, it's hard to judge what path this should take -> into mainline or whether the fix needs to be marked for stable. -IMO this is not an urgent fix and queued for next kernel release. - - -> Thanks, -> -> Jonathan -> > -> > --- -> > Changes in v2: -> > -clear memory in get_feature() instead of set_feature() -s/get_feature()/sensor_hub_get_feature() - - -Thanks, -Srinivas - -> > -> > drivers/hid/hid-sensor-hub.c | 1 + -> > 1 file changed, 1 insertion(+) -> > -> > diff --git a/drivers/hid/hid-sensor-hub.c b/drivers/hid/hid-sensor- -> > hub.c -> > index 658a607..b74d954 100644 -> > --- a/drivers/hid/hid-sensor-hub.c -> > +++ b/drivers/hid/hid-sensor-hub.c -> > @@ -252,6 +252,7 @@ int sensor_hub_get_feature(struct -> > hid_sensor_hub_device *hsdev, u32 report_id, -> > int report_size; -> > int ret = 0; -> > -> > + memset(buffer, 0, buffer_size); -> > mutex_lock(&data->mutex); -> > report = sensor_hub_report(report_id, hsdev->hdev, -> > HID_FEATURE_REPORT); -> > if (!report || (field_index >= report->maxfield) || -> > +T24gU2F0LCAyMDE2LTExLTEyIGF0IDE0OjQzICswMDAwLCBKb25hdGhhbiBDYW1lcm9uIHdyb3Rl +Og0KPiBPbiAxMS8xMS8xNiAwMDo1OCwgU29uZyBIb25neWFuIHdyb3RlOg0KPiA+IA0KPiA+IElu +aXRpYWxpemUgdXNlciBidWZmZXIgd2l0aCAwcy4gVGhpcyB3aWxsIGF2b2lkIHJhbmRvbSBkYXRh +IGluIHRoZQ0KPiA+IGJ1ZmZlciwNCj4gPiB3aGVuIHRoZSB1c2VyIGJ1ZmZlciBzaXplIGlzIGJp +Z2dlciB0aGFuIHRoZSBhY3R1YWwgcmVwb3J0IHNpemUuDQo+ID4gDQo+ID4gU2lnbmVkLW9mZi1i +eTogU29uZyBIb25neWFuIDxob25neWFuLnNvbmdAaW50ZWwuY29tPg0KPiBQbGVhc2UgZGVzY3Jp +YmUgdGhlIHJlc3VsdCBvZiB0aGlzIGJ1ZyBpbiB0aGUgZGVzY3JpcHRpb24uDQo+IFdoeSBkb2Vz +IGl0IG1hdHRlcj8NCkhvbmd5YW4sDQoNClBsZWFzZSByZXN1Ym1pdC4NCg0KDQoNClRoZSBpc3N1 +ZSBpczoNCg0KV2hlbiB1c2VyIHRyaWVkIHRvIHJlYWQgc29tZSBmaWVsZHMgbGlrZSBoeXN0ZXJl +c2lzIGZyb20gSUlPIHN5c2ZzIG9uDQpzb21lIHN5c3RlbXMsIGl0IGZhaWxzLiBUaGUgcmVhc29u +IGlzIHRoYXQgdGhpcyBmaWVsZCBpcyBhIGJ5dGUgZmllbGQNCmFuZCBjYWxsZXIgb2Ygc2Vuc29y +X2h1Yl9nZXRfZmVhdHVyZSgpIHBhc3NlcyBhIGJ1ZmZlciBvZiA0IGJ5dGVzLiBIZXJlDQp0aGUg +ZnVuY3Rpb24gc2Vuc29yX2h1Yl9nZXRfZmVhdHVyZSgpIGNvcGllcyB0aGUgc2luZ2xlIGJ5dGUg +ZnJvbSB0aGUNCnJlcG9ydCB0byB0aGUgY2FsbGVyIGJ1ZmZlciBhbmQgcmV0dXJucyAiMSIgYXMg +dGhlIG51bWJlciBvZiBieXRlcw0KY29waWVkLiBTbyBjYWxsZXIgY2FuIHVzZSB0aGUgcmV0dXJu +IHZhbHVlLg0KDQpCdXQgdGhpcyBpcyBkb25lIGJ5IG11bHRpcGxlIGNhbGxlcnMsIHNvIGlmIHdl +IGp1c3QgY2hhbmdlIHRoZQ0Kc2Vuc29yX2h1Yl9nZXRfZmVhdHVyZSBzbyB0aGF0IGNhbGxlciBi +dWZmZXIgaXMgaW5pdGlhbGl6ZWQgd2l0aCAwcw0KdGhlbiB3ZSBkb24ndCB0byBjaGFuZ2UgYWxs +IGZ1bmN0aW9ucy7CoA0KDQoNCg0KPiANCj4gV2l0aG91dCB0aGF0IGluZm8sIGl0J3MgaGFyZCB0 +byBqdWRnZSB3aGF0IHBhdGggdGhpcyBzaG91bGQgdGFrZQ0KPiBpbnRvIG1haW5saW5lIG9yIHdo +ZXRoZXIgdGhlIGZpeCBuZWVkcyB0byBiZSBtYXJrZWQgZm9yIHN0YWJsZS4NCklNTyB0aGlzIGlz +IG5vdCBhbiB1cmdlbnQgZml4IGFuZCBxdWV1ZWQgZm9yIG5leHQga2VybmVsIHJlbGVhc2UuDQoN +Cg0KPiBUaGFua3MsDQo+IA0KPiBKb25hdGhhbg0KPiA+IA0KPiA+IC0tLQ0KPiA+IENoYW5nZXMg +aW4gdjI6DQo+ID4gwqDCoMKgwqAtY2xlYXIgbWVtb3J5IGluIGdldF9mZWF0dXJlKCkgaW5zdGVh +ZCBvZiBzZXRfZmVhdHVyZSgpDQpzL2dldF9mZWF0dXJlKCkvc2Vuc29yX2h1Yl9nZXRfZmVhdHVy +ZSgpDQoNCg0KVGhhbmtzLA0KU3Jpbml2YXMNCg0KPiA+IA0KPiA+IMKgZHJpdmVycy9oaWQvaGlk +LXNlbnNvci1odWIuYyB8IDEgKw0KPiA+IMKgMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCsp +DQo+ID4gDQo+ID4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvaGlkL2hpZC1zZW5zb3ItaHViLmMgYi9k +cml2ZXJzL2hpZC9oaWQtc2Vuc29yLQ0KPiA+IGh1Yi5jDQo+ID4gaW5kZXggNjU4YTYwNy4uYjc0 +ZDk1NCAxMDA2NDQNCj4gPiAtLS0gYS9kcml2ZXJzL2hpZC9oaWQtc2Vuc29yLWh1Yi5jDQo+ID4g +KysrIGIvZHJpdmVycy9oaWQvaGlkLXNlbnNvci1odWIuYw0KPiA+IEBAIC0yNTIsNiArMjUyLDcg +QEAgaW50IHNlbnNvcl9odWJfZ2V0X2ZlYXR1cmUoc3RydWN0DQo+ID4gaGlkX3NlbnNvcl9odWJf +ZGV2aWNlICpoc2RldiwgdTMyIHJlcG9ydF9pZCwNCj4gPiDCoAlpbnQgcmVwb3J0X3NpemU7DQo+ +ID4gwqAJaW50IHJldCA9IDA7DQo+ID4gwqANCj4gPiArCW1lbXNldChidWZmZXIsIDAsIGJ1ZmZl +cl9zaXplKTsNCj4gPiDCoAltdXRleF9sb2NrKCZkYXRhLT5tdXRleCk7DQo+ID4gwqAJcmVwb3J0 +ID0gc2Vuc29yX2h1Yl9yZXBvcnQocmVwb3J0X2lkLCBoc2Rldi0+aGRldiwNCj4gPiBISURfRkVB +VFVSRV9SRVBPUlQpOw0KPiA+IMKgCWlmICghcmVwb3J0IHx8IChmaWVsZF9pbmRleCA+PSByZXBv +cnQtPm1heGZpZWxkKSB8fA0KPiA+IA== diff --git a/a/content_digest b/N1/content_digest index d1f13bb..0f4cfd5 100644 --- a/a/content_digest +++ b/N1/content_digest @@ -1,86 +1,53 @@ "ref\01478825923-12153-1-git-send-email-hongyan.song@intel.com\0" "ref\0e64c6b31-739c-a6ab-cd1e-6637809feae4@kernel.org\0" - "ref\0e64c6b31-739c-a6ab-cd1e-6637809feae4-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org\0" - "From\0Pandruvada, Srinivas <srinivas.pandruvada-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>\0" + "From\0Pandruvada, Srinivas <srinivas.pandruvada@intel.com>\0" "Subject\0Re: [PATCH v2] hid: hid-sensor-hub: clear memory to avoid random data\0" "Date\0Sun, 13 Nov 2016 14:45:09 +0000\0" - "To\0linux-input-u79uwXL29TY76Z2rM5mHXA@public.gmane.org <linux-input-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>" + "To\0linux-input@vger.kernel.org <linux-input@vger.kernel.org>" Song - Hongyan <hongyan.song-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org> - linux-iio-u79uwXL29TY76Z2rM5mHXA@public.gmane.org <linux-iio-u79uwXL29TY76Z2rM5mHXA@public.gmane.org> - " jic23-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org <jic23-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>\0" - "Cc\0jikos-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org <jikos-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>\0" + Hongyan <hongyan.song@intel.com> + linux-iio@vger.kernel.org <linux-iio@vger.kernel.org> + " jic23@kernel.org <jic23@kernel.org>\0" + "Cc\0jikos@kernel.org <jikos@kernel.org>\0" "\00:1\0" "b\0" - "On Sat, 2016-11-12 at 14:43 +0000, Jonathan Cameron wrote:\n" - "> On 11/11/16 00:58, Song Hongyan wrote:\n" - "> > \n" - "> > Initialize user buffer with 0s. This will avoid random data in the\n" - "> > buffer,\n" - "> > when the user buffer size is bigger than the actual report size.\n" - "> > \n" - "> > Signed-off-by: Song Hongyan <hongyan.song@intel.com>\n" - "> Please describe the result of this bug in the description.\n" - "> Why does it matter?\n" - "Hongyan,\n" - "\n" - "Please resubmit.\n" - "\n" - "\n" - "\n" - "The issue is:\n" - "\n" - "When user tried to read some fields like hysteresis from IIO sysfs on\n" - "some systems, it fails. The reason is that this field is a byte field\n" - "and caller of sensor_hub_get_feature() passes a buffer of 4 bytes. Here\n" - "the function sensor_hub_get_feature() copies the single byte from the\n" - "report to the caller buffer and returns \"1\" as the number of bytes\n" - "copied. So caller can use the return value.\n" - "\n" - "But this is done by multiple callers, so if we just change the\n" - "sensor_hub_get_feature so that caller buffer is initialized with 0s\n" - "then we don't to change all functions.\302\240\n" - "\n" - "\n" - "\n" - "> \n" - "> Without that info, it's hard to judge what path this should take\n" - "> into mainline or whether the fix needs to be marked for stable.\n" - "IMO this is not an urgent fix and queued for next kernel release.\n" - "\n" - "\n" - "> Thanks,\n" - "> \n" - "> Jonathan\n" - "> > \n" - "> > ---\n" - "> > Changes in v2:\n" - "> > \302\240\302\240\302\240\302\240-clear memory in get_feature() instead of set_feature()\n" - "s/get_feature()/sensor_hub_get_feature()\n" - "\n" - "\n" - "Thanks,\n" - "Srinivas\n" - "\n" - "> > \n" - "> > \302\240drivers/hid/hid-sensor-hub.c | 1 +\n" - "> > \302\2401 file changed, 1 insertion(+)\n" - "> > \n" - "> > diff --git a/drivers/hid/hid-sensor-hub.c b/drivers/hid/hid-sensor-\n" - "> > hub.c\n" - "> > index 658a607..b74d954 100644\n" - "> > --- a/drivers/hid/hid-sensor-hub.c\n" - "> > +++ b/drivers/hid/hid-sensor-hub.c\n" - "> > @@ -252,6 +252,7 @@ int sensor_hub_get_feature(struct\n" - "> > hid_sensor_hub_device *hsdev, u32 report_id,\n" - "> > \302\240\tint report_size;\n" - "> > \302\240\tint ret = 0;\n" - "> > \302\240\n" - "> > +\tmemset(buffer, 0, buffer_size);\n" - "> > \302\240\tmutex_lock(&data->mutex);\n" - "> > \302\240\treport = sensor_hub_report(report_id, hsdev->hdev,\n" - "> > HID_FEATURE_REPORT);\n" - "> > \302\240\tif (!report || (field_index >= report->maxfield) ||\n" - > > + "T24gU2F0LCAyMDE2LTExLTEyIGF0IDE0OjQzICswMDAwLCBKb25hdGhhbiBDYW1lcm9uIHdyb3Rl\n" + "Og0KPiBPbiAxMS8xMS8xNiAwMDo1OCwgU29uZyBIb25neWFuIHdyb3RlOg0KPiA+IA0KPiA+IElu\n" + "aXRpYWxpemUgdXNlciBidWZmZXIgd2l0aCAwcy4gVGhpcyB3aWxsIGF2b2lkIHJhbmRvbSBkYXRh\n" + "IGluIHRoZQ0KPiA+IGJ1ZmZlciwNCj4gPiB3aGVuIHRoZSB1c2VyIGJ1ZmZlciBzaXplIGlzIGJp\n" + "Z2dlciB0aGFuIHRoZSBhY3R1YWwgcmVwb3J0IHNpemUuDQo+ID4gDQo+ID4gU2lnbmVkLW9mZi1i\n" + "eTogU29uZyBIb25neWFuIDxob25neWFuLnNvbmdAaW50ZWwuY29tPg0KPiBQbGVhc2UgZGVzY3Jp\n" + "YmUgdGhlIHJlc3VsdCBvZiB0aGlzIGJ1ZyBpbiB0aGUgZGVzY3JpcHRpb24uDQo+IFdoeSBkb2Vz\n" + "IGl0IG1hdHRlcj8NCkhvbmd5YW4sDQoNClBsZWFzZSByZXN1Ym1pdC4NCg0KDQoNClRoZSBpc3N1\n" + "ZSBpczoNCg0KV2hlbiB1c2VyIHRyaWVkIHRvIHJlYWQgc29tZSBmaWVsZHMgbGlrZSBoeXN0ZXJl\n" + "c2lzIGZyb20gSUlPIHN5c2ZzIG9uDQpzb21lIHN5c3RlbXMsIGl0IGZhaWxzLiBUaGUgcmVhc29u\n" + "IGlzIHRoYXQgdGhpcyBmaWVsZCBpcyBhIGJ5dGUgZmllbGQNCmFuZCBjYWxsZXIgb2Ygc2Vuc29y\n" + "X2h1Yl9nZXRfZmVhdHVyZSgpIHBhc3NlcyBhIGJ1ZmZlciBvZiA0IGJ5dGVzLiBIZXJlDQp0aGUg\n" + "ZnVuY3Rpb24gc2Vuc29yX2h1Yl9nZXRfZmVhdHVyZSgpIGNvcGllcyB0aGUgc2luZ2xlIGJ5dGUg\n" + "ZnJvbSB0aGUNCnJlcG9ydCB0byB0aGUgY2FsbGVyIGJ1ZmZlciBhbmQgcmV0dXJucyAiMSIgYXMg\n" + "dGhlIG51bWJlciBvZiBieXRlcw0KY29waWVkLiBTbyBjYWxsZXIgY2FuIHVzZSB0aGUgcmV0dXJu\n" + "IHZhbHVlLg0KDQpCdXQgdGhpcyBpcyBkb25lIGJ5IG11bHRpcGxlIGNhbGxlcnMsIHNvIGlmIHdl\n" + "IGp1c3QgY2hhbmdlIHRoZQ0Kc2Vuc29yX2h1Yl9nZXRfZmVhdHVyZSBzbyB0aGF0IGNhbGxlciBi\n" + "dWZmZXIgaXMgaW5pdGlhbGl6ZWQgd2l0aCAwcw0KdGhlbiB3ZSBkb24ndCB0byBjaGFuZ2UgYWxs\n" + "IGZ1bmN0aW9ucy7CoA0KDQoNCg0KPiANCj4gV2l0aG91dCB0aGF0IGluZm8sIGl0J3MgaGFyZCB0\n" + "byBqdWRnZSB3aGF0IHBhdGggdGhpcyBzaG91bGQgdGFrZQ0KPiBpbnRvIG1haW5saW5lIG9yIHdo\n" + "ZXRoZXIgdGhlIGZpeCBuZWVkcyB0byBiZSBtYXJrZWQgZm9yIHN0YWJsZS4NCklNTyB0aGlzIGlz\n" + "IG5vdCBhbiB1cmdlbnQgZml4IGFuZCBxdWV1ZWQgZm9yIG5leHQga2VybmVsIHJlbGVhc2UuDQoN\n" + "Cg0KPiBUaGFua3MsDQo+IA0KPiBKb25hdGhhbg0KPiA+IA0KPiA+IC0tLQ0KPiA+IENoYW5nZXMg\n" + "aW4gdjI6DQo+ID4gwqDCoMKgwqAtY2xlYXIgbWVtb3J5IGluIGdldF9mZWF0dXJlKCkgaW5zdGVh\n" + "ZCBvZiBzZXRfZmVhdHVyZSgpDQpzL2dldF9mZWF0dXJlKCkvc2Vuc29yX2h1Yl9nZXRfZmVhdHVy\n" + "ZSgpDQoNCg0KVGhhbmtzLA0KU3Jpbml2YXMNCg0KPiA+IA0KPiA+IMKgZHJpdmVycy9oaWQvaGlk\n" + "LXNlbnNvci1odWIuYyB8IDEgKw0KPiA+IMKgMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCsp\n" + "DQo+ID4gDQo+ID4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvaGlkL2hpZC1zZW5zb3ItaHViLmMgYi9k\n" + "cml2ZXJzL2hpZC9oaWQtc2Vuc29yLQ0KPiA+IGh1Yi5jDQo+ID4gaW5kZXggNjU4YTYwNy4uYjc0\n" + "ZDk1NCAxMDA2NDQNCj4gPiAtLS0gYS9kcml2ZXJzL2hpZC9oaWQtc2Vuc29yLWh1Yi5jDQo+ID4g\n" + "KysrIGIvZHJpdmVycy9oaWQvaGlkLXNlbnNvci1odWIuYw0KPiA+IEBAIC0yNTIsNiArMjUyLDcg\n" + "QEAgaW50IHNlbnNvcl9odWJfZ2V0X2ZlYXR1cmUoc3RydWN0DQo+ID4gaGlkX3NlbnNvcl9odWJf\n" + "ZGV2aWNlICpoc2RldiwgdTMyIHJlcG9ydF9pZCwNCj4gPiDCoAlpbnQgcmVwb3J0X3NpemU7DQo+\n" + "ID4gwqAJaW50IHJldCA9IDA7DQo+ID4gwqANCj4gPiArCW1lbXNldChidWZmZXIsIDAsIGJ1ZmZl\n" + "cl9zaXplKTsNCj4gPiDCoAltdXRleF9sb2NrKCZkYXRhLT5tdXRleCk7DQo+ID4gwqAJcmVwb3J0\n" + "ID0gc2Vuc29yX2h1Yl9yZXBvcnQocmVwb3J0X2lkLCBoc2Rldi0+aGRldiwNCj4gPiBISURfRkVB\n" + "VFVSRV9SRVBPUlQpOw0KPiA+IMKgCWlmICghcmVwb3J0IHx8IChmaWVsZF9pbmRleCA+PSByZXBv\n" + cnQtPm1heGZpZWxkKSB8fA0KPiA+IA== -b542e86c0b641f491a49686153bf70a5f9d9ba188b295ba6d724cdfb14ea1a46 +6b45e39d192c8be3814309a1d64e8f5d3f54475121430d2b2ea2d8eb85cce5a1
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.