Problem solved and tested: [PATCH] drm/mm: Fix support 4 GiB and larger ranges bad argument if(tmp)... in check_free_hole fix oops: kernel BUG at drivers/gpu/drm/drm_mm.c:305! Signed-off-by: Krzysztof Kolasa <kkolasa@xxxxxxxxxx> --- drivers/gpu/drm/drm_mm.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/gpu/drm/drm_mm.c b/drivers/gpu/drm/drm_mm.c index 7fc6f8b..1134526 100644 --- a/drivers/gpu/drm/drm_mm.c +++ b/drivers/gpu/drm/drm_mm.c @@ -403,7 +403,7 @@ static int check_free_hole(u64 start, u64 end, u64 size, unsigned alignment) unsigned rem; rem = do_div(tmp, alignment); - if (tmp) + if (rem) start += alignment - rem; } -- 2.3.3.dirty On 11.03.2015 09:13, Chris Wilson wrote: > [cc'ing lists] > > On Tue, Mar 10, 2015 at 07:17:22PM +0100, Krzysztof Kolasa wrote: >> System ( 32bit, Intel 945GM ) hangs after some short time, oops: >> >> ------------[ cut here ]------------ >> kernel BUG at drivers/gpu/drm/drm_mm.c:305! >> invalid opcode: 0000 [#1] SMP >> Modules linked in: arc4 md4 cfg80211 8192cu(O) pci_stub vboxpci(O) >> vboxnetadp(O) vboxnetflt(O) vboxdrv(O) snd_hda_codec_si3054 >> snd_hda_codec_realtek snd_hda_codec_generic snd_hda_intel >> snd_hda_controller snd_hda_codec snd_hwdep snd_pcm microcode >> snd_seq_midi snd_seq_midi_event snd_rawmidi joydev serio_raw snd_seq >> snd_timer snd_seq_device rfcomm bnep bluetooth i915 snd lpc_ich >> drm_kms_helper soundcore drm i2c_algo_bit parport_pc ppdev video >> mac_hid coretemp lp parport nls_utf8 cifs usb_storage psmouse >> 8139too 8139cp mii >> CPU: 0 PID: 1165 Comm: Xorg Tainted: G O >> 4.0.0-rc3-winsoft-x86+ #11 >> Hardware name: FUJITSU SIEMENS AMILO Pro Edition V3405 /AMILO >> Pro Edition V3405 , BIOS R01-B0E 03/20/2007 >> task: f64e0db0 ti: f4566000 task.ti: f4566000 >> EIP: 0060:[<f88c7d62>] EFLAGS: 00213206 CPU: 0 >> EIP is at drm_mm_insert_node_in_range_generic+0x432/0x4d0 [drm] >> EAX: 01000000 EBX: 00c78000 ECX: f6d4c908 EDX: 00000000 >> ESI: f6d4c900 EDI: f6d4c900 EBP: f4567c78 ESP: f4567bf8 >> DS: 007b ES: 007b FS: 00d8 GS: 0033 SS: 0068 >> CR0: 8005003b CR2: b4a02000 CR3: 345f2000 CR4: 000007f0 >> Stack: >> f4567c64 00000000 00800000 00000000 00800000 f6d4c900 ffffffff f4882700 >> 00000000 00000000 00000000 00a88000 00000000 10000000 00478000 00000000 >> 00000000 00000000 00000000 00f00000 00000000 00000000 00000000 f472c33c >> Call Trace: >> [<f8b2634e>] i915_gem_object_pin_view+0x3ce/0x840 [i915] >> [<f8b1f601>] ? i915_gem_obj_lookup_or_create_vma_view+0x41/0x160 [i915] >> [<f8b196d2>] i915_gem_execbuffer_reserve_vma.isra.11+0x62/0x100 [i915] >> [<f8b19a01>] i915_gem_execbuffer_reserve+0x291/0x2e0 [i915] >> [<f8b1a340>] i915_gem_do_execbuffer.isra.16+0x4f0/0xd10 [i915] >> [<c1189430>] ? poll_select_copy_remaining+0x100/0x100 >> [<c116a8fd>] ? __kmalloc+0x4d/0x190 >> [<f8b1bbdb>] i915_gem_execbuffer2+0x8b/0x2c0 [i915] >> [<f8b1bb50>] ? i915_gem_execbuffer+0x4e0/0x4e0 [i915] >> [<f88bffa7>] drm_ioctl+0x1b7/0x510 [drm] >> [<f8b1bb50>] ? i915_gem_execbuffer+0x4e0/0x4e0 [i915] >> [<c10aac52>] ? ktime_get_ts64+0x52/0x1a0 >> [<f88bfdf0>] ? drm_getmap+0xb0/0xb0 [drm] >> [<c11888ea>] do_vfs_ioctl+0x30a/0x530 >> [<c1305626>] ? _copy_to_user+0x26/0x30 >> [<c10aac52>] ? ktime_get_ts64+0x52/0x1a0 >> [<c1190ee2>] ? __fget_light+0x22/0x60 >> [<c1188b70>] SyS_ioctl+0x60/0x90 >> [<c1630ec8>] sysenter_do_call+0x12/0x12 >> Code: ff ff 3b 55 e8 8d 74 26 00 77 10 73 04 0f 0b 66 90 3b 45 e4 90 >> 8d 74 26 00 72 f2 8b 75 94 03 46 20 13 56 24 3b 55 f0 72 0d 76 06 >> <0f> 0b 8d 74 26 00 3b 45 ec 77 f5 39 55 c4 77 10 73 04 0f 0b 66 >> EIP: [<f88c7d62>] drm_mm_insert_node_in_range_generic+0x432/0x4d0 >> [drm] SS:ESP 0068:f4567bf8 >> ---[ end trace 4648f53699b9eb32 ]--- >> >> after revert commit 440fd52 system working OK >> >> Krzysztof >> _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/dri-devel