)]}'
{
  "commit": "423a8a942e95493b73228ba6a3f176dcc7f35fa9",
  "tree": "f23761f8b0b2f1d9010a1f2872f3e64e105baae6",
  "parents": [
    "40a4884512d5bf9ed3a9cb162b8a7ec3306b6cfc"
  ],
  "author": {
    "name": "Chris Wilson",
    "email": "chris@chris-wilson.co.uk",
    "time": "Mon Nov 06 21:11:28 2017 +0000"
  },
  "committer": {
    "name": "Rodrigo Vivi",
    "email": "rodrigo.vivi@intel.com",
    "time": "Wed Nov 08 10:20:29 2017 -0800"
  },
  "message": "drm/i915: Deconstruct struct sgt_dma initialiser\n\ngcc-4.4 complains about:\n\n\tstruct sgt_dma iter \u003d {\n\t\t.sg \u003d vma-\u003epages-\u003esgl,\n\t\t.dma \u003d sg_dma_address(iter.sg),\n\t\t.max \u003d iter.dma + iter.sg-\u003elength,\n\t};\n\ndrivers/gpu/drm/i915/i915_gem_gtt.c: In function ‘gen8_ppgtt_insert_4lvl’:\ndrivers/gpu/drm/i915/i915_gem_gtt.c:938: error: ‘iter.sg’ is used uninitialized in this function\ndrivers/gpu/drm/i915/i915_gem_gtt.c:939: error: ‘iter.dma’ is used uninitialized in this function\n\nand worse generates invalid code that triggers a GPF:\n\nBUG: unable to handle kernel NULL pointer dereference at 0000000000000010\nIP: gen8_ppgtt_insert_4lvl+0x1b/0x1e0 [i915]\nPGD 0\nOops: 0000 [#1] SMP\nModules linked in: snd_aloop nf_conntrack_ipv6 nf_defrag_ipv6 nf_log_ipv6 ip6table_filter ip6_tables ctr ccm xt_state nf_log_ipv4\nnf_log_common xt_LOG xt_limit xt_recent xt_owner xt_addrtype iptable_filter ipt_MASQUERADE nf_nat_masquerade_ipv4 iptable_nat\nnf_conntrack_ipv4 nf_defrag_ipv4 nf_nat_ipv4 nf_nat nf_conntrack libcrc32c ip_tables dm_mod vhost_net macvtap macvlan vhost tun kvm_intel kvm\nirqbypass uas usb_storage hid_multitouch btusb btrtl uvcvideo videobuf2_v4l2 videobuf2_core videodev media videobuf2_vmalloc videobuf2_memops\nsg ppdev dell_wmi sparse_keymap mei_wdt sd_mod iTCO_wdt iTCO_vendor_support rtsx_pci_ms memstick rtsx_pci_sdmmc mmc_core dell_smm_hwmon hwmon\ndell_laptop dell_smbios dcdbas joydev input_leds hci_uart btintel btqca btbcm bluetooth parport_pc parport i2c_hid\n  intel_lpss_acpi intel_lpss pcspkr wmi int3400_thermal acpi_thermal_rel dell_rbtn mei_me mei snd_hda_codec_hdmi snd_hda_codec_realtek\nsnd_hda_codec_generic ahci libahci acpi_pad xhci_pci xhci_hcd snd_hda_intel snd_hda_codec snd_hda_core snd_hwdep snd_seq snd_seq_device\nsnd_pcm snd_timer snd soundcore int3403_thermal arc4 e1000e ptp pps_core i2c_i801 iwlmvm mac80211 rtsx_pci iwlwifi cfg80211 rfkill\nintel_pch_thermal processor_thermal_device int340x_thermal_zone intel_soc_dts_iosf i915 video fjes\nCPU: 2 PID: 2408 Comm: X Not tainted 4.10.0-rc5+ #1\nHardware name: Dell Inc. Latitude E7470/0T6HHJ, BIOS 1.11.3 11/09/2016\ntask: ffff880219fe4740 task.stack: ffffc90005f98000\nRIP: 0010:gen8_ppgtt_insert_4lvl+0x1b/0x1e0 [i915]\nRSP: 0018:ffffc90005f9b8c8 EFLAGS: 00010246\nRAX: 0000000000000000 RBX: ffff8802167d8000 RCX: 0000000000000001\nRDX: 00000000ffff7000 RSI: ffff880219f94140 RDI: ffff880228444000\nRBP: ffffc90005f9b948 R08: 0000000000000000 R09: 0000000000000000\nR10: 0000000000000000 R11: 0000000000000000 R12: 0000000000000080\nR13: 0000000000000001 R14: ffffc90005f9bcd7 R15: ffff88020c9a83c0\nFS:  00007fb53e1ee920(0000) GS:ffff88024dd00000(0000) knlGS:0000000000000000\nCS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033\nCR2: 0000000000000010 CR3: 000000022ef95000 CR4: 00000000003406e0\nDR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000\nDR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400\nCall Trace:\n  ppgtt_bind_vma+0x40/0x50 [i915]\n  i915_vma_bind+0xcb/0x1c0 [i915]\n  __i915_vma_do_pin+0x6e/0xd0 [i915]\n  i915_gem_execbuffer_reserve_vma+0x162/0x1d0 [i915]\n  i915_gem_execbuffer_reserve+0x4fc/0x510 [i915]\n  ? __kmalloc+0x134/0x250\n  ? i915_gem_wait_for_error+0x25/0x100 [i915]\n  ? i915_gem_wait_for_error+0x25/0x100 [i915]\n  i915_gem_do_execbuffer+0x2df/0xa00 [i915]\n  ? drm_malloc_gfp.clone.0+0x42/0x80 [i915]\n  ? path_put+0x22/0x30\n  ? __check_object_size+0x62/0x1f0\n  ? terminate_walk+0x44/0x90\n  i915_gem_execbuffer2+0x95/0x1e0 [i915]\n  drm_ioctl+0x243/0x490\n  ? handle_pte_fault+0x1d7/0x220\n  ? i915_gem_do_execbuffer+0xa00/0xa00 [i915]\n  ? handle_mm_fault+0x10d/0x2a0\n  vfs_ioctl+0x18/0x30\n  do_vfs_ioctl+0x14b/0x3f0\n  SyS_ioctl+0x92/0xa0\n  entry_SYSCALL_64_fastpath+0x1a/0xa9\nRIP: 0033:0x7fb53b4fcb77\nRSP: 002b:00007ffe0c572898 EFLAGS: 00003246 ORIG_RAX: 0000000000000010\nRAX: ffffffffffffffda RBX: 00007fb53e17c038 RCX: 00007fb53b4fcb77\nRDX: 00007ffe0c572900 RSI: 0000000040406469 RDI: 000000000000000b\nRBP: 00007fb5376d67e0 R08: 0000000000000000 R09: 0000000000000000\nR10: 0000000000000028 R11: 0000000000003246 R12: 0000000000000000\nR13: 0000000000000000 R14: 000055eecb314d00 R15: 000055eecb315460\nCode: 0f 84 5d ff ff ff eb a2 0f 1f 84 00 00 00 00 00 55 48 89 e5 41 57 41 56 41 55 41 54 53 48 83 ec 58 0f 1f 44 00 00 31 c0 89 4d b0 \u003c4c\u003e\n8b 60 10 44 8b 70 0c 48 89 d0 4c 8b 2e 48 c1 e8 27 25 ff 01\nRIP: gen8_ppgtt_insert_4lvl+0x1b/0x1e0 [i915] RSP: ffffc90005f9b8c8\nCR2: 0000000000000010\n\nRecent gccs, such as 4.9, 6.3 or 7.2, do not generate the warning nor do\nthey explode on use. If we manually create the struct using locals from\nthe stack, this should eliminate this issue, and does not alter code\ngeneration with gcc-7.2.\n\nFixes: 894ccebee2b0 (\"drm/i915: Micro-optimise gen8_ppgtt_insert_entries()\")\nReported-by: Kelly French \u003ckfrench@federalhill.net\u003e\nSigned-off-by: Chris Wilson \u003cchris@chris-wilson.co.uk\u003e\nCc: Kelly French \u003ckfrench@federalhill.net\u003e\nCc: Mika Kuoppala \u003cmika.kuoppala@intel.com\u003e\nLink: https://patchwork.freedesktop.org/patch/msgid/20171106211128.12538-1-chris@chris-wilson.co.uk\nTested-by: Kelly French \u003ckfrench@federalhill.net\u003e\nReviewed-by: Tvrtko Ursulin \u003ctvrtko.ursulin@intel.com\u003e\n(cherry picked from commit 5684514ba9dc6d7aa932cc53d97d866b2386221f)\nSigned-off-by: Rodrigo Vivi \u003crodrigo.vivi@intel.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "e2410eb5d96e01ce208f565fee182da9a99ee604",
      "old_mode": 33188,
      "old_path": "drivers/gpu/drm/i915/i915_gem_gtt.c",
      "new_id": "ad524cb0f6fc5a18c3bc18214b7acaef5dab7896",
      "new_mode": 33188,
      "new_path": "drivers/gpu/drm/i915/i915_gem_gtt.c"
    }
  ]
}
