diff for duplicates of <1468261650.20877.14.camel@intel.com> diff --git a/a/1.txt b/N1/1.txt index 50e4026..e2c1e00 100644 --- a/a/1.txt +++ b/N1/1.txt @@ -1,105 +1,163 @@ -T24gTW9uLCAyMDE2LTA3LTExIGF0IDE0OjE5IC0wNDAwLCBQcmFyaXQgQmhhcmdhdmEgd3JvdGU6 -DQo+IA0KPiBPbiAwNy8xMS8yMDE2IDAyOjAwIFBNLCBFbW1hbnVlbCBHcnVtYmFjaCB3cm90ZToN -Cj4gPiBPbiBNb24sIEp1bCAxMSwgMjAxNiBhdCA2OjE4IFBNLCBQcmFyaXQgQmhhcmdhdmEgPHBy -YXJpdEByZWRoYXQuY29tDQo+ID4gPiB3cm90ZToNCj4gPiA+IA0KPiA+ID4gRGlkbid0IGdldCBh -bnkgZmVlZGJhY2sgb3IgcmV2aWV3IGNvbW1lbnRzIG9uIHRoaXMgcGF0Y2guIA0KPiA+ID4gIFJl -c2VuZGluZyAuLi4NCj4gPiA+IA0KPiA+ID4gUC4NCj4gPiANCj4gPiBUaGlzIGNoYW5nZSBpcyBv -YnZpb3VzbHkgY29tcGxldGVseSBicm9rZW4uIEl0IHNpbXBseSBkaXNhYmxlcyB0aGUNCj4gPiBy -ZWdpc3RyYXRpb24gdG8gdGhlcm1hbCB6b25lIGNvcmUuDQo+IA0KPiBObyBpdCBpcyBub3QgYnJv -a2VuLCBhbmQgeWVzLCB0aGF0IGlzIGV4YWN0bHkgd2hhdCBzaG91bGQgaGFwcGVuIElNTy4NCj4g -DQo+IFRoZSBwcm9ibGVtIGlzIHRoYXQgdGhlIGl3bHdpZmkgZHJpdmVyIGltcGxlbWVudHMgdGhl -IHRoZXJtYWwgem9uZQ0KPiBldmVuIHdoZW4gdGhlDQo+IGRldmljZSBkb2Vzbid0IHN1cHBvcnQg -aXQuDQoNCldlIGltcGxlbWVudCB0aGVybWFsIHpvbmUgYmVjYXVzZSB3ZSBkbyBzdXBwb3J0IGl0 -LCBidXQgdGhlIHByb2JsZW0gaXMNCnRoYXQgd2UgbmVlZCB0aGUgZmlybXdhcmUgdG8gYmUgbG9h -ZGVkIGZvciB0aGF0LiBTbyB5b3UgY2FuIGFyZ3VlIHRoYXQNCndlIHNob3VsZCByZWdpc3RlciAq -bGF0ZXIqIHdoZW4gdGhlIGZpcm13YXJlIGlzIGxvYWRlZC4gQnV0IHRoaXMgaXMNCnJlYWxseSBu -b3QgaGVscGluZyBhbGwgdGhhdCBtdWNoIGJlY2F1c2UgdGhlIGZpcm13YXJlIGNhbiBhbHNvIGJl -DQpzdG9wcGVkIGF0IGFueSB0aW1lLiBTbyB5b3UnZCB3YW50IHVzIHRvIHJlZ2lzdGVyIC8gdW5y -ZWdpc3RlciB0aGUNCnRoZXJtYWwgem9uZSBhbnl0aW1lIHRoZSBmaXJtd2FyZSBpcyBsb2FkZWQg -LyB1bmxvYWRlZD8NCkkgZ3Vlc3MgdGhhdCB3b3JrcywgYnV0IGl0IHNlZW1zIHdyb25nIHRvIG1l -LiBVc3VhbGx5LCByZWdpc3RyYXRpb24NCnNob3VsZCBoYXBwZW4gb25seSB1cG9uIElOSVQsIGFu -ZCB5ZXMsIGF0IHRoYXQgdGltZSB0aGUgZmlybXdhcmUgaXMgbm90DQpyZWFkeSB0byBwcm92aWRl -IHRoZSBpbmZvcm1hdGlvbiB5ZXQuDQpNYXliZSByZXR1cm5pbmcgLUVCVVNZIHdvdWxkIGhlbHAg -bG0tc2Vuc29ycyBub3QgdG8gZ2V0IGNvbmZ1c2VkPw0KDQo+IA0KPiBBcyBjYW4gYmUgc2VlbiBp -biB0aGUgY3VycmVudCBjb2RlIGJhc2UsIGl3bF9tdm1fdHpvbmVfZ2V0X3RlbXAoKQ0KPiB3aWxs -IHJldHVybg0KPiAtRUlPIDEwMCUgb2YgdGhlIHRpbWUgd2hlbiB0aGUgZmlybXdhcmUgZG9lc24n -dCBzdXBwb3J0IHJlYWRpbmcgdGhlDQo+IHRlbXBlcmF0dXJlWzFdLiAgSW4gdGhpcyBjYXNlIGEg -cmVhZCBvZiBzeXNmcyB3aWxsIHJlc3VsdCBpbiBhIHJldHVybg0KPiBvZiAtRUlPLA0KPiBhbmQg -dGhpcyBicmVha3MgZXhpc3RpbmcgdXNlcnNwYWNlIHByb2dyYW1zIHN1Y2ggYXMgbG0tc2Vuc29y -cyAod2hpY2gNCj4gYnkgYWxsDQo+IGFjY291bnRzIGlzIGJhZCB0byBkbykuDQoNClJpZ2h0LCBi -dXQgSSBkb24ndCB1bmRlcnN0YW5kIHdoeSB0aGUgdXNlcnNwYWNlIGlzIGJyb2tlbiBiZWNhdXNl -IG9mDQp0aGF0PyBVbmxlc3Mgd2UgcmVnaXN0ZXIgLyB1bnJlZ2lzdGVyIGFueXRpbWUgdGhlIGZp -cm13YXJlIGlzIGxvYWRlZCwgSQ0KZG9uJ3Qgc2VlIGFueSBwcm9wZXIgd2F5IHRvIGZpeCB0aGlz -LiBBbmQgeWVzLCBJJ2QgZXhwZWN0IHRoZSB1c2Vyc3BhY2UNCnRvIGhhbmRsZSBncmFjZWZ1bGx5 -IGZhaWx1cmVzIGluIGl0cyByZXF1ZXN0cy4NCg0KPiANCj4gTm90ZSB0aGF0IGluIG15IHBhdGNo -IEkgaGF2ZSByZW1vdmVkIHRoZSAtRUlPIHJldHVybiBpbiBmYXZvciBvZiBub3QNCj4gcmVnaXN0 -ZXJpbmcNCj4gdGhlIG5vbi1leGlzdGVudCB0aGVybWFsIHpvbmUuICBJJ20gbm90IHJlbW92aW5n -IGFueSBmdW5jdGlvbmFsaXR5IGJ5DQo+IGNoYW5naW5nDQo+IHRoaXMsIG5vciBhbSBJIGFkZGlu -ZyBmdW5jdGlvbmFsaXR5LiAgSW4gYm90aCBjYXNlcyB0aGUgdGhlcm1hbCB6b25lDQo+IGlzIG5v -dA0KPiBmdW5jdGlvbmFsLCBhbmQgd2l0aCBteSBwYXRjaCB1c2Vyc3BhY2UgY29udGludWVzIHRv -IHdvcmsuDQoNCllvdSBhcmUgcmVtb3ZpbmcgdGhlIHRoZXJtYWwgem9uZSBmdW5jdGlvbmFsaXR5 -IHNpbmNlIGV2ZW4gd2hlbiB0aGUNCmZpcm13YXJlIHdpbGwgYmUgbG9hZGVkICh3aGljaCB0eXBp -Y2FsbHkgaGFwcGVucyBmYWlybHkgcXVpY2tseSksDQp0aGVybWFsIHpvbmUgd29uJ3Qgd29yay4N -Cg0KPiANCj4gUC4NCj4gDQo+IFsxXSBpd2xfbXZtX3R6b25lX3NldF90cmlwX3RlbXAoKSBhbHNv -IHJldHVybnMgLUVJTywgc28gc2V0dGluZyBhbmQNCj4gZ2V0dGluZyBvZg0KPiB0aGUgdGVtcGVy -YXR1cmUgaXMgbm9uLWZ1bmN0aW9uYWwuDQo+IA0KPiANCj4gPiANCj4gPiA+IA0KPiA+ID4gLS0t -ODwtLS0NCj4gPiA+IA0KPiA+ID4gVGhlIGl3bHdpZmkgZHJpdmVyIGltcGxlbWVudHMgYSB0aGVy -bWFsIHpvbmUgYW5kIGh3bW9uIGRldmljZSwNCj4gPiA+IGJ1dA0KPiA+ID4gcmV0dXJucyAtRUlP -IG9uIHRlbXBlcmF0dXJlIHJlYWRzIGlmIHRoZSBmaXJtd2FyZSBpc24ndCBsb2FkZWQuIA0KPiA+ -ID4gIFRoaXMNCj4gPiA+IHJlc3VsdHMgaW4gdGhlIGVycm9yDQo+ID4gPiANCj4gPiA+IGl3bHdp -ZmktdmlydHVhbC0wDQo+ID4gPiBBZGFwdGVyOiBWaXJ0dWFsIGRldmljZQ0KPiA+ID4gRVJST1I6 -IENhbid0IGdldCB2YWx1ZSBvZiBzdWJmZWF0dXJlIHRlbXAxX2lucHV0OiBJL08gZXJyb3INCj4g -PiA+IHRlbXAxOiAgICAgICAgICAgIE4vQQ0KPiA+ID4gDQo+ID4gPiBiZWluZyBvdXRwdXQgd2hl -biB1c2luZyBzZW5zb3JzIGZyb20gdGhlIGxtLXNlbnNvcnMgcGFja2FnZS4gDQo+ID4gPiAgU2lu -Y2UNCj4gPiA+IHRoZSB0ZW1wZXJhdHVyZSBjYW5ub3QgYmUgcmVhZCB1bmxlc3MgdGhlIHVjb2Rl -IGlzIGxvYWRlZCB0aGVyZQ0KPiA+ID4gaXMgbm8NCj4gPiA+IHJlYXNvbiB0byBhZGQgdGhlIGlu -dGVyZmFjZSBvbmx5IHRvIGhhdmUgaXQgcmV0dXJuIGFuIGVycm9yIDEwMCUNCj4gPiA+IG9mDQo+ -ID4gPiB0aGUgdGltZS4NCj4gPiA+IA0KPiA+ID4gVGhpcyBwYXRjaCBtb3ZlcyB0aGUgZmlybXdh -cmUgY2hlY2sgdG8NCj4gPiA+IGl3bF9tdm1fdGhlcm1hbF96b25lX3JlZ2lzdGVyKCkgYW5kDQo+ -ID4gPiBzdG9wcyB0aGUgdGhlcm1hbCB6b25lIGZyb20gYmVpbmcgY3JlYXRlZCBpZiB0aGUgdWNv -ZGUgaGFzbid0DQo+ID4gPiBiZWVuIGxvYWRlZC4NCj4gPiA+IA0KPiA+ID4gU2lnbmVkLW9mZi1i -eTogUHJhcml0IEJoYXJnYXZhIDxwcmFyaXRAcmVkaGF0LmNvbT4NCj4gPiA+IENjOiBKb2hhbm5l -cyBCZXJnIDxqb2hhbm5lcy5iZXJnQGludGVsLmNvbT4NCj4gPiA+IENjOiBFbW1hbnVlbCBHcnVt -YmFjaCA8ZW1tYW51ZWwuZ3J1bWJhY2hAaW50ZWwuY29tPg0KPiA+ID4gQ2M6IEx1Y2EgQ29lbGhv -IDxsdWNpYW5vLmNvZWxob0BpbnRlbC5jb20+DQo+ID4gPiBDYzogSW50ZWwgTGludXggV2lyZWxl -c3MgPGxpbnV4d2lmaUBpbnRlbC5jb20+DQo+ID4gPiBDYzogS2FsbGUgVmFsbyA8a3ZhbG9AY29k -ZWF1cm9yYS5vcmc+DQo+ID4gPiBDYzogQ2hheWEgUmFjaGVsIEl2Z2kgPGNoYXlhLnJhY2hlbC5p -dmdpQGludGVsLmNvbT4NCj4gPiA+IENjOiBTYXJhIFNoYXJvbiA8c2FyYS5zaGFyb25AaW50ZWwu -Y29tPg0KPiA+ID4gQ2M6IGxpbnV4LXdpcmVsZXNzQHZnZXIua2VybmVsLm9yZw0KPiA+ID4gQ2M6 -IG5ldGRldkB2Z2VyLmtlcm5lbC5vcmcNCj4gPiA+IC0tLQ0KPiA+ID4gIGRyaXZlcnMvbmV0L3dp -cmVsZXNzL2ludGVsL2l3bHdpZmkvbXZtL3R0LmMgfCAgIDEzICsrKy0tLS0tLS0tLS0NCj4gPiA+ -ICAxIGZpbGUgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAxMCBkZWxldGlvbnMoLSkNCj4gPiA+ -IA0KPiA+ID4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvbmV0L3dpcmVsZXNzL2ludGVsL2l3bHdpZmkv -bXZtL3R0LmMNCj4gPiA+IGIvZHJpdmVycy9uZXQvd2lyZWxlc3MvaW50ZWwvaXdsd2lmaS9tdm0v -dHQuYw0KPiA+ID4gaW5kZXggNThmYzdiM2M3MTFjLi42NDgwMjY1OTcxMWYgMTAwNjQ0DQo+ID4g -PiAtLS0gYS9kcml2ZXJzL25ldC93aXJlbGVzcy9pbnRlbC9pd2x3aWZpL212bS90dC5jDQo+ID4g -PiArKysgYi9kcml2ZXJzL25ldC93aXJlbGVzcy9pbnRlbC9pd2x3aWZpL212bS90dC5jDQo+ID4g -PiBAQCAtNjM0LDExICs2MzQsNiBAQCBzdGF0aWMgaW50IGl3bF9tdm1fdHpvbmVfZ2V0X3RlbXAo -c3RydWN0DQo+ID4gPiB0aGVybWFsX3pvbmVfZGV2aWNlICpkZXZpY2UsDQo+ID4gPiANCj4gPiA+ -ICAgICAgICAgbXV0ZXhfbG9jaygmbXZtLT5tdXRleCk7DQo+ID4gPiANCj4gPiA+IC0gICAgICAg -aWYgKCFtdm0tPnVjb2RlX2xvYWRlZCB8fCAhKG12bS0+Y3VyX3Vjb2RlID09DQo+ID4gPiBJV0xf -VUNPREVfUkVHVUxBUikpIHsNCj4gPiA+IC0gICAgICAgICAgICAgICByZXQgPSAtRUlPOw0KPiA+ -ID4gLSAgICAgICAgICAgICAgIGdvdG8gb3V0Ow0KPiA+ID4gLSAgICAgICB9DQo+ID4gPiAtDQo+ -ID4gPiAgICAgICAgIHJldCA9IGl3bF9tdm1fZ2V0X3RlbXAobXZtLCAmdGVtcCk7DQo+ID4gPiAg -ICAgICAgIGlmIChyZXQpDQo+ID4gPiAgICAgICAgICAgICAgICAgZ290byBvdXQ7DQo+ID4gPiBA -QCAtNjg0LDExICs2NzksNiBAQCBzdGF0aWMgaW50DQo+ID4gPiBpd2xfbXZtX3R6b25lX3NldF90 -cmlwX3RlbXAoc3RydWN0IHRoZXJtYWxfem9uZV9kZXZpY2UgKmRldmljZSwNCj4gPiA+IA0KPiA+ -ID4gICAgICAgICBtdXRleF9sb2NrKCZtdm0tPm11dGV4KTsNCj4gPiA+IA0KPiA+ID4gLSAgICAg -ICBpZiAoIW12bS0+dWNvZGVfbG9hZGVkIHx8ICEobXZtLT5jdXJfdWNvZGUgPT0NCj4gPiA+IElX -TF9VQ09ERV9SRUdVTEFSKSkgew0KPiA+ID4gLSAgICAgICAgICAgICAgIHJldCA9IC1FSU87DQo+ -ID4gPiAtICAgICAgICAgICAgICAgZ290byBvdXQ7DQo+ID4gPiAtICAgICAgIH0NCj4gPiA+IC0N -Cj4gPiA+ICAgICAgICAgaWYgKHRyaXAgPCAwIHx8IHRyaXAgPj0gSVdMX01BWF9EVFNfVFJJUFMp -IHsNCj4gPiA+ICAgICAgICAgICAgICAgICByZXQgPSAtRUlOVkFMOw0KPiA+ID4gICAgICAgICAg -ICAgICAgIGdvdG8gb3V0Ow0KPiA+ID4gQEAgLTc1MCw2ICs3NDAsOSBAQCBzdGF0aWMgdm9pZA0K -PiA+ID4gaXdsX212bV90aGVybWFsX3pvbmVfcmVnaXN0ZXIoc3RydWN0IGl3bF9tdm0gKm12bSkN -Cj4gPiA+ICAgICAgICAgICAgICAgICByZXR1cm47DQo+ID4gPiAgICAgICAgIH0NCj4gPiA+IA0K -PiA+ID4gKyAgICAgICBpZiAoIW12bS0+dWNvZGVfbG9hZGVkIHx8ICEobXZtLT5jdXJfdWNvZGUg -PT0NCj4gPiA+IElXTF9VQ09ERV9SRUdVTEFSKSkNCj4gPiA+ICsgICAgICAgICAgICAgICByZXR1 -cm47DQo+ID4gPiArDQo+ID4gPiAgICAgICAgIEJVSUxEX0JVR19PTihBUlJBWV9TSVpFKG5hbWUp -ID49IFRIRVJNQUxfTkFNRV9MRU5HVEgpOw0KPiA+ID4gDQo+ID4gPiAgICAgICAgIG12bS0+dHpf -ZGV2aWNlLnR6b25lID0gdGhlcm1hbF96b25lX2RldmljZV9yZWdpc3RlcihuYW1lLA0KPiA+ID4g -LS0NCj4gPiA+IDEuNy45LjMNCj4gPiA+IA0KPiA+ID4gLS0NCj4gPiA+IFRvIHVuc3Vic2NyaWJl -IGZyb20gdGhpcyBsaXN0OiBzZW5kIHRoZSBsaW5lICJ1bnN1YnNjcmliZSBsaW51eA0KPiA+ID4g -LXdpcmVsZXNzIiBpbg0KPiA+ID4gdGhlIGJvZHkgb2YgYSBtZXNzYWdlIHRvIG1ham9yZG9tb0B2 -Z2VyLmtlcm5lbC5vcmcNCj4gPiA+IE1vcmUgbWFqb3Jkb21vIGluZm8gYXQgIA0KPiA+ID4gaHR0 -cDovL3ZnZXIua2VybmVsLm9yZy9tYWpvcmRvbW8taW5mby5odG1s +On Mon, 2016-07-11 at 14:19 -0400, Prarit Bhargava wrote: +> +> On 07/11/2016 02:00 PM, Emmanuel Grumbach wrote: +> > On Mon, Jul 11, 2016 at 6:18 PM, Prarit Bhargava <prarit@redhat.com +> > > wrote: +> > > +> > > Didn't get any feedback or review comments on this patch. +> > > Resending ... +> > > +> > > P. +> > +> > This change is obviously completely broken. It simply disables the +> > registration to thermal zone core. +> +> No it is not broken, and yes, that is exactly what should happen IMO. +> +> The problem is that the iwlwifi driver implements the thermal zone +> even when the +> device doesn't support it. + +We implement thermal zone because we do support it, but the problem is +that we need the firmware to be loaded for that. So you can argue that +we should register *later* when the firmware is loaded. But this is +really not helping all that much because the firmware can also be +stopped at any time. So you'd want us to register / unregister the +thermal zone anytime the firmware is loaded / unloaded? +I guess that works, but it seems wrong to me. Usually, registration +should happen only upon INIT, and yes, at that time the firmware is not +ready to provide the information yet. +Maybe returning -EBUSY would help lm-sensors not to get confused? + +> +> As can be seen in the current code base, iwl_mvm_tzone_get_temp() +> will return +> -EIO 100% of the time when the firmware doesn't support reading the +> temperature[1]. In this case a read of sysfs will result in a return +> of -EIO, +> and this breaks existing userspace programs such as lm-sensors (which +> by all +> accounts is bad to do). + +Right, but I don't understand why the userspace is broken because of +that? Unless we register / unregister anytime the firmware is loaded, I +don't see any proper way to fix this. And yes, I'd expect the userspace +to handle gracefully failures in its requests. + +> +> Note that in my patch I have removed the -EIO return in favor of not +> registering +> the non-existent thermal zone. I'm not removing any functionality by +> changing +> this, nor am I adding functionality. In both cases the thermal zone +> is not +> functional, and with my patch userspace continues to work. + +You are removing the thermal zone functionality since even when the +firmware will be loaded (which typically happens fairly quickly), +thermal zone won't work. + +> +> P. +> +> [1] iwl_mvm_tzone_set_trip_temp() also returns -EIO, so setting and +> getting of +> the temperature is non-functional. +> +> +> > +> > > +> > > ---8<--- +> > > +> > > The iwlwifi driver implements a thermal zone and hwmon device, +> > > but +> > > returns -EIO on temperature reads if the firmware isn't loaded. +> > > This +> > > results in the error +> > > +> > > iwlwifi-virtual-0 +> > > Adapter: Virtual device +> > > ERROR: Can't get value of subfeature temp1_input: I/O error +> > > temp1: N/A +> > > +> > > being output when using sensors from the lm-sensors package. +> > > Since +> > > the temperature cannot be read unless the ucode is loaded there +> > > is no +> > > reason to add the interface only to have it return an error 100% +> > > of +> > > the time. +> > > +> > > This patch moves the firmware check to +> > > iwl_mvm_thermal_zone_register() and +> > > stops the thermal zone from being created if the ucode hasn't +> > > been loaded. +> > > +> > > Signed-off-by: Prarit Bhargava <prarit@redhat.com> +> > > Cc: Johannes Berg <johannes.berg@intel.com> +> > > Cc: Emmanuel Grumbach <emmanuel.grumbach@intel.com> +> > > Cc: Luca Coelho <luciano.coelho@intel.com> +> > > Cc: Intel Linux Wireless <linuxwifi@intel.com> +> > > Cc: Kalle Valo <kvalo@codeaurora.org> +> > > Cc: Chaya Rachel Ivgi <chaya.rachel.ivgi@intel.com> +> > > Cc: Sara Sharon <sara.sharon@intel.com> +> > > Cc: linux-wireless@vger.kernel.org +> > > Cc: netdev@vger.kernel.org +> > > --- +> > > drivers/net/wireless/intel/iwlwifi/mvm/tt.c | 13 +++---------- +> > > 1 file changed, 3 insertions(+), 10 deletions(-) +> > > +> > > diff --git a/drivers/net/wireless/intel/iwlwifi/mvm/tt.c +> > > b/drivers/net/wireless/intel/iwlwifi/mvm/tt.c +> > > index 58fc7b3c711c..64802659711f 100644 +> > > --- a/drivers/net/wireless/intel/iwlwifi/mvm/tt.c +> > > +++ b/drivers/net/wireless/intel/iwlwifi/mvm/tt.c +> > > @@ -634,11 +634,6 @@ static int iwl_mvm_tzone_get_temp(struct +> > > thermal_zone_device *device, +> > > +> > > mutex_lock(&mvm->mutex); +> > > +> > > - if (!mvm->ucode_loaded || !(mvm->cur_ucode == +> > > IWL_UCODE_REGULAR)) { +> > > - ret = -EIO; +> > > - goto out; +> > > - } +> > > - +> > > ret = iwl_mvm_get_temp(mvm, &temp); +> > > if (ret) +> > > goto out; +> > > @@ -684,11 +679,6 @@ static int +> > > iwl_mvm_tzone_set_trip_temp(struct thermal_zone_device *device, +> > > +> > > mutex_lock(&mvm->mutex); +> > > +> > > - if (!mvm->ucode_loaded || !(mvm->cur_ucode == +> > > IWL_UCODE_REGULAR)) { +> > > - ret = -EIO; +> > > - goto out; +> > > - } +> > > - +> > > if (trip < 0 || trip >= IWL_MAX_DTS_TRIPS) { +> > > ret = -EINVAL; +> > > goto out; +> > > @@ -750,6 +740,9 @@ static void +> > > iwl_mvm_thermal_zone_register(struct iwl_mvm *mvm) +> > > return; +> > > } +> > > +> > > + if (!mvm->ucode_loaded || !(mvm->cur_ucode == +> > > IWL_UCODE_REGULAR)) +> > > + return; +> > > + +> > > BUILD_BUG_ON(ARRAY_SIZE(name) >= THERMAL_NAME_LENGTH); +> > > +> > > mvm->tz_device.tzone = thermal_zone_device_register(name, +> > > -- +> > > 1.7.9.3 +> > > +> > > -- +> > > To unsubscribe from this list: send the line "unsubscribe linux +> > > -wireless" in +> > > the body of a message to majordomo@vger.kernel.org +> > > More majordomo info at +> > > http://vger.kernel.org/majordomo-info.html diff --git a/a/content_digest b/N1/content_digest index e22fd23..8c600bc 100644 --- a/a/content_digest +++ b/N1/content_digest @@ -20,110 +20,168 @@ " linux-wireless@vger.kernel.org <linux-wireless@vger.kernel.org>\0" "\00:1\0" "b\0" - "T24gTW9uLCAyMDE2LTA3LTExIGF0IDE0OjE5IC0wNDAwLCBQcmFyaXQgQmhhcmdhdmEgd3JvdGU6\n" - "DQo+IA0KPiBPbiAwNy8xMS8yMDE2IDAyOjAwIFBNLCBFbW1hbnVlbCBHcnVtYmFjaCB3cm90ZToN\n" - "Cj4gPiBPbiBNb24sIEp1bCAxMSwgMjAxNiBhdCA2OjE4IFBNLCBQcmFyaXQgQmhhcmdhdmEgPHBy\n" - "YXJpdEByZWRoYXQuY29tDQo+ID4gPiB3cm90ZToNCj4gPiA+IA0KPiA+ID4gRGlkbid0IGdldCBh\n" - "bnkgZmVlZGJhY2sgb3IgcmV2aWV3IGNvbW1lbnRzIG9uIHRoaXMgcGF0Y2guIA0KPiA+ID4gIFJl\n" - "c2VuZGluZyAuLi4NCj4gPiA+IA0KPiA+ID4gUC4NCj4gPiANCj4gPiBUaGlzIGNoYW5nZSBpcyBv\n" - "YnZpb3VzbHkgY29tcGxldGVseSBicm9rZW4uIEl0IHNpbXBseSBkaXNhYmxlcyB0aGUNCj4gPiBy\n" - "ZWdpc3RyYXRpb24gdG8gdGhlcm1hbCB6b25lIGNvcmUuDQo+IA0KPiBObyBpdCBpcyBub3QgYnJv\n" - "a2VuLCBhbmQgeWVzLCB0aGF0IGlzIGV4YWN0bHkgd2hhdCBzaG91bGQgaGFwcGVuIElNTy4NCj4g\n" - "DQo+IFRoZSBwcm9ibGVtIGlzIHRoYXQgdGhlIGl3bHdpZmkgZHJpdmVyIGltcGxlbWVudHMgdGhl\n" - "IHRoZXJtYWwgem9uZQ0KPiBldmVuIHdoZW4gdGhlDQo+IGRldmljZSBkb2Vzbid0IHN1cHBvcnQg\n" - "aXQuDQoNCldlIGltcGxlbWVudCB0aGVybWFsIHpvbmUgYmVjYXVzZSB3ZSBkbyBzdXBwb3J0IGl0\n" - "LCBidXQgdGhlIHByb2JsZW0gaXMNCnRoYXQgd2UgbmVlZCB0aGUgZmlybXdhcmUgdG8gYmUgbG9h\n" - "ZGVkIGZvciB0aGF0LiBTbyB5b3UgY2FuIGFyZ3VlIHRoYXQNCndlIHNob3VsZCByZWdpc3RlciAq\n" - "bGF0ZXIqIHdoZW4gdGhlIGZpcm13YXJlIGlzIGxvYWRlZC4gQnV0IHRoaXMgaXMNCnJlYWxseSBu\n" - "b3QgaGVscGluZyBhbGwgdGhhdCBtdWNoIGJlY2F1c2UgdGhlIGZpcm13YXJlIGNhbiBhbHNvIGJl\n" - "DQpzdG9wcGVkIGF0IGFueSB0aW1lLiBTbyB5b3UnZCB3YW50IHVzIHRvIHJlZ2lzdGVyIC8gdW5y\n" - "ZWdpc3RlciB0aGUNCnRoZXJtYWwgem9uZSBhbnl0aW1lIHRoZSBmaXJtd2FyZSBpcyBsb2FkZWQg\n" - "LyB1bmxvYWRlZD8NCkkgZ3Vlc3MgdGhhdCB3b3JrcywgYnV0IGl0IHNlZW1zIHdyb25nIHRvIG1l\n" - "LiBVc3VhbGx5LCByZWdpc3RyYXRpb24NCnNob3VsZCBoYXBwZW4gb25seSB1cG9uIElOSVQsIGFu\n" - "ZCB5ZXMsIGF0IHRoYXQgdGltZSB0aGUgZmlybXdhcmUgaXMgbm90DQpyZWFkeSB0byBwcm92aWRl\n" - "IHRoZSBpbmZvcm1hdGlvbiB5ZXQuDQpNYXliZSByZXR1cm5pbmcgLUVCVVNZIHdvdWxkIGhlbHAg\n" - "bG0tc2Vuc29ycyBub3QgdG8gZ2V0IGNvbmZ1c2VkPw0KDQo+IA0KPiBBcyBjYW4gYmUgc2VlbiBp\n" - "biB0aGUgY3VycmVudCBjb2RlIGJhc2UsIGl3bF9tdm1fdHpvbmVfZ2V0X3RlbXAoKQ0KPiB3aWxs\n" - "IHJldHVybg0KPiAtRUlPIDEwMCUgb2YgdGhlIHRpbWUgd2hlbiB0aGUgZmlybXdhcmUgZG9lc24n\n" - "dCBzdXBwb3J0IHJlYWRpbmcgdGhlDQo+IHRlbXBlcmF0dXJlWzFdLiAgSW4gdGhpcyBjYXNlIGEg\n" - "cmVhZCBvZiBzeXNmcyB3aWxsIHJlc3VsdCBpbiBhIHJldHVybg0KPiBvZiAtRUlPLA0KPiBhbmQg\n" - "dGhpcyBicmVha3MgZXhpc3RpbmcgdXNlcnNwYWNlIHByb2dyYW1zIHN1Y2ggYXMgbG0tc2Vuc29y\n" - "cyAod2hpY2gNCj4gYnkgYWxsDQo+IGFjY291bnRzIGlzIGJhZCB0byBkbykuDQoNClJpZ2h0LCBi\n" - "dXQgSSBkb24ndCB1bmRlcnN0YW5kIHdoeSB0aGUgdXNlcnNwYWNlIGlzIGJyb2tlbiBiZWNhdXNl\n" - "IG9mDQp0aGF0PyBVbmxlc3Mgd2UgcmVnaXN0ZXIgLyB1bnJlZ2lzdGVyIGFueXRpbWUgdGhlIGZp\n" - "cm13YXJlIGlzIGxvYWRlZCwgSQ0KZG9uJ3Qgc2VlIGFueSBwcm9wZXIgd2F5IHRvIGZpeCB0aGlz\n" - "LiBBbmQgeWVzLCBJJ2QgZXhwZWN0IHRoZSB1c2Vyc3BhY2UNCnRvIGhhbmRsZSBncmFjZWZ1bGx5\n" - "IGZhaWx1cmVzIGluIGl0cyByZXF1ZXN0cy4NCg0KPiANCj4gTm90ZSB0aGF0IGluIG15IHBhdGNo\n" - "IEkgaGF2ZSByZW1vdmVkIHRoZSAtRUlPIHJldHVybiBpbiBmYXZvciBvZiBub3QNCj4gcmVnaXN0\n" - "ZXJpbmcNCj4gdGhlIG5vbi1leGlzdGVudCB0aGVybWFsIHpvbmUuICBJJ20gbm90IHJlbW92aW5n\n" - "IGFueSBmdW5jdGlvbmFsaXR5IGJ5DQo+IGNoYW5naW5nDQo+IHRoaXMsIG5vciBhbSBJIGFkZGlu\n" - "ZyBmdW5jdGlvbmFsaXR5LiAgSW4gYm90aCBjYXNlcyB0aGUgdGhlcm1hbCB6b25lDQo+IGlzIG5v\n" - "dA0KPiBmdW5jdGlvbmFsLCBhbmQgd2l0aCBteSBwYXRjaCB1c2Vyc3BhY2UgY29udGludWVzIHRv\n" - "IHdvcmsuDQoNCllvdSBhcmUgcmVtb3ZpbmcgdGhlIHRoZXJtYWwgem9uZSBmdW5jdGlvbmFsaXR5\n" - "IHNpbmNlIGV2ZW4gd2hlbiB0aGUNCmZpcm13YXJlIHdpbGwgYmUgbG9hZGVkICh3aGljaCB0eXBp\n" - "Y2FsbHkgaGFwcGVucyBmYWlybHkgcXVpY2tseSksDQp0aGVybWFsIHpvbmUgd29uJ3Qgd29yay4N\n" - "Cg0KPiANCj4gUC4NCj4gDQo+IFsxXSBpd2xfbXZtX3R6b25lX3NldF90cmlwX3RlbXAoKSBhbHNv\n" - "IHJldHVybnMgLUVJTywgc28gc2V0dGluZyBhbmQNCj4gZ2V0dGluZyBvZg0KPiB0aGUgdGVtcGVy\n" - "YXR1cmUgaXMgbm9uLWZ1bmN0aW9uYWwuDQo+IA0KPiANCj4gPiANCj4gPiA+IA0KPiA+ID4gLS0t\n" - "ODwtLS0NCj4gPiA+IA0KPiA+ID4gVGhlIGl3bHdpZmkgZHJpdmVyIGltcGxlbWVudHMgYSB0aGVy\n" - "bWFsIHpvbmUgYW5kIGh3bW9uIGRldmljZSwNCj4gPiA+IGJ1dA0KPiA+ID4gcmV0dXJucyAtRUlP\n" - "IG9uIHRlbXBlcmF0dXJlIHJlYWRzIGlmIHRoZSBmaXJtd2FyZSBpc24ndCBsb2FkZWQuIA0KPiA+\n" - "ID4gIFRoaXMNCj4gPiA+IHJlc3VsdHMgaW4gdGhlIGVycm9yDQo+ID4gPiANCj4gPiA+IGl3bHdp\n" - "ZmktdmlydHVhbC0wDQo+ID4gPiBBZGFwdGVyOiBWaXJ0dWFsIGRldmljZQ0KPiA+ID4gRVJST1I6\n" - "IENhbid0IGdldCB2YWx1ZSBvZiBzdWJmZWF0dXJlIHRlbXAxX2lucHV0OiBJL08gZXJyb3INCj4g\n" - "PiA+IHRlbXAxOiAgICAgICAgICAgIE4vQQ0KPiA+ID4gDQo+ID4gPiBiZWluZyBvdXRwdXQgd2hl\n" - "biB1c2luZyBzZW5zb3JzIGZyb20gdGhlIGxtLXNlbnNvcnMgcGFja2FnZS4gDQo+ID4gPiAgU2lu\n" - "Y2UNCj4gPiA+IHRoZSB0ZW1wZXJhdHVyZSBjYW5ub3QgYmUgcmVhZCB1bmxlc3MgdGhlIHVjb2Rl\n" - "IGlzIGxvYWRlZCB0aGVyZQ0KPiA+ID4gaXMgbm8NCj4gPiA+IHJlYXNvbiB0byBhZGQgdGhlIGlu\n" - "dGVyZmFjZSBvbmx5IHRvIGhhdmUgaXQgcmV0dXJuIGFuIGVycm9yIDEwMCUNCj4gPiA+IG9mDQo+\n" - "ID4gPiB0aGUgdGltZS4NCj4gPiA+IA0KPiA+ID4gVGhpcyBwYXRjaCBtb3ZlcyB0aGUgZmlybXdh\n" - "cmUgY2hlY2sgdG8NCj4gPiA+IGl3bF9tdm1fdGhlcm1hbF96b25lX3JlZ2lzdGVyKCkgYW5kDQo+\n" - "ID4gPiBzdG9wcyB0aGUgdGhlcm1hbCB6b25lIGZyb20gYmVpbmcgY3JlYXRlZCBpZiB0aGUgdWNv\n" - "ZGUgaGFzbid0DQo+ID4gPiBiZWVuIGxvYWRlZC4NCj4gPiA+IA0KPiA+ID4gU2lnbmVkLW9mZi1i\n" - "eTogUHJhcml0IEJoYXJnYXZhIDxwcmFyaXRAcmVkaGF0LmNvbT4NCj4gPiA+IENjOiBKb2hhbm5l\n" - "cyBCZXJnIDxqb2hhbm5lcy5iZXJnQGludGVsLmNvbT4NCj4gPiA+IENjOiBFbW1hbnVlbCBHcnVt\n" - "YmFjaCA8ZW1tYW51ZWwuZ3J1bWJhY2hAaW50ZWwuY29tPg0KPiA+ID4gQ2M6IEx1Y2EgQ29lbGhv\n" - "IDxsdWNpYW5vLmNvZWxob0BpbnRlbC5jb20+DQo+ID4gPiBDYzogSW50ZWwgTGludXggV2lyZWxl\n" - "c3MgPGxpbnV4d2lmaUBpbnRlbC5jb20+DQo+ID4gPiBDYzogS2FsbGUgVmFsbyA8a3ZhbG9AY29k\n" - "ZWF1cm9yYS5vcmc+DQo+ID4gPiBDYzogQ2hheWEgUmFjaGVsIEl2Z2kgPGNoYXlhLnJhY2hlbC5p\n" - "dmdpQGludGVsLmNvbT4NCj4gPiA+IENjOiBTYXJhIFNoYXJvbiA8c2FyYS5zaGFyb25AaW50ZWwu\n" - "Y29tPg0KPiA+ID4gQ2M6IGxpbnV4LXdpcmVsZXNzQHZnZXIua2VybmVsLm9yZw0KPiA+ID4gQ2M6\n" - "IG5ldGRldkB2Z2VyLmtlcm5lbC5vcmcNCj4gPiA+IC0tLQ0KPiA+ID4gIGRyaXZlcnMvbmV0L3dp\n" - "cmVsZXNzL2ludGVsL2l3bHdpZmkvbXZtL3R0LmMgfCAgIDEzICsrKy0tLS0tLS0tLS0NCj4gPiA+\n" - "ICAxIGZpbGUgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAxMCBkZWxldGlvbnMoLSkNCj4gPiA+\n" - "IA0KPiA+ID4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvbmV0L3dpcmVsZXNzL2ludGVsL2l3bHdpZmkv\n" - "bXZtL3R0LmMNCj4gPiA+IGIvZHJpdmVycy9uZXQvd2lyZWxlc3MvaW50ZWwvaXdsd2lmaS9tdm0v\n" - "dHQuYw0KPiA+ID4gaW5kZXggNThmYzdiM2M3MTFjLi42NDgwMjY1OTcxMWYgMTAwNjQ0DQo+ID4g\n" - "PiAtLS0gYS9kcml2ZXJzL25ldC93aXJlbGVzcy9pbnRlbC9pd2x3aWZpL212bS90dC5jDQo+ID4g\n" - "PiArKysgYi9kcml2ZXJzL25ldC93aXJlbGVzcy9pbnRlbC9pd2x3aWZpL212bS90dC5jDQo+ID4g\n" - "PiBAQCAtNjM0LDExICs2MzQsNiBAQCBzdGF0aWMgaW50IGl3bF9tdm1fdHpvbmVfZ2V0X3RlbXAo\n" - "c3RydWN0DQo+ID4gPiB0aGVybWFsX3pvbmVfZGV2aWNlICpkZXZpY2UsDQo+ID4gPiANCj4gPiA+\n" - "ICAgICAgICAgbXV0ZXhfbG9jaygmbXZtLT5tdXRleCk7DQo+ID4gPiANCj4gPiA+IC0gICAgICAg\n" - "aWYgKCFtdm0tPnVjb2RlX2xvYWRlZCB8fCAhKG12bS0+Y3VyX3Vjb2RlID09DQo+ID4gPiBJV0xf\n" - "VUNPREVfUkVHVUxBUikpIHsNCj4gPiA+IC0gICAgICAgICAgICAgICByZXQgPSAtRUlPOw0KPiA+\n" - "ID4gLSAgICAgICAgICAgICAgIGdvdG8gb3V0Ow0KPiA+ID4gLSAgICAgICB9DQo+ID4gPiAtDQo+\n" - "ID4gPiAgICAgICAgIHJldCA9IGl3bF9tdm1fZ2V0X3RlbXAobXZtLCAmdGVtcCk7DQo+ID4gPiAg\n" - "ICAgICAgIGlmIChyZXQpDQo+ID4gPiAgICAgICAgICAgICAgICAgZ290byBvdXQ7DQo+ID4gPiBA\n" - "QCAtNjg0LDExICs2NzksNiBAQCBzdGF0aWMgaW50DQo+ID4gPiBpd2xfbXZtX3R6b25lX3NldF90\n" - "cmlwX3RlbXAoc3RydWN0IHRoZXJtYWxfem9uZV9kZXZpY2UgKmRldmljZSwNCj4gPiA+IA0KPiA+\n" - "ID4gICAgICAgICBtdXRleF9sb2NrKCZtdm0tPm11dGV4KTsNCj4gPiA+IA0KPiA+ID4gLSAgICAg\n" - "ICBpZiAoIW12bS0+dWNvZGVfbG9hZGVkIHx8ICEobXZtLT5jdXJfdWNvZGUgPT0NCj4gPiA+IElX\n" - "TF9VQ09ERV9SRUdVTEFSKSkgew0KPiA+ID4gLSAgICAgICAgICAgICAgIHJldCA9IC1FSU87DQo+\n" - "ID4gPiAtICAgICAgICAgICAgICAgZ290byBvdXQ7DQo+ID4gPiAtICAgICAgIH0NCj4gPiA+IC0N\n" - "Cj4gPiA+ICAgICAgICAgaWYgKHRyaXAgPCAwIHx8IHRyaXAgPj0gSVdMX01BWF9EVFNfVFJJUFMp\n" - "IHsNCj4gPiA+ICAgICAgICAgICAgICAgICByZXQgPSAtRUlOVkFMOw0KPiA+ID4gICAgICAgICAg\n" - "ICAgICAgIGdvdG8gb3V0Ow0KPiA+ID4gQEAgLTc1MCw2ICs3NDAsOSBAQCBzdGF0aWMgdm9pZA0K\n" - "PiA+ID4gaXdsX212bV90aGVybWFsX3pvbmVfcmVnaXN0ZXIoc3RydWN0IGl3bF9tdm0gKm12bSkN\n" - "Cj4gPiA+ICAgICAgICAgICAgICAgICByZXR1cm47DQo+ID4gPiAgICAgICAgIH0NCj4gPiA+IA0K\n" - "PiA+ID4gKyAgICAgICBpZiAoIW12bS0+dWNvZGVfbG9hZGVkIHx8ICEobXZtLT5jdXJfdWNvZGUg\n" - "PT0NCj4gPiA+IElXTF9VQ09ERV9SRUdVTEFSKSkNCj4gPiA+ICsgICAgICAgICAgICAgICByZXR1\n" - "cm47DQo+ID4gPiArDQo+ID4gPiAgICAgICAgIEJVSUxEX0JVR19PTihBUlJBWV9TSVpFKG5hbWUp\n" - "ID49IFRIRVJNQUxfTkFNRV9MRU5HVEgpOw0KPiA+ID4gDQo+ID4gPiAgICAgICAgIG12bS0+dHpf\n" - "ZGV2aWNlLnR6b25lID0gdGhlcm1hbF96b25lX2RldmljZV9yZWdpc3RlcihuYW1lLA0KPiA+ID4g\n" - "LS0NCj4gPiA+IDEuNy45LjMNCj4gPiA+IA0KPiA+ID4gLS0NCj4gPiA+IFRvIHVuc3Vic2NyaWJl\n" - "IGZyb20gdGhpcyBsaXN0OiBzZW5kIHRoZSBsaW5lICJ1bnN1YnNjcmliZSBsaW51eA0KPiA+ID4g\n" - "LXdpcmVsZXNzIiBpbg0KPiA+ID4gdGhlIGJvZHkgb2YgYSBtZXNzYWdlIHRvIG1ham9yZG9tb0B2\n" - "Z2VyLmtlcm5lbC5vcmcNCj4gPiA+IE1vcmUgbWFqb3Jkb21vIGluZm8gYXQgIA0KPiA+ID4gaHR0\n" - cDovL3ZnZXIua2VybmVsLm9yZy9tYWpvcmRvbW8taW5mby5odG1s + "On Mon, 2016-07-11 at 14:19 -0400, Prarit Bhargava wrote:\n" + "> \n" + "> On 07/11/2016 02:00 PM, Emmanuel Grumbach wrote:\n" + "> > On Mon, Jul 11, 2016 at 6:18 PM, Prarit Bhargava <prarit@redhat.com\n" + "> > > wrote:\n" + "> > > \n" + "> > > Didn't get any feedback or review comments on this patch. \n" + "> > > Resending ...\n" + "> > > \n" + "> > > P.\n" + "> > \n" + "> > This change is obviously completely broken. It simply disables the\n" + "> > registration to thermal zone core.\n" + "> \n" + "> No it is not broken, and yes, that is exactly what should happen IMO.\n" + "> \n" + "> The problem is that the iwlwifi driver implements the thermal zone\n" + "> even when the\n" + "> device doesn't support it.\n" + "\n" + "We implement thermal zone because we do support it, but the problem is\n" + "that we need the firmware to be loaded for that. So you can argue that\n" + "we should register *later* when the firmware is loaded. But this is\n" + "really not helping all that much because the firmware can also be\n" + "stopped at any time. So you'd want us to register / unregister the\n" + "thermal zone anytime the firmware is loaded / unloaded?\n" + "I guess that works, but it seems wrong to me. Usually, registration\n" + "should happen only upon INIT, and yes, at that time the firmware is not\n" + "ready to provide the information yet.\n" + "Maybe returning -EBUSY would help lm-sensors not to get confused?\n" + "\n" + "> \n" + "> As can be seen in the current code base, iwl_mvm_tzone_get_temp()\n" + "> will return\n" + "> -EIO 100% of the time when the firmware doesn't support reading the\n" + "> temperature[1]. In this case a read of sysfs will result in a return\n" + "> of -EIO,\n" + "> and this breaks existing userspace programs such as lm-sensors (which\n" + "> by all\n" + "> accounts is bad to do).\n" + "\n" + "Right, but I don't understand why the userspace is broken because of\n" + "that? Unless we register / unregister anytime the firmware is loaded, I\n" + "don't see any proper way to fix this. And yes, I'd expect the userspace\n" + "to handle gracefully failures in its requests.\n" + "\n" + "> \n" + "> Note that in my patch I have removed the -EIO return in favor of not\n" + "> registering\n" + "> the non-existent thermal zone. I'm not removing any functionality by\n" + "> changing\n" + "> this, nor am I adding functionality. In both cases the thermal zone\n" + "> is not\n" + "> functional, and with my patch userspace continues to work.\n" + "\n" + "You are removing the thermal zone functionality since even when the\n" + "firmware will be loaded (which typically happens fairly quickly),\n" + "thermal zone won't work.\n" + "\n" + "> \n" + "> P.\n" + "> \n" + "> [1] iwl_mvm_tzone_set_trip_temp() also returns -EIO, so setting and\n" + "> getting of\n" + "> the temperature is non-functional.\n" + "> \n" + "> \n" + "> > \n" + "> > > \n" + "> > > ---8<---\n" + "> > > \n" + "> > > The iwlwifi driver implements a thermal zone and hwmon device,\n" + "> > > but\n" + "> > > returns -EIO on temperature reads if the firmware isn't loaded. \n" + "> > > This\n" + "> > > results in the error\n" + "> > > \n" + "> > > iwlwifi-virtual-0\n" + "> > > Adapter: Virtual device\n" + "> > > ERROR: Can't get value of subfeature temp1_input: I/O error\n" + "> > > temp1: N/A\n" + "> > > \n" + "> > > being output when using sensors from the lm-sensors package. \n" + "> > > Since\n" + "> > > the temperature cannot be read unless the ucode is loaded there\n" + "> > > is no\n" + "> > > reason to add the interface only to have it return an error 100%\n" + "> > > of\n" + "> > > the time.\n" + "> > > \n" + "> > > This patch moves the firmware check to\n" + "> > > iwl_mvm_thermal_zone_register() and\n" + "> > > stops the thermal zone from being created if the ucode hasn't\n" + "> > > been loaded.\n" + "> > > \n" + "> > > Signed-off-by: Prarit Bhargava <prarit@redhat.com>\n" + "> > > Cc: Johannes Berg <johannes.berg@intel.com>\n" + "> > > Cc: Emmanuel Grumbach <emmanuel.grumbach@intel.com>\n" + "> > > Cc: Luca Coelho <luciano.coelho@intel.com>\n" + "> > > Cc: Intel Linux Wireless <linuxwifi@intel.com>\n" + "> > > Cc: Kalle Valo <kvalo@codeaurora.org>\n" + "> > > Cc: Chaya Rachel Ivgi <chaya.rachel.ivgi@intel.com>\n" + "> > > Cc: Sara Sharon <sara.sharon@intel.com>\n" + "> > > Cc: linux-wireless@vger.kernel.org\n" + "> > > Cc: netdev@vger.kernel.org\n" + "> > > ---\n" + "> > > drivers/net/wireless/intel/iwlwifi/mvm/tt.c | 13 +++----------\n" + "> > > 1 file changed, 3 insertions(+), 10 deletions(-)\n" + "> > > \n" + "> > > diff --git a/drivers/net/wireless/intel/iwlwifi/mvm/tt.c\n" + "> > > b/drivers/net/wireless/intel/iwlwifi/mvm/tt.c\n" + "> > > index 58fc7b3c711c..64802659711f 100644\n" + "> > > --- a/drivers/net/wireless/intel/iwlwifi/mvm/tt.c\n" + "> > > +++ b/drivers/net/wireless/intel/iwlwifi/mvm/tt.c\n" + "> > > @@ -634,11 +634,6 @@ static int iwl_mvm_tzone_get_temp(struct\n" + "> > > thermal_zone_device *device,\n" + "> > > \n" + "> > > mutex_lock(&mvm->mutex);\n" + "> > > \n" + "> > > - if (!mvm->ucode_loaded || !(mvm->cur_ucode ==\n" + "> > > IWL_UCODE_REGULAR)) {\n" + "> > > - ret = -EIO;\n" + "> > > - goto out;\n" + "> > > - }\n" + "> > > -\n" + "> > > ret = iwl_mvm_get_temp(mvm, &temp);\n" + "> > > if (ret)\n" + "> > > goto out;\n" + "> > > @@ -684,11 +679,6 @@ static int\n" + "> > > iwl_mvm_tzone_set_trip_temp(struct thermal_zone_device *device,\n" + "> > > \n" + "> > > mutex_lock(&mvm->mutex);\n" + "> > > \n" + "> > > - if (!mvm->ucode_loaded || !(mvm->cur_ucode ==\n" + "> > > IWL_UCODE_REGULAR)) {\n" + "> > > - ret = -EIO;\n" + "> > > - goto out;\n" + "> > > - }\n" + "> > > -\n" + "> > > if (trip < 0 || trip >= IWL_MAX_DTS_TRIPS) {\n" + "> > > ret = -EINVAL;\n" + "> > > goto out;\n" + "> > > @@ -750,6 +740,9 @@ static void\n" + "> > > iwl_mvm_thermal_zone_register(struct iwl_mvm *mvm)\n" + "> > > return;\n" + "> > > }\n" + "> > > \n" + "> > > + if (!mvm->ucode_loaded || !(mvm->cur_ucode ==\n" + "> > > IWL_UCODE_REGULAR))\n" + "> > > + return;\n" + "> > > +\n" + "> > > BUILD_BUG_ON(ARRAY_SIZE(name) >= THERMAL_NAME_LENGTH);\n" + "> > > \n" + "> > > mvm->tz_device.tzone = thermal_zone_device_register(name,\n" + "> > > --\n" + "> > > 1.7.9.3\n" + "> > > \n" + "> > > --\n" + "> > > To unsubscribe from this list: send the line \"unsubscribe linux\n" + "> > > -wireless\" in\n" + "> > > the body of a message to majordomo@vger.kernel.org\n" + "> > > More majordomo info at \n" + > > > http://vger.kernel.org/majordomo-info.html -8af105f14095619bef248d7cf419378ca7d7872df5a7e4577fadbb290b243808 +0b97c6047b5fea69b52c7e2c90b794233442fef236741cb95abd130cb822fb38
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.