Date: Sun, 10 Jan 2016 02:51:48 +0200 From: Tommi Pernila <tommi.pernila@iki.fi> To: freebsd-x11@freebsd.org, =?UTF-8?B?SmVhbi1Tw6liYXN0aWVuIFDDqWRyb24=?= <jean-sebastien.pedron@dumbbell.fr> Subject: Testing i915 - The easy way Message-ID: <CABHD1wR4vEx5fT_RaY%2BHT4Ljg6saOotae%2B8bGcVPe6w40En7%2Bw@mail.gmail.com>
next in thread | raw e-mail | index | archive | help
Hi all, TL:DR; Did a script that gathers all X and drm relevant logs and some data from the hardware. dsfx.sh - a Debugging Script For things relating to Xorg Longer version: Long time lurker, now hopefully creating something useful. I've been thinking how to help the i915 development, and as my C-coding skills are not so great. So trying to make Jean-S=C3=A9bastiens work easier. Noticed that it's quite hard to know what logs are relevant, especially if you are new to FreeBSD. So I did this script that gathers all X and drm relevant logs and some data from the hardware. The key idea of the script is that you run it when something interesting with graphics drivers or something weird happens with X. The script then tars the data for your uploading convenience. Then all you need to do is send the logs to the relevant developers or bug tracker. The script uses just shell. I have tried it on my Lenovo T540p with two use cases: - Installed Vanilla FreeBSD 10.2 and booting to a drm-i915-update-38 branch 11.0 kernel (logs below) - Booted up a TrueOS-11.0JAN image installer and ran the script (not uploaded yet) Script is here: https://github.com/pernila/scripts/blob/master/dsfx.sh Throw some feedback at me if you find something horribly wrong :) Yes it's ugly but it works. Feedback is appreciated, especially if i'm missing some log files that are useful for debugging purpose. Jean it might be a good idea to include this or something better to the drm-i915-update-38 branch? Some testing data from the script. Here is logs from the same T540p laptop. https://github.com/pernila/scripts/tree/master/logs Files 1: run script after boot 1_Dec_kernel_after_boot_Xlogs_2016.01.04_22:51:50.txz 1_Oct_kernel_after_boot_Xlogs_2016.01.04_22:26:40.txz Files 2: run script after kldload i915kms 2_Dec_kernel_i915kms_loaded_Xlogs_2016.01.04_22:43:52.txz 2_Dec_kernel_i915kms_loaded_Xlogs_2016.01.04_22:47:39.txz Double files here for reason that forgot :) 2_Oct_kernel_i915kms_loaded_Xlogs_2016.01.04_22:33:21.txz Files 3: run script after starting Xorg 3_Dec_kernel_Running_Xserver_Xlogs_2016.01.04_22:52:26.txz This version of the kernel just black screened after Xorg started. Was able to reproduce many times. Ran these commands in VTY2: sleep 5; ./dsfx.sh ; sleep 35 ;reboot and then started Xorg from VTY1 to get the logs. 3_Oct_kernel_Running_Xserver_Xlogs_2016.01.04_22:36:00.txz Found out that there is some issues with the latest drm-i915-update-38 branch with my laptop. I'm guessing that it might be cause of the resolution of the screen ( 2880x1620 )? Normal desktop usage is possible with the older October version of the branch. Next steps: My next idea for making this script even more useful would be to create a script that 1. branches every drm-i915-update-38 commit in git ( not taking in the merges with the CURRENT branch or commits from it ) 2. compiles a kernel from each branch 3. boots to the new kernel and runs this dsfx.sh script 4. upload the data to x and boot to the next kernel This is bit more tricky to do... The End Game idea would be to integrate Phoronix Test Suite (found in ports) to all of this. This would produce actual test suites (OpenGL etc) and create nice graphs to see actual regressions. Br, Tommi
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CABHD1wR4vEx5fT_RaY%2BHT4Ljg6saOotae%2B8bGcVPe6w40En7%2Bw>