From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Ceraolo Spurio, Daniele" Subject: NULL pointer dereference in trace_i915_context_free Date: Thu, 09 Jul 2015 10:08:08 +0100 Message-ID: <559E39F8.2090501@intel.com> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="------------050404060901050102040500" Return-path: Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by gabe.freedesktop.org (Postfix) with ESMTP id A32046EC7F for ; Thu, 9 Jul 2015 02:08:10 -0700 (PDT) List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org This is a multi-part message in MIME format. --------------050404060901050102040500 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Hi, I'm hitting a NULL pointer dereference when I enable the i915_context_free tracepoint (call trace attached). This is caused by the fact that the trace tries to access ctx->file_priv, which however may have already been deleted (even if the pointer is != NULL). I've used that trace extensively back when I've submitted it a few months ago without ecountering this issue, but it doesn't seem that there ever was a guarantee that the file_priv would be valid at ctx free time, so I'll put the blame on my original commit that introduced the trace: commit 198c974d7e80a5135fc4a2e69a07ba3e64122f8a Author: Daniele Ceraolo Spurio Date: Mon Nov 10 13:44:31 2014 +0000 drm/i915: Add tracepoints to track a vm during its lifetime The trace doesn't specifically need the file_priv pointer, it just uses it to reach the drm_device pointer to get the device index. To fix the issue I've looked for another way to get the drm_device pointer from the ctx, but I couldn't find any that is valid for every GEN. Modifying the trace to add an extra parameter is out of the question for 2 reasons: - The only variable available in i915_gem_context_free is the ctx ptr - Modifying a tracepoint could break ABI Ideas, anyone? Thanks, Daniele --------------050404060901050102040500 Content-Type: text/plain; charset=windows-1252; name="BUG.dmsg" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="BUG.dmsg" WyAgIDUzLjY5MTc5MF0gQlVHOiB1bmFibGUgdG8gaGFuZGxlIGtlcm5lbCBwYWdpbmcgcmVx dWVzdCBhdCBmZmZmYzkwMDAxMjRkMDAwClsgICA1My42OTg1MDddIFtkcm06aTkxNV9nZW1f b3Blbl0gClsgICA1My43MDM0NDVdIElQOiBbPGZmZmZmZmZmYTAyNjA2MDM+XSBmdHJhY2Vf cmF3X2V2ZW50X2k5MTVfY29udGV4dCsweDUzLzB4ODAgW2k5MTVdClsgICA1My43MTIyMjld IFBHRCAyNDY4OGYwNjcgUFVEIDI0NjhhMDA2NyBQTUQgYTk1ODEwNjcgUFRFIDAKWyAgIDUz LjcxODU0N10gT29wczogMDAwMCBbIzFdIFNNUCAKWyAgIDUzLjcyMjI2NF0gTW9kdWxlcyBs aW5rZWQgaW46IGJpbmZtdF9taXNjKEUpIGNmZzgwMjExKEUpIG5sc19pc284ODU5XzEoRSkg c25kX2hkYV9jb2RlY19oZG1pKEUpIGFzaXgoRSkgdXNibmV0KEUpIG1paShFKSBpbnRlbF9y YXBsKEUpIHNuZF9oZGFfaW50ZWwoRSkgaGlkX2dlbmVyaWMoRSkgaW9zZl9tYmkoRSkgc25k X2hkYV8KY29kZWMoRSkgeDg2X3BrZ190ZW1wX3RoZXJtYWwoRSkgc25kX2hkYV9jb3JlKEUp IGludGVsX3Bvd2VyY2xhbXAoRSkgc25kX2h3ZGVwKEUpIGNvcmV0ZW1wKEUpIHNuZF9wY20o RSkga3ZtX2ludGVsKEUpIHNuZF9zZXFfbWlkaShFKSBrdm0oRSkgc25kX3NlcV9taWRpX2V2 ZW50KEUpIGNyY3QxMGRpZl9wY2xtdWwoRSkgc25kX3Jhd20KaWRpKEUpIGNyYzMyX3BjbG11 bChFKSBnaGFzaF9jbG11bG5pX2ludGVsKEUpIHNuZF9zZXEoRSkgYWVzbmlfaW50ZWwoRSkg c25kX3NlcV9kZXZpY2UoRSkgc25kX3RpbWVyKEUpIGFlc194ODZfNjQoRSkgaTkxNShFKSBs cncoRSkgZ2YxMjhtdWwoRSkgZ2x1ZV9oZWxwZXIoRSkgYWJsa19oZWxwZXIoRSkgY3J5cHRk KEUpIGRybV9rbXMKX2hlbHBlcihFKSBkcm0oRSkgc2VyaW9fcmF3KEUpIGkyY19hbGdvX2Jp dChFKSBzbmQoRSkgbWVpX21lKEUpIG1laShFKSBscGNfaWNoKEUpIHNvdW5kY29yZShFKSB3 aW5ib25kX2NpcihFKSByY19jb3JlKEUpIGkyY19oaWQoRSkgZHdfZG1hYyhFKSBkd19kbWFj X2NvcmUoRSkgdmlkZW8oRSkgODI1MF9kdyhFKSBpMmNfZGVzaWdud2EKcmVfcGxhdGZvcm0o RSkgaTJjX2Rlc2lnbndhcmVfY29yZShFKSBzcGlfcHhhMnh4X3BsYXRmb3JtKEUpIGFjcGlf cGFkKEUpIG1hY19oaWQoRSkgdXNiaGlkKEUpIGhpZChFKSBwYXJwb3J0X3BjKEUpIHBwZGV2 KEUpIGxwKEUpIHBhcnBvcnQoRSkgYXV0b2ZzNChFKSBzZGhjaV9hY3BpKEUpIGFoY2koRSkg bGliYWhjaShFKSBzZGhjaSgKRSkKWyAgIDUzLjgxODMzNV0gQ1BVOiAzIFBJRDogMTQ4NyBD b21tOiBjb21waXogVGFpbnRlZDogRyAgICAgVSAgICAgIEUgICA0LjEuMCsgIzMKWyAgIDUz LjgyNjQ3N10gSGFyZHdhcmUgbmFtZTogSW50ZWwgQ29ycG9yYXRpb24gQnJvYWR3ZWxsIENs aWVudCBwbGF0Zm9ybS9XaGl0ZVRpcCBNb3VudGFpbiAxLCBCSU9TIEJEVy1FMVIxLjg2Qy4w MDgwLlIwMS4xNDA2MTIwNDQ2IDA2LzEyLzIwMTQKWyAgIDUzLjg0MDgyNF0gdGFzazogZmZm Zjg4MDBhOTk4ZTQ0MCB0aTogZmZmZjg4MDI0MjIxNDAwMCB0YXNrLnRpOiBmZmZmODgwMjQy MjE0MDAwClsgICA1My44NDkzMzddIFJJUDogMDAxMDpbPGZmZmZmZmZmYTAyNjA2MDM+XSAg WzxmZmZmZmZmZmEwMjYwNjAzPl0gZnRyYWNlX3Jhd19ldmVudF9pOTE1X2NvbnRleHQrMHg1 My8weDgwIFtpOTE1XQpbICAgNTMuODYwODUzXSBSU1A6IDAwMTg6ZmZmZjg4MDI0MjIxN2I5 OCAgRUZMQUdTOiAwMDAxMDI4MgpbICAgNTMuODY2ODkzXSBSQVg6IGZmZmY4ODAyNDU3MzYw MWMgUkJYOiAwMDAwMDAwMDAwMDAwMDAwIFJDWDogMDAwMDAwMDAwMDAwMDAwOApbICAgNTMu ODc1MDA5XSBSRFg6IGZmZmZjOTAwMDEyNGQwMDAgUlNJOiAwMDAwMDAwMDAwMDAwMDAwIFJE STogZmZmZjg4MDI0MjIxN2I5OApbICAgNTMuODgzMTI0XSBSQlA6IGZmZmY4ODAyNDIyMTdi ZTggUjA4OiBmZmZmODgwMjQ1NzM2MDEwIFIwOTogMDAwMDAwMDAwMDAwMDAyYwpbICAgNTMu ODkxMjQwXSBSMTA6IDAwMDAwMDBjODA0NzdjOWMgUjExOiAwMDAwMDAwMDAwMDAwMDA4IFIx MjogZmZmZjg4MDI0M2Y4OTA1OApbICAgNTMuODk5MzU1XSBSMTM6IGZmZmY4ODAyNDM4YmZh MDAgUjE0OiBmZmZmODgwMjQyMjE3YzQ4IFIxNTogZmZmZjg4MDI0M2QzMWVmMApbICAgNTMu OTA3NDcxXSBGUzogIDAwMDA3ZjIyMDQzZWE3ODAoMDAwMCkgR1M6ZmZmZjg4MDI0ZjRjMDAw MCgwMDAwKSBrbmxHUzowMDAwMDAwMDAwMDAwMDAwClsgICA1My45MTY2NzNdIENTOiAgMDAx MCBEUzogMDAwMCBFUzogMDAwMCBDUjA6IDAwMDAwMDAwODAwNTAwMzMKWyAgIDUzLjkyNDU1 MF0gQ1IyOiBmZmZmYzkwMDAxMjRkMDAwIENSMzogMDAwMDAwMDI0MjllNzAwMCBDUjQ6IDAw MDAwMDAwMDAzNDA3ZTAKWyAgIDUzLjkzNDAxMV0gRFIwOiAwMDAwMDAwMDAwMDAwMDAwIERS MTogMDAwMDAwMDAwMDAwMDAwMCBEUjI6IDAwMDAwMDAwMDAwMDAwMDAKWyAgIDUzLjk0MzQ0 NV0gRFIzOiAwMDAwMDAwMDAwMDAwMDAwIERSNjogMDAwMDAwMDBmZmZlMGZmMCBEUjc6IDAw MDAwMDAwMDAwMDA0MDAKWyAgIDUzLjk1Mjg3MF0gU3RhY2s6ClsgICA1My45NTY0NjVdICBm ZmZmODgwMjQ2ODA2MTAwIGZmZmY4ODAyNDU3MzYwMTAgZmZmZjg4MDI0M2Y4OTA1OCBmZmZm ODgwMjQ1NzM2MDFjClsgICA1My45NjYyNDBdICAwMDAwMDAwMDAwMDAwMjk2IGZmZmY4ODAy MDAwMDAwMDAgZmZmZjg4MDI0MzhiZmEwMCBmZmZmODgwMjM0NTg2ZTIwClsgICA1My45NzY1 MTZdICBmZmZmODgwMjQzOGJmYTAwIGZmZmY4ODAyNDNkMzFlZjAgZmZmZjg4MDI0MjIxN2Mw OCBmZmZmZmZmZmEwMjNhYjNkClsgICA1My45ODYyODZdIENhbGwgVHJhY2U6ClsgICA1My45 OTAzOTJdICBbPGZmZmZmZmZmYTAyM2FiM2Q+XSBpOTE1X2dlbV9jb250ZXh0X2ZyZWUrMHhi ZC8weDEwMCBbaTkxNV0KWyAgIDUzLjk5OTQ0N10gIFs8ZmZmZmZmZmZhMDI0NWZiMD5dIGk5 MTVfZ2VtX3JlcXVlc3RfZnJlZSsweGQwLzB4ZTAgW2k5MTVdClsgICA1NC4wMDgzOTZdICBb PGZmZmZmZmZmYTAyNjZiZDg+XSBpbnRlbF9leGVjbGlzdHNfcmV0aXJlX3JlcXVlc3RzKzB4 MTg4LzB4MWQwIFtpOTE1XQpbICAgNTQuMDE4NTM3XSAgWzxmZmZmZmZmZmEwMjQ4NzljPl0g aTkxNV9nZW1fcmV0aXJlX3JlcXVlc3RzKzB4ZmMvMHgxMTAgW2k5MTVdClsgICA1NC4wMjc4 ODJdICBbPGZmZmZmZmZmYTAyNTE4MmU+XSBpOTE1X2dlbV91c2VycHRyX2luaXRfX21tdV9u b3RpZmllcisweGFlLzB4MmUwIFtpOTE1XQpbICAgNTQuMDM4Mjk3XSAgWzxmZmZmZmZmZmEw MjUyNzMyPl0gaTkxNV9nZW1fdXNlcnB0cl9pb2N0bCsweDI1Mi8weDMyMCBbaTkxNV0KWyAg IDU0LjA0NzUxMl0gIFs8ZmZmZmZmZmY4MTE3OGEyOT5dID8gdW5sb2NrX3BhZ2UrMHg2OS8w eDcwClsgICA1NC4wNTQ5NjZdICBbPGZmZmZmZmZmYTAxNDVjNzk+XSBkcm1faW9jdGwrMHgz NDkvMHg2NzAgW2RybV0KWyAgIDU0LjA2Mjc5OV0gIFs8ZmZmZmZmZmZhMDI1MjRlMD5dID8g X19pOTE1X2dlbV91c2VycHRyX2dldF9wYWdlc193b3JrZXIrMHgyZTAvMHgyZTAgW2k5MTVd ClsgICA1NC4wNzM0ODJdICBbPGZmZmZmZmZmODExMzE4Y2M+XSA/IGFjY3RfYWNjb3VudF9j cHV0aW1lKzB4MWMvMHgyMApbICAgNTQuMDgxNzg1XSAgWzxmZmZmZmZmZjgxMWY1OTk4Pl0g ZG9fdmZzX2lvY3RsKzB4MmY4LzB4NTEwClsgICA1NC4wODkyODBdICBbPGZmZmZmZmZmODEw ZDk1Yjg+XSA/IHJjdV9lcXNfZW50ZXIrMHg2OC8weDkwClsgICA1NC4wOTY4NTFdICBbPGZm ZmZmZmZmODExNzc4ZTM+XSA/IGNvbnRleHRfdHJhY2tpbmdfdXNlcl9leGl0KzB4MTMvMHgy MApbICAgNTQuMTA1NzE0XSAgWzxmZmZmZmZmZjgxMWY1YzMxPl0gU3lTX2lvY3RsKzB4ODEv MHhhMApbICAgNTQuMTEyNjkyXSAgWzxmZmZmZmZmZjgxMTc3YTEzPl0gPyBjb250ZXh0X3Ry YWNraW5nX3VzZXJfZW50ZXIrMHgxMy8weDIwClsgICA1NC4xMjE2NTJdICBbPGZmZmZmZmZm ODEwMjRiYzU+XSA/IHN5c2NhbGxfdHJhY2VfbGVhdmUrMHhhNS8weDEyMApbICAgNTQuMTI5 OTE0XSAgWzxmZmZmZmZmZjgxNzk3MDcyPl0gc3lzdGVtX2NhbGxfZmFzdHBhdGgrMHgxNi8w eDc1ClsgICA1NC4xMzc5NzJdIENvZGU6IDdkIGIwIGJhIDIwIDAwIDAwIDAwIDRjIDg5IGU2 IGU4IGI5IDA2IGVmIGUwIDQ4IDg1IGMwIDc0IDI4IDRjIDg5IDY4IDEwIDQ5IDhiIDU1IDM4 IDQ4IDhkIDdkIGIwIDQ4IDg5IDUwIDE4IDQ5IDhiIDU1IDEwIDQ4IDhiIDEyIDw0OD4gOGIg MTIgNDggOGIgNTIgMzggOGIgMTIgODkgNTAgMDggZTggCmJjIDIyIGVmIGUwIDQ4IDgzIGM0 IDM4IApbICAgNTQuMTYxNDMxXSBSSVAgIFs8ZmZmZmZmZmZhMDI2MDYwMz5dIGZ0cmFjZV9y YXdfZXZlbnRfaTkxNV9jb250ZXh0KzB4NTMvMHg4MCBbaTkxNV0KWyAgIDU0LjE3MTU3MV0g IFJTUCA8ZmZmZjg4MDI0MjIxN2I5OD4KWyAgIDU0LjE3Njg0OV0gQ1IyOiBmZmZmYzkwMDAx MjRkMDAwClsgICA1NC4xOTAzNDZdIC0tLVsgZW5kIHRyYWNlIDI1OTAxNjRhOWU5NzlhNjQg XS0tLQoK --------------050404060901050102040500 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: inline X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4 IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHA6Ly9saXN0 cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK --------------050404060901050102040500--