[Intel-gfx] [CI v3] drm/i915: GuC test run

Sagar Arun Kamble sagar.a.kamble at intel.com
Wed Feb 21 10:32:39 UTC 2018


Hi Tvrtko,


On 2/21/2018 3:42 PM, Tvrtko Ursulin wrote:
> Hi guys,
>
> I was trying to do a test run with GuC enabled but I am possibly doing
> something wrong, or something is broken on SKL GVT machine. Could you
> please check:
This is known issue where movntdqa support is disabled for hypervisor.
GuC init/load is currently tied up with logging setup that depends on 
movntdqa.
Michal Winiarski will be sharing new changes for GuC log/relay support 
and then we can bypass this check for GuC load.

Can use this meanwhile https://patchwork.freedesktop.org/patch/205723/ 
for CI.
> On 21/02/2018 08:08, Tvrtko Ursulin wrote:
>> diff --git a/drivers/gpu/drm/i915/i915_params.h b/drivers/gpu/drm/i915/i915_params.h
>> index 430f5f9d0ff4..3deae1e22974 100644
>> --- a/drivers/gpu/drm/i915/i915_params.h
>> +++ b/drivers/gpu/drm/i915/i915_params.h
>> @@ -47,7 +47,7 @@ struct drm_printer;
>>    	param(int, disable_power_well, -1) \
>>    	param(int, enable_ips, 1) \
>>    	param(int, invert_brightness, 0) \
>> -	param(int, enable_guc, 0) \
>> +	param(int, enable_guc, -1) \
>>    	param(int, guc_log_level, 0) \
>>    	param(char *, guc_firmware_path, NULL) \
>>    	param(char *, huc_firmware_path, NULL) \
>> diff --git a/drivers/gpu/drm/i915/intel_uc.c b/drivers/gpu/drm/i915/intel_uc.c
>> index 9f1bac6398fb..7f2af5b43a2a 100644
>> --- a/drivers/gpu/drm/i915/intel_uc.c
>> +++ b/drivers/gpu/drm/i915/intel_uc.c
>> @@ -63,6 +63,8 @@ static int __get_platform_enable_guc(struct drm_i915_private *dev_priv)
>>    		enable_guc |= ENABLE_GUC_LOAD_HUC;
>>    
>>    	/* Any platform specific fine-tuning can be done here */
>> +	if (intel_gvt_active(dev_priv))
>> +		enable_guc = false;
>>    
>>    	return enable_guc;
>>    }
>>
> This patch results with:
>
> <7>[   10.742713] [drm:intel_uc_sanitize_options [i915]] enable_guc=3 (submission:yes huc:yes)
> <7>[   10.742748] [drm:intel_uc_sanitize_options [i915]] guc_log_level=0 (enabled:no verbosity:-1)
>
> and then:
>
> <4>[   10.792405] ------------[ cut here ]------------
> <4>[   10.792407] WARN_ON(!i915_memcpy_from_wc(((void *)0), ((void *)0), 0))
> <4>[   10.792458] WARNING: CPU: 0 PID: 236 at drivers/gpu/drm/i915/intel_guc_log.c:616 intel_guc_log_create+0x144/0x1c0 [i915]
> <4>[   10.792460] Modules linked in: i915(+) crct10dif_pclmul crc32_pclmul ghash_clmulni_intel e1000 prime_numbers i2c_piix4
> <4>[   10.792474] CPU: 0 PID: 236 Comm: systemd-udevd Not tainted 4.16.0-rc2-CI-Patchwork_8097+ #1
> <4>[   10.792476] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS rel-1.10.1-0-g8891697-prebuilt.qemu-project.org 04/01/2014
> <4>[   10.792510] RIP: 0010:intel_guc_log_create+0x144/0x1c0 [i915]
> <4>[   10.792512] RSP: 0018:ffffc9000023fae0 EFLAGS: 00010286
> <4>[   10.792515] RAX: 000000000000003a RBX: ffff8800759d0ed0 RCX: 0000000000000001
> <4>[   10.792516] RDX: 0000000080000001 RSI: ffffffff8210fb61 RDI: 00000000ffffffff
> <4>[   10.792518] RBP: ffff8800759d0ed0 R08: ffff880079fd8940 R09: 00000000bf56e8ae
> <4>[   10.792519] R10: 0000000000000000 R11: 0000000000000000 R12: ffff8800759d0070
> <4>[   10.792521] R13: ffff880076a4da18 R14: 0000000000000000 R15: ffff88007c93c548
> <4>[   10.792525] FS:  00007ff6ffc7f8c0(0000) GS:ffff88007fc00000(0000) knlGS:0000000000000000
> <4>[   10.792526] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
> <4>[   10.792528] CR2: 00007fdabb4ab000 CR3: 0000000079fc6003 CR4: 00000000003606f0
> <4>[   10.792529] Call Trace:
> <4>[   10.792565]  intel_guc_init+0x5d/0x100 [i915]
> <4>[   10.792642]  intel_uc_init+0x29/0xa0 [i915]
> <4>[   10.792694]  i915_gem_init+0x198/0x540 [i915]
> <4>[   10.792727]  ? intel_uc_fw_fetch+0x2db/0x650 [i915]
> <4>[   10.792755]  i915_driver_load+0xa56/0x1090 [i915]
> <4>[   10.792760]  ? trace_hardirqs_on_caller+0xde/0x1c0
> <4>[   10.792789]  i915_pci_probe+0x2e/0x90 [i915]
> <4>[   10.792793]  pci_device_probe+0x9c/0x120
> <4>[   10.792798]  driver_probe_device+0x2a4/0x480
> <4>[   10.792802]  __driver_attach+0xd9/0xe0
> <4>[   10.792804]  ? driver_probe_device+0x480/0x480
> <4>[   10.792807]  ? driver_probe_device+0x480/0x480
> <4>[   10.792810]  bus_for_each_dev+0x50/0x90
> <4>[   10.792814]  bus_add_driver+0x168/0x260
> <4>[   10.792818]  driver_register+0x52/0xc0
> <4>[   10.792820]  ? 0xffffffffa0294000
> <4>[   10.792822]  do_one_initcall+0x39/0x150
> <4>[   10.792826]  ? rcu_read_lock_sched_held+0x6f/0x80
> <4>[   10.792828]  ? kmem_cache_alloc_trace+0x245/0x2b0
> <4>[   10.792833]  do_init_module+0x56/0x1ef
> <4>[   10.792836]  load_module+0x236b/0x2dc0
> <4>[   10.792840]  ? show_coresize+0x20/0x20
> <4>[   10.792843]  ? vfs_read+0x126/0x150
> <4>[   10.792851]  ? SyS_finit_module+0xa5/0xe0
> <4>[   10.792853]  SyS_finit_module+0xa5/0xe0
> <4>[   10.792862]  do_syscall_64+0x65/0x1a0
> <4>[   10.792866]  entry_SYSCALL_64_after_hwframe+0x42/0xb7
> <4>[   10.792868] RIP: 0033:0x7ff6feb0f499
> <4>[   10.792869] RSP: 002b:00007ffdf3058448 EFLAGS: 00000246 ORIG_RAX: 0000000000000139
> <4>[   10.792872] RAX: ffffffffffffffda RBX: 00005652dfedde90 RCX: 00007ff6feb0f499
> <4>[   10.792874] RDX: 0000000000000000 RSI: 00007ff6ff005e23 RDI: 000000000000000f
> <4>[   10.792875] RBP: 00007ff6ff005e23 R08: 0000000000000000 R09: 0000000000000000
> <4>[   10.792877] R10: 000000000000000f R11: 0000000000000246 R12: 0000000000000000
> <4>[   10.792878] R13: 00005652dff1c180 R14: 0000000000020000 R15: 000000000aba9500
> <4>[   10.792886] Code: e1 0f 0b 48 c7 c6 a0 df 19 a0 48 c7 c7 39 df 19 a0 e8 e6 aa 00 e1 0f 0b 48 c7 c6 18 c2 1b a0 48 c7 c7 f7 de 19 a0 e8 0c 9f f9 e0 <0f> 0b b8 ea ff ff ff c7 05 97 95 16 00 00 00 00 00 48 83 c4 08
> <4>[   10.792968] ---[ end trace aa9469e091d0e5f0 ]---
>
> So is intel_gvt_active the wrong thing to use, or in fact, is i915.enable_guc=-1 supposed to handle GVT to start with?
>
> Regards,
>
> Tvrtko
>

-- 
Thanks,
Sagar



More information about the Intel-gfx mailing list