From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S934205AbdAINkL (ORCPT ); Mon, 9 Jan 2017 08:40:11 -0500 Received: from mga02.intel.com ([134.134.136.20]:10746 "EHLO mga02.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754711AbdAINkG (ORCPT ); Mon, 9 Jan 2017 08:40:06 -0500 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.33,339,1477983600"; d="scan'208";a="211242581" Subject: Re: [Intel-gfx] 4.10-rc2 oops in DRM connector code To: Daniel Vetter , Jani Nikula , David Airlie , intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org References: <7fd16549-1349-a9e5-ceff-9aa6f748caae@intel.com> <20170109101516.y3acaev5ujbjugwl@phenom.ffwll.local> From: Dave Hansen Message-ID: <16a1e734-667c-5d9a-c418-555b1f13e446@intel.com> Date: Mon, 9 Jan 2017 05:40:05 -0800 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.5.1 MIME-Version: 1.0 In-Reply-To: <20170109101516.y3acaev5ujbjugwl@phenom.ffwll.local> Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Well, now I found where the -2 comes from. intel_dp_register_mst_connector() calls drm_connector_register(), which fails to add the kobject (warning below). But, it does zero error checking on the drm_connector_register() call and leaves the partially-constructed connector in place. The next time some poor, hapless code goes and tries to do anything with that kdev, they oops. I'm perplexed by this, though. The drm_dp_mst_topology_cbs->register_connector just returns void. It seems a bit goofy that it can't even _return_ failure. Is there some stable code to go back to here? Or, is there something about my configuration that's unique? I really wonder why nobody else is running into this. There's probably some other race going on here. This warning doesn't happen on every boot. > [ 1.396475] ------------[ cut here ]------------ > [ 1.396486] WARNING: CPU: 0 PID: 91 at lib/kobject.c:244 kobject_add_internal+0x108/0x2d0 > [ 1.396492] kobject_add_internal failed for card0-DP-3 (error: -2 parent: card0) > [ 1.396496] Modules linked in: > [ 1.396500] CPU: 0 PID: 91 Comm: kworker/0:2 Not tainted 4.10.0-rc2-dirty #58 > [ 1.396503] Hardware name: LENOVO 20F5S7V800/20F5S7V800, BIOS R02ET50W (1.23 ) 09/20/2016 > [ 1.396509] Workqueue: events_long drm_dp_mst_link_probe_work > [ 1.396511] Call Trace: > [ 1.396517] dump_stack+0x67/0x99 > [ 1.396521] __warn+0xd1/0xf0 > [ 1.396524] warn_slowpath_fmt+0x4f/0x60 > [ 1.396527] kobject_add_internal+0x108/0x2d0 > [ 1.396531] ? vsnprintf+0x112/0x4b0 > [ 1.396533] kobject_add+0x65/0xb0 > [ 1.396537] ? klist_init+0x31/0x40 > [ 1.396542] device_add+0x102/0x5d0 > [ 1.396546] ? kfree_const+0x22/0x30 > [ 1.396549] device_create_groups_vargs+0xd8/0x100 > [ 1.396553] device_create_with_groups+0x36/0x40 > [ 1.396557] ? drm_fb_helper_add_one_connector+0x57/0xd0 > [ 1.396561] ? kmem_cache_alloc_trace+0x1d2/0x1f0 > [ 1.396566] drm_sysfs_connector_add+0x60/0xe0 > [ 1.396570] drm_connector_register+0x21/0xc0 > [ 1.396575] intel_dp_register_mst_connector+0x41/0x50 > [ 1.396579] drm_dp_add_port+0x350/0x450 > [ 1.396583] ? rcu_early_boot_tests+0x1/0x10 > [ 1.396587] ? schedule_timeout+0x1cd/0x390 > [ 1.396591] ? __might_sleep+0x4a/0x90 > [ 1.396594] ? mutex_lock+0x25/0x50 > [ 1.396597] ? drm_dp_mst_wait_tx_reply+0x118/0x1e0 > [ 1.396600] ? prepare_to_wait_event+0x120/0x120 > [ 1.396603] ? drm_dp_check_mstb_guid+0x3d/0x120 > [ 1.396606] drm_sysfs_connector_add() connector: ffff88040ed3f000 kdev: ffff88040c55dc00 > [ 1.396610] drm_dp_send_link_address+0x185/0x1f0 > [ 1.396614] drm_dp_check_and_send_link_address+0xad/0xc0 > [ 1.396617] drm_dp_mst_link_probe_work+0x57/0xa0 > [ 1.396620] process_one_work+0x14b/0x430 > [ 1.396623] worker_thread+0x12b/0x4a0 > [ 1.396626] kthread+0x10c/0x140 > [ 1.396629] ? process_one_work+0x430/0x430 > [ 1.396632] ? kthread_create_on_node+0x40/0x40 > [ 1.396635] ret_from_fork+0x27/0x40 > [ 1.396639] ---[ end trace dd05bb2cd9ebd900 ]--- > [ 1.396643] drm_sysfs_connector_add() connector: ffff88040c75a000 kdev: fffffffffffffffe > [ 1.396648] [drm:drm_sysfs_connector_add] *ERROR* failed to register connector device: -2 > [ 1.396651] drm_connector_register(ffff88040ed3f000) connector->registered: 1 > [ 1.396666] drm_sysfs_connector_add() connector: ffff88040ed3f800 kdev: ffff88040c55e400 > [ 1.396700] drm_connector_register(ffff88040ed3f800) connector->registered: 1 > [ 1.396717] drm_sysfs_connector_add() connector: ffff88040ed39800 kdev: ffff88040c55e800 > [ 1.396726] drm_connector_register(ffff88040ed39800) connector->registered: 1 > [ 1.396743] drm_sysfs_connector_add() connector: ffff88040c758000 kdev: ffff88040c55ec00 > [ 1.396769] drm_connector_register(ffff88040c758000) connector->registered: 1 > [ 1.396786] drm_sysfs_connector_add() connector: ffff88040c758800 kdev: ffff88040c55f000 > [ 1.396799] drm_connector_register(ffff88040c758800) connector->registered: 1 > [ 1.396804] drm_connector_register(ffff88040c75a000) connector->registered: 1 > [ 1.398665] ACPI: Video Device [GFX0] (multi-head: yes rom: no post: no) > [ 1.398893] drm_sysfs_connector_add() connector: ffff88040c75b000 kdev: ffff88040c790400 > [ 1.398907] drm_connector_register(ffff88040c75b000) connector->registered: 1 > [ 1.398930] drm_sysfs_connector_add() connector: ffff88040c75c000 kdev: ffff88040c790800 > [ 1.398939] drm_connector_register(ffff88040c75c000) connector->registered: 1 From mboxrd@z Thu Jan 1 00:00:00 1970 From: Dave Hansen Subject: Re: 4.10-rc2 oops in DRM connector code Date: Mon, 9 Jan 2017 05:40:05 -0800 Message-ID: <16a1e734-667c-5d9a-c418-555b1f13e446@intel.com> References: <7fd16549-1349-a9e5-ceff-9aa6f748caae@intel.com> <20170109101516.y3acaev5ujbjugwl@phenom.ffwll.local> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20170109101516.y3acaev5ujbjugwl@phenom.ffwll.local> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Daniel Vetter , Jani Nikula , David Airlie , intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org List-Id: dri-devel@lists.freedesktop.org V2VsbCwgbm93IEkgZm91bmQgd2hlcmUgdGhlIC0yIGNvbWVzIGZyb20uCmludGVsX2RwX3JlZ2lz dGVyX21zdF9jb25uZWN0b3IoKSBjYWxscyBkcm1fY29ubmVjdG9yX3JlZ2lzdGVyKCksIHdoaWNo CmZhaWxzIHRvIGFkZCB0aGUga29iamVjdCAod2FybmluZyBiZWxvdykuICBCdXQsIGl0IGRvZXMg emVybyBlcnJvcgpjaGVja2luZyBvbiB0aGUgZHJtX2Nvbm5lY3Rvcl9yZWdpc3RlcigpIGNhbGwg YW5kIGxlYXZlcyB0aGUKcGFydGlhbGx5LWNvbnN0cnVjdGVkIGNvbm5lY3RvciBpbiBwbGFjZS4K ClRoZSBuZXh0IHRpbWUgc29tZSBwb29yLCBoYXBsZXNzIGNvZGUgZ29lcyBhbmQgdHJpZXMgdG8g ZG8gYW55dGhpbmcgd2l0aAp0aGF0IGtkZXYsIHRoZXkgb29wcy4gIEknbSBwZXJwbGV4ZWQgYnkg dGhpcywgdGhvdWdoLiAgVGhlCmRybV9kcF9tc3RfdG9wb2xvZ3lfY2JzLT5yZWdpc3Rlcl9jb25u ZWN0b3IganVzdCByZXR1cm5zIHZvaWQuICBJdCBzZWVtcwphIGJpdCBnb29meSB0aGF0IGl0IGNh bid0IGV2ZW4gX3JldHVybl8gZmFpbHVyZS4KCklzIHRoZXJlIHNvbWUgc3RhYmxlIGNvZGUgdG8g Z28gYmFjayB0byBoZXJlPyAgT3IsIGlzIHRoZXJlIHNvbWV0aGluZwphYm91dCBteSBjb25maWd1 cmF0aW9uIHRoYXQncyB1bmlxdWU/ICBJIHJlYWxseSB3b25kZXIgd2h5IG5vYm9keSBlbHNlCmlz IHJ1bm5pbmcgaW50byB0aGlzLgoKVGhlcmUncyBwcm9iYWJseSBzb21lIG90aGVyIHJhY2UgZ29p bmcgb24gaGVyZS4gIFRoaXMgd2FybmluZyBkb2Vzbid0CmhhcHBlbiBvbiBldmVyeSBib290LgoK PiBbICAgIDEuMzk2NDc1XSAtLS0tLS0tLS0tLS1bIGN1dCBoZXJlIF0tLS0tLS0tLS0tLS0KPiBb ICAgIDEuMzk2NDg2XSBXQVJOSU5HOiBDUFU6IDAgUElEOiA5MSBhdCBsaWIva29iamVjdC5jOjI0 NCBrb2JqZWN0X2FkZF9pbnRlcm5hbCsweDEwOC8weDJkMAo+IFsgICAgMS4zOTY0OTJdIGtvYmpl Y3RfYWRkX2ludGVybmFsIGZhaWxlZCBmb3IgY2FyZDAtRFAtMyAoZXJyb3I6IC0yIHBhcmVudDog Y2FyZDApCj4gWyAgICAxLjM5NjQ5Nl0gTW9kdWxlcyBsaW5rZWQgaW46Cj4gWyAgICAxLjM5NjUw MF0gQ1BVOiAwIFBJRDogOTEgQ29tbToga3dvcmtlci8wOjIgTm90IHRhaW50ZWQgNC4xMC4wLXJj Mi1kaXJ0eSAjNTgKPiBbICAgIDEuMzk2NTAzXSBIYXJkd2FyZSBuYW1lOiBMRU5PVk8gMjBGNVM3 VjgwMC8yMEY1UzdWODAwLCBCSU9TIFIwMkVUNTBXICgxLjIzICkgMDkvMjAvMjAxNgo+IFsgICAg MS4zOTY1MDldIFdvcmtxdWV1ZTogZXZlbnRzX2xvbmcgZHJtX2RwX21zdF9saW5rX3Byb2JlX3dv cmsKPiBbICAgIDEuMzk2NTExXSBDYWxsIFRyYWNlOgo+IFsgICAgMS4zOTY1MTddICBkdW1wX3N0 YWNrKzB4NjcvMHg5OQo+IFsgICAgMS4zOTY1MjFdICBfX3dhcm4rMHhkMS8weGYwCj4gWyAgICAx LjM5NjUyNF0gIHdhcm5fc2xvd3BhdGhfZm10KzB4NGYvMHg2MAo+IFsgICAgMS4zOTY1MjddICBr b2JqZWN0X2FkZF9pbnRlcm5hbCsweDEwOC8weDJkMAo+IFsgICAgMS4zOTY1MzFdICA/IHZzbnBy aW50ZisweDExMi8weDRiMAo+IFsgICAgMS4zOTY1MzNdICBrb2JqZWN0X2FkZCsweDY1LzB4YjAK PiBbICAgIDEuMzk2NTM3XSAgPyBrbGlzdF9pbml0KzB4MzEvMHg0MAo+IFsgICAgMS4zOTY1NDJd ICBkZXZpY2VfYWRkKzB4MTAyLzB4NWQwCj4gWyAgICAxLjM5NjU0Nl0gID8ga2ZyZWVfY29uc3Qr MHgyMi8weDMwCj4gWyAgICAxLjM5NjU0OV0gIGRldmljZV9jcmVhdGVfZ3JvdXBzX3ZhcmdzKzB4 ZDgvMHgxMDAKPiBbICAgIDEuMzk2NTUzXSAgZGV2aWNlX2NyZWF0ZV93aXRoX2dyb3VwcysweDM2 LzB4NDAKPiBbICAgIDEuMzk2NTU3XSAgPyBkcm1fZmJfaGVscGVyX2FkZF9vbmVfY29ubmVjdG9y KzB4NTcvMHhkMAo+IFsgICAgMS4zOTY1NjFdICA/IGttZW1fY2FjaGVfYWxsb2NfdHJhY2UrMHgx ZDIvMHgxZjAKPiBbICAgIDEuMzk2NTY2XSAgZHJtX3N5c2ZzX2Nvbm5lY3Rvcl9hZGQrMHg2MC8w eGUwCj4gWyAgICAxLjM5NjU3MF0gIGRybV9jb25uZWN0b3JfcmVnaXN0ZXIrMHgyMS8weGMwCj4g WyAgICAxLjM5NjU3NV0gIGludGVsX2RwX3JlZ2lzdGVyX21zdF9jb25uZWN0b3IrMHg0MS8weDUw Cj4gWyAgICAxLjM5NjU3OV0gIGRybV9kcF9hZGRfcG9ydCsweDM1MC8weDQ1MAo+IFsgICAgMS4z OTY1ODNdICA/IHJjdV9lYXJseV9ib290X3Rlc3RzKzB4MS8weDEwCj4gWyAgICAxLjM5NjU4N10g ID8gc2NoZWR1bGVfdGltZW91dCsweDFjZC8weDM5MAo+IFsgICAgMS4zOTY1OTFdICA/IF9fbWln aHRfc2xlZXArMHg0YS8weDkwCj4gWyAgICAxLjM5NjU5NF0gID8gbXV0ZXhfbG9jaysweDI1LzB4 NTAKPiBbICAgIDEuMzk2NTk3XSAgPyBkcm1fZHBfbXN0X3dhaXRfdHhfcmVwbHkrMHgxMTgvMHgx ZTAKPiBbICAgIDEuMzk2NjAwXSAgPyBwcmVwYXJlX3RvX3dhaXRfZXZlbnQrMHgxMjAvMHgxMjAK PiBbICAgIDEuMzk2NjAzXSAgPyBkcm1fZHBfY2hlY2tfbXN0Yl9ndWlkKzB4M2QvMHgxMjAKPiBb ICAgIDEuMzk2NjA2XSBkcm1fc3lzZnNfY29ubmVjdG9yX2FkZCgpIGNvbm5lY3RvcjogZmZmZjg4 MDQwZWQzZjAwMCBrZGV2OiBmZmZmODgwNDBjNTVkYzAwCj4gWyAgICAxLjM5NjYxMF0gIGRybV9k cF9zZW5kX2xpbmtfYWRkcmVzcysweDE4NS8weDFmMAo+IFsgICAgMS4zOTY2MTRdICBkcm1fZHBf Y2hlY2tfYW5kX3NlbmRfbGlua19hZGRyZXNzKzB4YWQvMHhjMAo+IFsgICAgMS4zOTY2MTddICBk cm1fZHBfbXN0X2xpbmtfcHJvYmVfd29yaysweDU3LzB4YTAKPiBbICAgIDEuMzk2NjIwXSAgcHJv Y2Vzc19vbmVfd29yaysweDE0Yi8weDQzMAo+IFsgICAgMS4zOTY2MjNdICB3b3JrZXJfdGhyZWFk KzB4MTJiLzB4NGEwCj4gWyAgICAxLjM5NjYyNl0gIGt0aHJlYWQrMHgxMGMvMHgxNDAKPiBbICAg IDEuMzk2NjI5XSAgPyBwcm9jZXNzX29uZV93b3JrKzB4NDMwLzB4NDMwCj4gWyAgICAxLjM5NjYz Ml0gID8ga3RocmVhZF9jcmVhdGVfb25fbm9kZSsweDQwLzB4NDAKPiBbICAgIDEuMzk2NjM1XSAg cmV0X2Zyb21fZm9yaysweDI3LzB4NDAKPiBbICAgIDEuMzk2NjM5XSAtLS1bIGVuZCB0cmFjZSBk ZDA1YmIyY2Q5ZWJkOTAwIF0tLS0KPiBbICAgIDEuMzk2NjQzXSBkcm1fc3lzZnNfY29ubmVjdG9y X2FkZCgpIGNvbm5lY3RvcjogZmZmZjg4MDQwYzc1YTAwMCBrZGV2OiBmZmZmZmZmZmZmZmZmZmZl Cj4gWyAgICAxLjM5NjY0OF0gW2RybTpkcm1fc3lzZnNfY29ubmVjdG9yX2FkZF0gKkVSUk9SKiBm YWlsZWQgdG8gcmVnaXN0ZXIgY29ubmVjdG9yIGRldmljZTogLTIKPiBbICAgIDEuMzk2NjUxXSBk cm1fY29ubmVjdG9yX3JlZ2lzdGVyKGZmZmY4ODA0MGVkM2YwMDApIGNvbm5lY3Rvci0+cmVnaXN0 ZXJlZDogMQo+IFsgICAgMS4zOTY2NjZdIGRybV9zeXNmc19jb25uZWN0b3JfYWRkKCkgY29ubmVj dG9yOiBmZmZmODgwNDBlZDNmODAwIGtkZXY6IGZmZmY4ODA0MGM1NWU0MDAKPiBbICAgIDEuMzk2 NzAwXSBkcm1fY29ubmVjdG9yX3JlZ2lzdGVyKGZmZmY4ODA0MGVkM2Y4MDApIGNvbm5lY3Rvci0+ cmVnaXN0ZXJlZDogMQo+IFsgICAgMS4zOTY3MTddIGRybV9zeXNmc19jb25uZWN0b3JfYWRkKCkg Y29ubmVjdG9yOiBmZmZmODgwNDBlZDM5ODAwIGtkZXY6IGZmZmY4ODA0MGM1NWU4MDAKPiBbICAg IDEuMzk2NzI2XSBkcm1fY29ubmVjdG9yX3JlZ2lzdGVyKGZmZmY4ODA0MGVkMzk4MDApIGNvbm5l Y3Rvci0+cmVnaXN0ZXJlZDogMQo+IFsgICAgMS4zOTY3NDNdIGRybV9zeXNmc19jb25uZWN0b3Jf YWRkKCkgY29ubmVjdG9yOiBmZmZmODgwNDBjNzU4MDAwIGtkZXY6IGZmZmY4ODA0MGM1NWVjMDAK PiBbICAgIDEuMzk2NzY5XSBkcm1fY29ubmVjdG9yX3JlZ2lzdGVyKGZmZmY4ODA0MGM3NTgwMDAp IGNvbm5lY3Rvci0+cmVnaXN0ZXJlZDogMQo+IFsgICAgMS4zOTY3ODZdIGRybV9zeXNmc19jb25u ZWN0b3JfYWRkKCkgY29ubmVjdG9yOiBmZmZmODgwNDBjNzU4ODAwIGtkZXY6IGZmZmY4ODA0MGM1 NWYwMDAKPiBbICAgIDEuMzk2Nzk5XSBkcm1fY29ubmVjdG9yX3JlZ2lzdGVyKGZmZmY4ODA0MGM3 NTg4MDApIGNvbm5lY3Rvci0+cmVnaXN0ZXJlZDogMQo+IFsgICAgMS4zOTY4MDRdIGRybV9jb25u ZWN0b3JfcmVnaXN0ZXIoZmZmZjg4MDQwYzc1YTAwMCkgY29ubmVjdG9yLT5yZWdpc3RlcmVkOiAx Cj4gWyAgICAxLjM5ODY2NV0gQUNQSTogVmlkZW8gRGV2aWNlIFtHRlgwXSAobXVsdGktaGVhZDog eWVzICByb206IG5vICBwb3N0OiBubykKPiBbICAgIDEuMzk4ODkzXSBkcm1fc3lzZnNfY29ubmVj dG9yX2FkZCgpIGNvbm5lY3RvcjogZmZmZjg4MDQwYzc1YjAwMCBrZGV2OiBmZmZmODgwNDBjNzkw NDAwCj4gWyAgICAxLjM5ODkwN10gZHJtX2Nvbm5lY3Rvcl9yZWdpc3RlcihmZmZmODgwNDBjNzVi MDAwKSBjb25uZWN0b3ItPnJlZ2lzdGVyZWQ6IDEKPiBbICAgIDEuMzk4OTMwXSBkcm1fc3lzZnNf Y29ubmVjdG9yX2FkZCgpIGNvbm5lY3RvcjogZmZmZjg4MDQwYzc1YzAwMCBrZGV2OiBmZmZmODgw NDBjNzkwODAwCj4gWyAgICAxLjM5ODkzOV0gZHJtX2Nvbm5lY3Rvcl9yZWdpc3RlcihmZmZmODgw NDBjNzVjMDAwKSBjb25uZWN0b3ItPnJlZ2lzdGVyZWQ6IDEKX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1n ZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21h aWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==