<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Eugeni&#039;s blog &#187; english</title>
	<atom:link href="http://dodonov.net/blog/category/english/feed/" rel="self" type="application/rss+xml" />
	<link>http://dodonov.net/blog</link>
	<description>My view on technology, open-source, Linux and other cool things.</description>
	<lastBuildDate>Sun, 29 Jan 2012 15:11:34 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=</generator>
		<item>
		<title>Updates from the Intel Linux Graphics land</title>
		<link>http://dodonov.net/blog/2012/01/29/updates-from-the-intel-linux-graphics-land/</link>
		<comments>http://dodonov.net/blog/2012/01/29/updates-from-the-intel-linux-graphics-land/#comments</comments>
		<pubDate>Sun, 29 Jan 2012 15:11:34 +0000</pubDate>
		<dc:creator>eugeni</dc:creator>
				<category><![CDATA[devel]]></category>
		<category><![CDATA[english]]></category>
		<category><![CDATA[intel]]></category>
		<category><![CDATA[kernel]]></category>
		<category><![CDATA[mesa]]></category>
		<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[x.org]]></category>

		<guid isPermaLink="false">http://dodonov.net/blog/?p=1252</guid>
		<description><![CDATA[The real life and work issues had eaten most of my time for the past 2 weeks, but things seem to be geting back to normal now. So time for semi-regular updates from the Intel Linux Graphics land. Starting with kernel, many notable changes happened in the past weeks. To make our -next merge window <a href='http://dodonov.net/blog/2012/01/29/updates-from-the-intel-linux-graphics-land/'>[...]</a>]]></description>
			<content:encoded><![CDATA[<p>The real life and work issues had eaten most of my time for the past 2 weeks, but things seem to be geting back to normal now. So time for semi-regular updates from the Intel Linux Graphics land.</p>

<p>Starting with <strong>kernel</strong>, many notable changes happened in the past weeks. To make our -next merge window process go faster, a new process was adopted for the kernel patch and branch handling process. Let me elaborate a bit more about how this is going to work.</p>

<p>For the past months, we had the <strong>drm-intel-next</strong> branch (containing patches intended to go into the next merge window &#8211; e.g., when the <strong>3.3</strong> kernel is being developed, this is the branch which contains patches intended to be included in the <strong>3.4</strong> kernel version), and also <strong>drm-intel-fixes</strong> branch (containing patches for the currently developed kernel &#8211; e.g., patches which fix issues which were added during the past merge window. So for instance, those are the patches which go into <strong>3.3-rcN</strong> kernel versions after the merge window). Both of those patches were maintained by <strong>Keith Packard</strong>.</p>

<p>However, the amount of patches combined with other tasks resulted in a somewhat slower patch queuing process. So <strong>Daniel Vetter</strong> has volunteered himself to maintain the <strong>drm-intel-next</strong> branch from now on, reviewing, queuing and managing the patches intended to get into the next kernel merge window (for now, those are targeting the <strong>3.4</strong> kernel version).</p>

<p>At the same time, <strong>Keith Packard</strong> will continue to maintain the <strong>drm-intel-fixes</strong> branch, managing and carrying stability patches for the current kernel.</p>

<p>And finally, to improve the testing and availability of newer features for older kernel versions, I&#8217;ve started my own <strong>drm-intel-backports</strong> set of branches, for <strong>3.0</strong>, <strong>3.1</strong> and <strong>3.2</strong> kernel versions &#8211; containing all the latest and greatest patches from the latest kernel releases. Of course, those patches do not follow the usual kernel stable development model, so they introduce new features, capabilities and possible issues. But for the brave souls out there willing to see and test the absolutely latest development in our drivers on top of their kernels, it should be a great chance to do so.</p>

<p>(I assume that I was not that fast with the <strong>drm-intel-backports</strong> patch merging process in the past 2 weeks, so for now it only contains patches from the <strong>3.2</strong> kernel branch. I intend to backport the <strong>3.3</strong> and <strong>3.4-next</strong> patches for all those versions in the coming days. Also, apparently those backported patches do not work correctly with pre-Ironlake chipsets on 3.0 kernel, and there are some display-related issues on top of <strong>3.1</strong> one &#8211; I&#8217;ll look into it as well. Sorry for the delay &#8211; but the real life interfered with my patching capability for the past weeks&#8230;)</p>

<p>Besides those changes, we had a large number of notable kernel advances in the past weeks:</p>

<ul>
<li>One of the most interesting features is the support for <strong>interlaced</strong> modes in the Intel Linux Graphics cards. A great work by Peter Ross, Daniel Vetter and Paulo Zanoni resulted in a series of patches which provided support for interlaced modes. These patches will be queued for inclusion in the <strong>3.4</strong> kernel &#8211; but when I&#8217;ll get back to my <strong>-backports</strong> series of patches, I&#8217;ll certainly include them into the <strong>3.[012]</strong> series as well.</li>
<li>More <strong>Ivy bridge 3-display pipes</strong> issues were fixed, such as the hibernation problem with 3rd pipe being active.</li>
<li>Stabilizing the almost-ready-to-launch <strong>Ivy bridge</strong> platform, the hopefully final forcewake-related fixes were included in both <strong>drm-intel-next</strong> and <strong>drm-intel-fixes</strong> branches, and were also cherry-picked by Greg to be included in the stable <strong>3.2</strong> kernel as well. This should solve the remaining missing interrupts problems we were experiencing.</li>
<li>Initial patches to support the hardware context switching were sent by <strong>Ben Widawsky</strong>, and are accessible <a href="http://cgit.freedesktop.org/~bwidawsk/drm-intel/?h=context-support" onclick="urchinTracker('/outgoing/cgit.freedesktop.org/_bwidawsk/drm-intel/?h=context-support&amp;referer=');">in his own freedesktop.org repository for testing</a>. Hardware-supported context switching allows to save the hardware registers and state for each process, so it could essentially help the GL_EXT_transform_feedback extension and advanced geometry shading state passing between different stages. And, of course, it can also improve the stability &#8211; hardware would ensure that different processes would not interfere with each other in a harmful way.</li>
<li>And almost a hundred pending patches were picked by Daniel Vetter for his new <strong>drm-intel-next</strong> branch. The next merge window certainly looks interesting for the Intel Linux Graphics support in this sense&#8230;</li>
</ul>

<p>On <strong>Mesa</strong> side, the <strong>8.0</strong> release is getting really close. After the <strong>8.0-rc1</strong> release a couple of weeks ago, lots of patches were picked into the <strong>8.0</strong> branch, improving the stability, performance, and fixing many rendering issues &#8211; especially on the Ivy Bridge platform. More excitingly, the communication between Mesa and Unigine developers resulted in better support for open-source drivers in the just released <strong>Oil Rush</strong> game. It is really great to see such cooperation &#8211; and Unigine-based game certainly is one of the most advanced graphical releases of past years on Linux.</p>

<p>Speaking about the Mesa development, this final stabilization phase prior to the <strong>8.0</strong> release is a great chance for you to report issues, bugs and problems before the release which is expected in a few days from now. So if you observe any last-minute problems and regressions with <strong>Mesa 8.0</strong> branch &#8211; please, let us know! This next release looks really impressive from the technical side, but your help in additional testing is more than welcome.</p>

<p>On <strong>Wayland</strong> side, lots of different patches and features were received in the past weeks. Wayland and Weston development goes on with great pace &#8211; and the ones of you to attend <strong>FOSDEM</strong> next week will have some really interesting stuff to gaze upon. But I won&#8217;t spoil the surprise <img src='http://dodonov.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> .</p>

<p>On <strong>Xserver</strong> development, the <strong>1.12 RC2</strong> and <strong>1.11.4</strong> releases were unleashed last week, together with a new <strong>glproto</strong>, <strong>util-macros</strong> and <strong>xkeyboard-config</strong> versions. The development continues non-stop, with hundreds of patches and discussions happening in the mailing lists.</p>

<p>And finally, the <strong>phoronix</strong> feedback I got from you over the past weeks <a href="http://www.phoronix.com/scan.php?page=news_item&amp;px=MTA0MjI" onclick="urchinTracker('/outgoing/www.phoronix.com/scan.php?page=news_item_amp_px=MTA0MjI&amp;referer=');">was amazing</a>. Thank you all for all your questions and suggestions &#8211; it was really nice to hear what you have in mind, what you like (and dislike) in our drivers and what direction we should be heading. I&#8217;ll try to answer the last remaining questions in the next few day, and will summarize everything on a dedicated blog post.</p>
]]></content:encoded>
			<wfw:commentRss>http://dodonov.net/blog/2012/01/29/updates-from-the-intel-linux-graphics-land/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Phoronix survey about Intel Linux Graphics</title>
		<link>http://dodonov.net/blog/2012/01/14/phoronix-survey-about-intel-linux-graphics/</link>
		<comments>http://dodonov.net/blog/2012/01/14/phoronix-survey-about-intel-linux-graphics/#comments</comments>
		<pubDate>Sat, 14 Jan 2012 22:28:08 +0000</pubDate>
		<dc:creator>eugeni</dc:creator>
				<category><![CDATA[devel]]></category>
		<category><![CDATA[english]]></category>
		<category><![CDATA[intel]]></category>

		<guid isPermaLink="false">http://dodonov.net/blog/?p=1248</guid>
		<description><![CDATA[For the ones of you who haven&#8217;t read Phoronix lately &#8211; Michael is running a survey about Intel Linux Graphics drivers for the past few days. So far it got 10 pages of amazingly interesting comments (which I was trying to answer as time and my fingertips permitted). 95 comments as of now to be <a href='http://dodonov.net/blog/2012/01/14/phoronix-survey-about-intel-linux-graphics/'>[...]</a>]]></description>
			<content:encoded><![CDATA[<p>For the ones of you who haven&#8217;t read Phoronix lately &#8211; Michael is running a <a href="http://www.phoronix.com/scan.php?page=news_item&amp;px=MTA0MjI" onclick="urchinTracker('/outgoing/www.phoronix.com/scan.php?page=news_item_amp_px=MTA0MjI&amp;referer=');">survey about Intel Linux Graphics drivers</a> for the past few days.</p>

<p>So far it got 10 pages of amazingly interesting comments (which I was trying to answer as time and my fingertips permitted). 95 comments as of now to be fair (sorry, 96 already &#8211; my bad <img src='http://dodonov.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> ). Make sure to check it out.</p>

<p>In the end, I&#8217;ll try to summarize all my replies in the thread here. But it will be a long read by the looks of it.</p>
]]></content:encoded>
			<wfw:commentRss>http://dodonov.net/blog/2012/01/14/phoronix-survey-about-intel-linux-graphics/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Bleeding edge i915 for stable kernels</title>
		<link>http://dodonov.net/blog/2012/01/11/bleeding-edge-i915-for-stable-kernels/</link>
		<comments>http://dodonov.net/blog/2012/01/11/bleeding-edge-i915-for-stable-kernels/#comments</comments>
		<pubDate>Wed, 11 Jan 2012 19:57:23 +0000</pubDate>
		<dc:creator>eugeni</dc:creator>
				<category><![CDATA[devel]]></category>
		<category><![CDATA[english]]></category>
		<category><![CDATA[intel]]></category>
		<category><![CDATA[kernel]]></category>
		<category><![CDATA[linux]]></category>

		<guid isPermaLink="false">http://dodonov.net/blog/?p=1238</guid>
		<description><![CDATA[One of the most frequent complains questions related to the Intel Linux Graphics drivers I&#8217;ve received in the past few months was: &#8220;Why Intel devs work only on the most bleeding edge, and do not give enough attention the us stable users&#8221;? Yes, this question affects all the components of the stack &#8211; kernel, mesa, <a href='http://dodonov.net/blog/2012/01/11/bleeding-edge-i915-for-stable-kernels/'>[...]</a>]]></description>
			<content:encoded><![CDATA[<p>One of the most frequent <strike>complains</strike> questions related to the Intel Linux Graphics drivers I&#8217;ve received in the past few months was: &#8220;Why Intel devs work only on the most bleeding edge, and do not give enough attention the us stable users&#8221;?</p>

<p>Yes, this question affects all the components of the stack &#8211; kernel, mesa, libdrm, 2D driver, and so on, but the answer to this is quite simple &#8211; this is how software gets developed. New features go into new releases, and stable releases receive bugfixes and stability improvements at most. And this is not much of an issue to the userspace components anyway &#8211; with all the <strong>LD_LIBRARY_PATH</strong> flexibility it is possible to have multiple versions of the libraries installed without any issue. But as for the kernel, indeed, it is not that easy. So most of the times, those questions were directed at the kernel part of our driver &#8211; namely, the tiny <strong>i915.ko</strong> module which is responsible for making the graphical heart of Intel-based GPU beat.</p>

<p>Even for the kernel, this is not exactly true &#8211; Greg&#8217;s stable trees do include most of the critical fixes for our drivers since always. But it is true to some point &#8211; most of the newest development and patching happens within the usual Linux development window &#8211; and those patches and features are then merged to the release candidates of a future kernel during the merge window. And for the kernel, it is not that easy to have multiple kernels around at the same time without having to reboot between them here and again.</p>

<p>So therefore, I thought on giving a small gift to the users who are not still ready to jump into the latest and greatest kernels releases &#8211; but still want to enjoy the goodies brought with the latest versions of the graphics driver. So I prepared two kernel branches on my freedesktop.org kernel repository:</p>

<ul>
<li><a href="http://cgit.freedesktop.org/~eugeni/kernel/log/?h=3.1-drm-intel-backports" onclick="urchinTracker('/outgoing/cgit.freedesktop.org/_eugeni/kernel/log/?h=3.1-drm-intel-backports&amp;referer=');">3.0-drm-intel-backports</a> &#8212; latest 3.0.x kernel with all the <strong>i915</strong> patches from latest kernel release. Right now, it is <strong>3.0.16</strong> + <strong>195</strong> backported patches. Diffstat reports <strong>78 files changed, 4988 insertions(+), 2176 deletions(-)</strong>.</li>
<li><a href="http://cgit.freedesktop.org/~eugeni/kernel/log/?h=3.1-drm-intel-backports" onclick="urchinTracker('/outgoing/cgit.freedesktop.org/_eugeni/kernel/log/?h=3.1-drm-intel-backports&amp;referer=');">3.1-drm-intel-backports</a> &#8212; latest 3.1.x kernel with all the <strong>i915</strong> patches from latest kernel release. Right now, it is <strong>3.1.8</strong> + <strong>104</strong> backported patches. Diffstat reports <strong>74 files changed, 3147 insertions(+), 1589 deletions(-)</strong>.</li>
</ul>

<p>Besides driver backports, the patches which affect multiple drivers (like, <strong>i915</strong>, <strong>nouveau</strong> and <strong>r128</strong>) were also backported in full in those branches. And all the required build and API dependencies (like <strong>HDMI/DP ELD</strong> or <strong>drm/gem</strong> API changes) are also included in full.</p>

<p>I&#8217;ll try to keep those branches maintained on a semi-periodic basis and synchronized with the latest updates both from <strong>-stable</strong> branches, and from newest kernel releases.</p>

<p>Of course, let me put an obligatory support and stability statement:</p>

<p><strong>Those branches are not supported officially, are experimental and can be unstable or even broken sometimes (in which case, if you&#8217;d be kind enough to let me know about that, I&#8217;d try to fix them ASAP). So use them at your own risk.</strong></p>

<p>Other than that, have fun <img src='http://dodonov.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> .</p>
]]></content:encoded>
			<wfw:commentRss>http://dodonov.net/blog/2012/01/11/bleeding-edge-i915-for-stable-kernels/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>New year, new stuff</title>
		<link>http://dodonov.net/blog/2012/01/06/new-year-new-stuff/</link>
		<comments>http://dodonov.net/blog/2012/01/06/new-year-new-stuff/#comments</comments>
		<pubDate>Fri, 06 Jan 2012 16:21:46 +0000</pubDate>
		<dc:creator>eugeni</dc:creator>
				<category><![CDATA[devel]]></category>
		<category><![CDATA[english]]></category>
		<category><![CDATA[intel]]></category>
		<category><![CDATA[kernel]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[mesa]]></category>

		<guid isPermaLink="false">http://dodonov.net/blog/?p=1233</guid>
		<description><![CDATA[So, holidays came to an end, and it is time to get started with the 2012 series of &#8220;tales from the Intel Linux Graphics land&#8221;. But as the year has just started, it is still time to cover some amazing gifts which Santa ClausDaniel Vetter brought to you all right in time for Christmas. Yes, <a href='http://dodonov.net/blog/2012/01/06/new-year-new-stuff/'>[...]</a>]]></description>
			<content:encoded><![CDATA[<p>So, holidays came to an end, and it is time to get started with the 2012 series of &#8220;tales from the Intel Linux Graphics land&#8221;.</p>

<p>But as the year has just started, it is still time to cover some amazing gifts which <stroke>Santa Claus</stroke>Daniel Vetter brought to you all right in time for Christmas. Yes, I am talking about the new <strong>intel-gpu-tools 1.1</strong> release!</p>

<p>This new release comes after 2 years from the <strong>1.0.2</strong> release (which came out back in 2009), and accumulates an astonishing amount of changes:</p>

<ul>
<li><strong>Diffstat</strong> reports that <strong>138</strong> files were changed, having <strong>29694</strong> insertions and <strong>3524</strong> deletions.</li>
<li>Lots of new instructions and registers decoding logic was added in <strong>intel_error_decode</strong> and <strong>intel_reg_dumper</strong> tools</li>
<li>Many changes in <strong>intel_gpu_top</strong>, which can now run non-interactively for monitoring GPU usage statistics</li>
<li>Different display and mode setting tests</li>
<li>And, probably the most interesting feature out there, the introduction of a full-feature test suite for Intel and DRM testing.</li>
</ul>

<p>Let me stop a bit on this latest feature, and explain it in a more detailed form. Starting with the 1.1 version of <strong>intel-gpu-toops</strong>, the package provides a complete testing suite for most of the known issues and problems that have been caught in our graphics drivers for Linux for the past years. So when you run <strong>make test</strong> (as root) in the intel-gpu-tools directory, this will start a long pile of test cases, testing most parts of the GPU.</p>

<p>Ideally, all tests should pass &#8211; this means that your current kernel and userspace libraries are not affected by any known kernel (or userspace) issue. Some tests can fail &#8211; usually this comes with an explanation of why it fails (either on the test output or in <strong>dmesg</strong>). And some tests can fail in a very evil way, hanging the GPU or the entire machine. A specific category of tests (<strong>HANG</strong> tests), which are not run by default, are designed to test specific corner cases which should make your machine hang for good; and some tests are written specifically to caught performance regressions and hick-ups.</p>

<p>Still wonder why is this interesting? Well, I can think on one obvious huge bonuses we get from this test suite &#8211; if you are experiencing an issue, you can run the <strong>make test</strong> suite, and verify if it is a new genuine bug, or something that was already caught by a test case. And obviously, this is an easy way to find and track regressions on the kernel and drm level.</p>

<p>So, to sum it all up &#8211; if you want to give a quick try and check if your kernel/userspace/distribution configuration is affected by any known issue in the driver, just run the testsuite. If it passes, you are good to go. If it does not passes, well, you already know that something is not right and needs investigation.</p>

<p>Besides <strong>intel-gpu-tools</strong>, Mesa work continues towards the remaining <strong>GL 3.0</strong> features. During last few days of 2011, <strong>Eric Anholt</strong> sent some patches for adding hardware support to <strong>GL_EXT_transform_feedback</strong> bits present on the Ivy Bridge architecture. Besides those changes, hundreds of patches and discussions take place on the mesa-dev mailing list &#8211; the most user-notable change comes from the fact that <strong>XCB</strong> is now mandatory. I guess we have a clear winner in the <strong>XCB</strong> vs <strong>XLIB</strong> match in 2012..</p>

<p>On <strong>Kernel</strong> side, with the release of 3.2 version of the kernel, next merge windows has opened and already received some patches for <strong>3.3</strong> kernel series. Besides the usual fixes and new features which I already covered in previous posts, several alternatives were proposed by <strong>Chris Wilson</strong> and <strong>Eric Anholt</strong> to solve the mysterious <strong>missed IRQ</strong> issue which affects Ivy Bridge (and some Sandy Bridge) machines. The winner in this competition, however, was <strong>Daniel Vetter</strong>, who came with a simple patch that not only had solved the issues in a nice way, but also allowed us to remove several work-arounds which were added in the past. So far, all my Ivy Bridge machines are up and running for some days without any problems &#8211; which is totally awesome!</p>

<p>Moving to other projects, notable changes which were introduced in the past weeks were the move of <strong>intel_decode</strong> facility for decoding GPU batch buffers from <strong>intel-gpu-tools</strong> to <strong>libdrm</strong> library by <strong>Eric Anholt</strong>; patches from <strong>Paulo Zanoni</strong> to support new screen rotation feature of VPro; additional patches for improved <strong>Glamor</strong> performance from <strong>Zhigang Gong</strong>; support for building <strong>libdrm</strong> on <strong>Android</strong> from <strong>Chad Versace</strong>; Kristian Høgsberg created a new W-prefixed project for Wayland (namely, <strong>Weston</strong>, which is a different town in Massachusetts state. I actually got to get through it once when I was in the US back in 2005, working on a remote boot and software streaming project for mstech, which was further acquired by Ardence, which was further acquired in Citrix.. fun to see how the world goes in circles <img src='http://dodonov.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  ).</p>

<p>So I think that&#8217;s it for now. For the ones who are still in the new year holidays, enjoy the rest of your holidays; and for the ones who are already back into to the real life &#8211; welcome to 2012! <img src='http://dodonov.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://dodonov.net/blog/2012/01/06/new-year-new-stuff/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Happy 2012 to you all</title>
		<link>http://dodonov.net/blog/2011/12/31/happy-2012-to-you-all-4/</link>
		<comments>http://dodonov.net/blog/2011/12/31/happy-2012-to-you-all-4/#comments</comments>
		<pubDate>Sun, 01 Jan 2012 00:26:17 +0000</pubDate>
		<dc:creator>eugeni</dc:creator>
				<category><![CDATA[english]]></category>
		<category><![CDATA[intel]]></category>
		<category><![CDATA[mandriva]]></category>
		<category><![CDATA[photography]]></category>
		<category><![CDATA[review]]></category>

		<guid isPermaLink="false">http://dodonov.net/blog/?p=1228</guid>
		<description><![CDATA[Yeah, 2011 is coming to the end, and had already switched place with 2012 in most countries already. For me, 2011 was extremely busy, exhausting but also very fruitful. I started it in a completely different situation from 2010, when I was a mere developer in Mandriva company. And during the course of 2010 and, <a href='http://dodonov.net/blog/2011/12/31/happy-2012-to-you-all-4/'>[...]</a>]]></description>
			<content:encoded><![CDATA[<p>Yeah, 2011 is coming to the end, and had already switched place with 2012 in most countries already.</p>

<div class="wp-caption alignnone" style="width: 510px"><img title="13253762543831.jpg" class="alignnone" alt="image" src="http://dodonov.net/blog/wp-content/uploads/2011/12/wpid-13253762543831.jpg" /><p class="wp-caption-text">Somewhere on the road to curitiba, starting 2011....</p></div>

<p>For me, 2011 was extremely busy, exhausting but also very fruitful. I started it in a completely different situation from 2010, when I was a mere developer in Mandriva company. And during the course of 2010 and, later, 2011, I got the chance to work as engineering team leader for Conectiva, then development manager and, finally, technical diretor for Mandriva. And, after this experience, I got to move into Intel, working with even more challenging and amazing projects.</p>

<p>So yes, it was a hugely crazy and great experience. Thank you 2011 &#8211; despite all the problems and obstacles, you was great after all if we sum up everything.</p>

<p>See you all in 2012!</p>
]]></content:encoded>
			<wfw:commentRss>http://dodonov.net/blog/2011/12/31/happy-2012-to-you-all-4/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Holidays news from Intel Linux Graphics land</title>
		<link>http://dodonov.net/blog/2011/12/20/holidays-news-from-intel-linux-graphics-land/</link>
		<comments>http://dodonov.net/blog/2011/12/20/holidays-news-from-intel-linux-graphics-land/#comments</comments>
		<pubDate>Tue, 20 Dec 2011 13:42:16 +0000</pubDate>
		<dc:creator>eugeni</dc:creator>
				<category><![CDATA[devel]]></category>
		<category><![CDATA[english]]></category>
		<category><![CDATA[intel]]></category>
		<category><![CDATA[kernel]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[Linux-Planet]]></category>
		<category><![CDATA[mageia]]></category>
		<category><![CDATA[mandriva]]></category>
		<category><![CDATA[mesa]]></category>
		<category><![CDATA[x.org]]></category>

		<guid isPermaLink="false">http://dodonov.net/blog/?p=1202</guid>
		<description><![CDATA[Yeah, I admit that my semi-periodic updates about Intel Linux Graphics got more &#8220;seldom-periodic&#8221; than &#8220;truly-periodic&#8221; for the past weeks. But have no fear &#8211; they are back! And I am still on my self-appointed bi-weekly schedule estimate. This is what&#8217;s good about semi-periodic schedule &#8211; one never can run too much out of it <a href='http://dodonov.net/blog/2011/12/20/holidays-news-from-intel-linux-graphics-land/'>[...]</a>]]></description>
			<content:encoded><![CDATA[<p>Yeah, I admit that my semi-periodic updates about Intel Linux Graphics got more &#8220;seldom-periodic&#8221; than &#8220;truly-periodic&#8221; for the past weeks. But have no fear &#8211; they are back! And I am still on my self-appointed bi-weekly schedule estimate. This is what&#8217;s good about semi-periodic schedule &#8211; one never can run too much out of it <img src='http://dodonov.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> .</p>

<p>So starting with the coolest news &#8211; the <strong>Mesa</strong> team is getting close to the GL 3.0 milestone! Yeah, with latest <strong>GL_ext_transform_feedback</strong> patches from <strong>Paul Berry</strong>, the last major piece of GL 3.0 spec is getting into place. There are still some extensions missing and lots of smaller tasks to be done, but it is possible to say that <em>we are almost there</em>. I think that this is really exciting for both us, and for all the Linux and open-source users in the world &#8211; so yeah &#8211; we&#8217;ve been good boys and girls during the year and Santa Claus gift has materialized itself in form of almost-full GL 3.0 support in Mesa.</p>

<p>Who knows, maybe prior to the Chinese new year we&#8217;ll receive the 2nd part of this gift (in other words, <strong>mesa 8.0</strong> release <img src='http://dodonov.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> ).</p>

<p>On <strong>kernel</strong> side, the <strong>3.2-rc6</strong> release brought lots of awesome changes to our drivers. Yes, I am talking about everyone&#8217;s favorite <strong>rc6</strong> and <strong>semaphores</strong> features. They are on by default on <strong>Ivy Bridge</strong> architecture, and are also enabled on <strong>Sandy Bridge</strong> if <strong>VTd</strong> is disabled. So most of you should enjoy greatly improved battery life, considerable faster performance and also enhanced stability within the <strong>i915</strong> driver when <strong>Linux 3.2</strong> will be released.</p>

<p>Besides those patches, work has started on collecting patches for the <strong>3.3</strong> merge window. <strong>Daniel Vetter</strong> sent his pending patches in a form of tiny <strong>43</strong>-patches series. Those patches bring <strong>PPGTT</strong> support, improve <strong>debugfs</strong> handling, enhance <strong>pread/pwrite</strong> performance, fix <strong>swizzling</strong> for SNB/IVB, improve <strong>forcewake</strong> operations and enhance debugging support for cases when GPU rings get stuck.</p>

<p><strong>Ben</strong> has also sent his patches for scheduling/throttling, but they haven&#8217;t received much interest except from myself and phoronix <img src='http://dodonov.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> . Those patches add support for more fine-grained GPU scheduling and rings load distribution between individual process. I am really interested in this work, and I hope that they will be accepted into the main kernel in the foreseeable future.</p>

<p>Also on kernel, <strong>Rodrigo Vivi</strong> and <strong>Paulo Zanoni</strong> sent out some patches which finally fix some corner cases for <strong>TV-out</strong> and <strong>SDVO</strong> outputs. This certainly should make many users happy out there just in time for Christmas.</p>

<p>And finally, for the kernel size, <strong>Chris Wilson</strong> came with a patch which works around the <strong>missed IRQs</strong> issues on Ivy Bridge platform. With this patch, and with semaphores being enabled on <strong>Ivy Bridge</strong> by default, I am very happy to say that we don&#8217;t have <strong>any</strong> blocking bugs for <strong>Ivy Bridge</strong> in our bugzilla. I think that it comes as a nice Christmas gift for all the users out there (the ones who already have an <strong>Ivy Bridge</strong> machine, and the ones who will get it by its launch &#8211; which is still 4 months away). Of course, I won&#8217;t talk much about it prior to its official launch, but trust me &#8211; <strong>Ivy Bridge rocks!</strong>. I can&#8217;t wait to have an Ultrabook based on this platform for myself&#8230;</p>

<p>Besides <strong>mesa</strong> and <strong>kernel</strong>, it is worth mentioning that on the <strong>2D</strong> side, <strong>Zhigang</strong> added full <strong>Glamor</strong> support into the driver. The Glamor acceleration is still considered very experimental and non-stable, but now it is available for the world to take a peek on it and witness how it works with their own eyes.</p>

<p>So I think that this is pretty much it. We have hundreds of patches floating around for all the projects, thousands of emails and millions of users in the world &#8211; and we are working hard to make all of them happy with the results of our work. 2011 was extremely productive and rewarding for us &#8211; and I hope that the year of <strong>11111011100</strong> (a.k.a., 0x7DC or 2012_base10 for the ones still reading in decimal numbers out there <img src='http://dodonov.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> ) will be even more interesting*!</p>

<p>See you!</p>

<p>(*) Assuming the world won&#8217;t end in a core dump caused by the Mayan millennium counter overflow bug <img src='http://dodonov.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> .</p>
]]></content:encoded>
			<wfw:commentRss>http://dodonov.net/blog/2011/12/20/holidays-news-from-intel-linux-graphics-land/feed/</wfw:commentRss>
		<slash:comments>10</slash:comments>
		</item>
		<item>
		<title>New Intel graphics stack release</title>
		<link>http://dodonov.net/blog/2011/12/06/new-intel-graphics-stack-release/</link>
		<comments>http://dodonov.net/blog/2011/12/06/new-intel-graphics-stack-release/#comments</comments>
		<pubDate>Tue, 06 Dec 2011 12:16:26 +0000</pubDate>
		<dc:creator>eugeni</dc:creator>
				<category><![CDATA[devel]]></category>
		<category><![CDATA[english]]></category>
		<category><![CDATA[intel]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[Linux-Planet]]></category>

		<guid isPermaLink="false">http://dodonov.net/blog/?p=1195</guid>
		<description><![CDATA[As many of you have already seen, we have just released a new version of the Intel Linux Graphics stack, composed by Kernel 3.1 (or 3.1.x in practice), Mesa 7.11.2, Libdrm 2.4.27, vaapi and vaapi-driver-intel 1.0.15 and xf86-video-intel 2.17. The focus of this release was on performance and stability improvements in the drivers, and I <a href='http://dodonov.net/blog/2011/12/06/new-intel-graphics-stack-release/'>[...]</a>]]></description>
			<content:encoded><![CDATA[<p>As many of you have already seen, we have just <a href="http://lists.freedesktop.org/archives/intel-gfx/2011-December/013795.html" onclick="urchinTracker('/outgoing/lists.freedesktop.org/archives/intel-gfx/2011-December/013795.html?referer=');">released</a> a new version of the <a href="http://intellinuxgraphics.org/2011Q4.html" onclick="urchinTracker('/outgoing/intellinuxgraphics.org/2011Q4.html?referer=');">Intel Linux Graphics stack</a>, composed by Kernel <strong>3.1</strong> (or <strong>3.1.x</strong> in practice), Mesa <strong>7.11.2</strong>, Libdrm <strong>2.4.27</strong>, vaapi and vaapi-driver-intel <strong>1.0.15</strong> and xf86-video-intel <strong>2.17</strong>.</p>

<p>The focus of this release was on performance and stability improvements in the drivers, and I think we managed to get the job done according to what we expected. Thanks to <strong>LLC</strong> caching and improvements in both Kernel and Mesa, 3D performance was improved by a large margin on Sandy Bridge generation of GPUs onwards, and many annoying issues were fixed as well (with some of the fixes already queued for Kernel 3.2 release). And I&#8217;d also like to highlight lots of work towards <strong>GLES</strong> compliance on Sandy Bridge architecture, and many and many different stability fixes in all the projects.</p>

<p>For statistical purposes, my saved bugzilla searches count <strong>253</strong> bug reports which were closed after the <a href="http://intellinuxgraphics.org/2011Q3.html" onclick="urchinTracker('/outgoing/intellinuxgraphics.org/2011Q3.html?referer=');">previous release</a>, and we had <strong>594</strong> bug tickets in total which had any activity since that release. Of course, this does not represents what was done by an accurate number, so please, just use those numbers as some sort of bugzilla pondering references.</p>

<p>So to sum it all up, I&#8217;d like to thank all the developers, QA, users, testers, and all the community we have around Intel Linux Graphics project for your amazing work. Yes, the Intel Linux Graphics project has not only a <a href="http://intellinuxgraphics.org/team.html" onclick="urchinTracker('/outgoing/intellinuxgraphics.org/team.html?referer=');">team</a> within Intel &#8211; but also a huge community and users all around the world, following the Open-Source road from Kernel up to the UI components. Thank you all guys!</p>

<p>Enjoy!</p>
]]></content:encoded>
			<wfw:commentRss>http://dodonov.net/blog/2011/12/06/new-intel-graphics-stack-release/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>News from the fronts</title>
		<link>http://dodonov.net/blog/2011/12/01/news-from-the-fronts-2/</link>
		<comments>http://dodonov.net/blog/2011/12/01/news-from-the-fronts-2/#comments</comments>
		<pubDate>Thu, 01 Dec 2011 19:36:48 +0000</pubDate>
		<dc:creator>eugeni</dc:creator>
				<category><![CDATA[devel]]></category>
		<category><![CDATA[english]]></category>
		<category><![CDATA[intel]]></category>
		<category><![CDATA[kernel]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[Linux-Planet]]></category>
		<category><![CDATA[mageia]]></category>
		<category><![CDATA[mandriva]]></category>
		<category><![CDATA[mesa]]></category>
		<category><![CDATA[x.org]]></category>

		<guid isPermaLink="false">http://dodonov.net/blog/?p=1186</guid>
		<description><![CDATA[Development goes on, on all the fronts, and time has come for some news about Intel Linux Graphics project. For the Kernel side, some nice patch series have arrived to the list: Daniel Vetter sent his PPGTT enabling patches, which resulted in many interesting reviews and discussions. PPGTT, or Per-Process Graphics Translation Table, is a <a href='http://dodonov.net/blog/2011/12/01/news-from-the-fronts-2/'>[...]</a>]]></description>
			<content:encoded><![CDATA[<p>Development goes on, on all the fronts, and time has come for some news about Intel Linux Graphics project.</p>

<p>For the <strong>Kernel</strong> side, some nice patch series have arrived to the list:</p>

<ul>
<li><strong>Daniel Vetter</strong> sent his <strong>PPGTT</strong> enabling patches, which resulted in many interesting reviews and discussions. PPGTT, or Per-Process Graphics Translation Table, is a mechanism for remapping GPU memory into system one. Unlike traditional Graphics Translation Table, which has a global mapping for everything, PPGTT allows each process to have its own level of mapping. On practice, it should improve stability by a large margin and performance by a considerable value, and also is a nice thing to have in general, specially when hardware supports it natively (which it does, starting with Sandy Bridge). Also, if you are interested in learning the details of how GTT and GPU memory management works, you should check this <a href="http://lwn.net/Articles/257417/" onclick="urchinTracker('/outgoing/lwn.net/Articles/257417/?referer=');">excellent article from 2007</a> for a great introduction.</li>
<li><strong>Ben Widawsky</strong> has sent a new series of patches for forced GPU throttling and scheduling. I already described them in one of the previous posts, and I am really interested in seeing them accepted to the kernel.</li>
<li>I&#8217;ve sent out some patches for userspace-controled <strong>RC6</strong> enabling and tweaking, together with some patches for enabling <strong>semaphores</strong> and <strong>rc6</strong> by default on newer generations of gfx hardware. Those patches, together with Ben&#8217;s ones, also raised an interesting point &#8211; we have many userspace-controllable items in the <strong>debugfs</strong> file system, which should probably belong to <strong>sysfs</strong> instead. This would require a proper definition of their usage and behavior before real userspace applications would be able to use them.</li>
<li>And <strong>Wu Fengguang</strong> sent some patches for Display Port and HDMI fixes.</li>
</ul>

<p>Moving up the stack to the <strong>3D</strong> driver, some major news worth highlighting are:</p>

<ul>
<li>On <strong>Mesa</strong> side, the major news is <strong>Ian</strong> has released <strong>Mesa 7.11.2</strong> with some additional GLES and EGL patches, and a small patch which fixed Mesa build on <strong>Mandriva</strong> (and also on other distributions which use <strong>-Werror</strong> by default, such as Mageia for example).</li>
<li>Lots of work is happening in Mesa, targeting <strong>OpenGL 3.0</strong> support by the end of the year. <strong>GLSL 1.30</strong> is already among us, and most of GL 3.0-required extensions are in place, but there are many things to do. Hopefully they will be all done in the next few weeks.</li>
<li>Speaking on <strong>Mesa</strong>, some major news happened for the drivers using the <strong>Gallium</strong> technology. As you probably heard through Phoronix already, the <strong>i965g, Cell</strong> and <strong>Failover</strong> gallium-based drivers were dropped from Mesa due to lack of love, support and care. Sad &#8211; but this is life. And in any case, <strong>i915g</strong> driver is still there, and of course, those events do not affect Intel&#8217;s <strong>915</strong> and <strong>965</strong> Mesa drivers at all.</li>
<li>And also on <strong>Mesa</strong>, Ian has started the work on GLX_ARB_create_context and the layered GLX_ARB_create_context_profile extension, and came with a question whether it is still worthy to support non-XCB protocol, or if there are  any platforms that can&#8217;t / don&#8217;t use XCB for X protocol yet. The overall feedback so far was to drop non-XCB bits sooner than later. So looks like <strong>XCB</strong> has won the X protocol war in the end <img src='http://dodonov.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> .</li>
</ul>

<p>And finally, on the <strong>xserver</strong> side, discussions were raised on the mailing list on the release dates for the next <strong>xserver</strong> release, and the Xinput 2.2 state in it. It is almost there, and will probably get merged until Christmas. Also, Xorg-server 1.11.2.901 (a.k.a., <strong>1.11.3-RC2</strong>) was released.</p>
]]></content:encoded>
			<wfw:commentRss>http://dodonov.net/blog/2011/12/01/news-from-the-fronts-2/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Long time no news?</title>
		<link>http://dodonov.net/blog/2011/11/19/long-time-no-news/</link>
		<comments>http://dodonov.net/blog/2011/11/19/long-time-no-news/#comments</comments>
		<pubDate>Sat, 19 Nov 2011 10:35:54 +0000</pubDate>
		<dc:creator>eugeni</dc:creator>
				<category><![CDATA[devel]]></category>
		<category><![CDATA[english]]></category>
		<category><![CDATA[intel]]></category>
		<category><![CDATA[kernel]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[Linux-Planet]]></category>
		<category><![CDATA[mandriva]]></category>
		<category><![CDATA[mesa]]></category>

		<guid isPermaLink="false">http://dodonov.net/blog/?p=1182</guid>
		<description><![CDATA[Well, not that long time, but still, I&#8217;ve been somewhat slower on news about Intel Linux Graphics this week, partly due to LinuxCon Brazil which happened here. Speaking about it, it was actually the first LinuxCon I attended (I also went to LinuxWorld Brazil in 2006, but that&#8217;s pretty much all the Linux-specific events I&#8217;ve <a href='http://dodonov.net/blog/2011/11/19/long-time-no-news/'>[...]</a>]]></description>
			<content:encoded><![CDATA[<p>Well, not that long time, but still, I&#8217;ve been somewhat slower on news about Intel Linux Graphics this week, partly due to LinuxCon Brazil which happened here.</p>

<p>Speaking about it, it was actually the first LinuxCon I attended (I also went to LinuxWorld Brazil in 2006, but that&#8217;s pretty much all the Linux-specific events I&#8217;ve been to). So it was really nice to talk to all the people I know from the Internet and put some faces behind the irc nicks and email handles. It was also really nice to meet and talk to Linus, Dirk Hohndel and Lennart Poettering in person, and meet old ex-conectiva people from all over the world.</p>

<p>It was also particularly nice to meet and talk to Christian Reis (a.k.a., Kiko), who is the VP of Engineering at Linaro now. He used to study with me at UFSCar university more than a decade ago and we met on a couple of events at São Carlos previously. He did a very interesting keynote about the state of ARM on Linux at the beginning of the conference, and we talked a lot about GFX drivers on Linux afterwards.</p>

<p>As for my presentation, I&#8217;d like to thank you all for attending and asking interesting and technical questions. We actually managed to have a mini real-time debugging session on some lvds issues at the end of the presentation <img src='http://dodonov.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> .</p>

<p>And of course, I managed to announce that Mesa 7.11.1 was going to be released about 5 minutes before Ian sent his email &#8211; it happened right during my presentation actually <img src='http://dodonov.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> . And so.. I spoke of mesa, so yeah, let&#8217;s head back to the Intel Linux Graphics news now.</p>

<p>As you all know, <strong>Mesa 7.11.1</strong> was released this week. It comes with an absolutely amazing number of 200+ backported patches for performance and stability enhancements in pretty much all the components we have. It is not the last release of the 7.11 branch, so you should expect some more releases in the next couple of months. And perhaps some more even after <strong>Mesa 8.0</strong> will be released.</p>

<p>On Kernel side, lots of things happened this week. Linus has released <strong>Linux 3.2-rc2</strong> (and also blogged about it in his google+ page while fighting the amazingly fast brazilian 3g connection issues <img src='http://dodonov.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> ). It comes with many patches and fixes, for both Intel and non-Intel gfx cards. There is still many patches to get into the 3.2 branch though.</p>

<p>Also, I sent out some patches for once again enabling <strong>RC6</strong> and <strong>Semaphores</strong> by default, but after a discussion on intel-gfx mailing lists I got some ideas on reworking them. And <strong>Keith Packard</strong> has also sent a rc6-enabling patch earlier today, which probably will fix all the <strong>RC6</strong> issues and allow it to enter the kernel. This is the 5th attempt on enabling it by default as far as I remember, so I hope it will get in this time.</p>

<p>On <strong>xf86-video-intel</strong>, Chris Wilson has released the <strong>2.17</strong> version of the 2D driver, which comes with a large number of fixes for the UXA acceleration. Besides UXA, it also comes with more than 300 patches for <strong>SNA</strong> &#8211; so if you are using it, you <strong>really</strong> should update. Trust me, you really want to do it <img src='http://dodonov.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> .</p>

<p>Still on Kernel, as many of you know, the latest Bios update to the Ivy Bridge bios somewhat broke suspend-resume for IVB machines out there. Keith Packard and Jesse Barnes had already sent <a href="http://lists.freedesktop.org/archives/intel-gfx/2011-November/013544.html" onclick="urchinTracker('/outgoing/lists.freedesktop.org/archives/intel-gfx/2011-November/013544.html?referer=');">some patches</a> to address that, so if you one of the lucky ones out there with an Ivy Bridge, and you do have this issue &#8211; <strong>please</strong>, test it and let us know if it works!</p>

<p>On <strong>Mesa</strong> side, besides the <strong>7.11.1</strong> release, lots and lots of work is going on to finish GL 3.0 support. Among around a thousand of mails and commits on the mesa-dev list, it is hard to highlight the most important ones, but I&#8217;d like to give attention to the <strong>Chad Versace</strong>&#8216;s patches which bring the <strong>HiZ</strong> support and enable it by default, and to <strong>Paul Berry</strong>&#8216;s work on <strong>GLSL 1.30</strong>.</p>

<p>But besides those, yes, there is a huge number of amazing changes on pretty much everything, with some interesting changes from Eric, Kenneth, Chad, Yuanhan and Ian. Mesa 8.0 ought to be an exciting release!</p>

<p>So that&#8217;s it for today. See you!</p>
]]></content:encoded>
			<wfw:commentRss>http://dodonov.net/blog/2011/11/19/long-time-no-news/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Intel Linux Graphics on LinuxCon Brazil</title>
		<link>http://dodonov.net/blog/2011/11/18/intel-linux-graphics-on-linuxcon-brazil/</link>
		<comments>http://dodonov.net/blog/2011/11/18/intel-linux-graphics-on-linuxcon-brazil/#comments</comments>
		<pubDate>Fri, 18 Nov 2011 15:55:00 +0000</pubDate>
		<dc:creator>eugeni</dc:creator>
				<category><![CDATA[devel]]></category>
		<category><![CDATA[english]]></category>
		<category><![CDATA[intel]]></category>
		<category><![CDATA[kernel]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[Linux-Planet]]></category>
		<category><![CDATA[mandriva]]></category>
		<category><![CDATA[mesa]]></category>
		<category><![CDATA[review]]></category>
		<category><![CDATA[vaapi]]></category>
		<category><![CDATA[writing]]></category>
		<category><![CDATA[x.org]]></category>

		<guid isPermaLink="false">http://dodonov.net/blog/?p=1174</guid>
		<description><![CDATA[For those of you who couldn&#8217;t attend LinuxCon Brazil &#8211; I&#8217;ve put my presentation about Intel Linux Graphics online for you all. (of course, if you have attended and want to see it again, you can do this too ). Have fun! Intel Linux Graphics]]></description>
			<content:encoded><![CDATA[<p>For those of you who couldn&#8217;t attend LinuxCon Brazil &#8211; I&#8217;ve put my presentation about Intel Linux Graphics online for you all.</p>

<p>(of course, if you have attended and want to see it again, you can do this too <img src='http://dodonov.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  ).</p>

<p>Have fun!</p>

<p><a title="View Intel Linux Graphics on Scribd" href="http://www.scribd.com/doc/73071712/Intel-Linux-Graphics" style="margin: 12px auto 6px auto; font-family: Helvetica,Arial,Sans-serif; font-style: normal; font-variant: normal; font-weight: normal; font-size: 14px; line-height: normal; font-size-adjust: none; font-stretch: normal; -x-system-font: none; display: block; text-decoration: underline;" onclick="urchinTracker('/outgoing/www.scribd.com/doc/73071712/Intel-Linux-Graphics?referer=');">Intel Linux Graphics</a></p>

<iframe class="scribd_iframe_embed" src="http://www.scribd.com/embeds/73071712/content?start_page=1&#038;view_mode=slideshow&#038;access_key=key-22j19xafpw8tiilt36ls" data-auto-height="true" data-aspect-ratio="1.33333333333333" scrolling="no" id="doc_97783" width="100%" height="600" frameborder="0"></iframe>

<script type="text/javascript">(function() { var scribd = document.createElement("script"); scribd.type = "text/javascript"; scribd.async = true; scribd.src = "http://www.scribd.com/javascripts/embed_code/inject.js"; var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(scribd, s); })();</script>
]]></content:encoded>
			<wfw:commentRss>http://dodonov.net/blog/2011/11/18/intel-linux-graphics-on-linuxcon-brazil/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Friday news for the masses</title>
		<link>http://dodonov.net/blog/2011/11/11/friday-news-for-the-masses/</link>
		<comments>http://dodonov.net/blog/2011/11/11/friday-news-for-the-masses/#comments</comments>
		<pubDate>Fri, 11 Nov 2011 20:40:45 +0000</pubDate>
		<dc:creator>eugeni</dc:creator>
				<category><![CDATA[devel]]></category>
		<category><![CDATA[english]]></category>
		<category><![CDATA[intel]]></category>
		<category><![CDATA[mageia]]></category>
		<category><![CDATA[mandriva]]></category>
		<category><![CDATA[mesa]]></category>
		<category><![CDATA[x.org]]></category>

		<guid isPermaLink="false">http://dodonov.net/blog/?p=1168</guid>
		<description><![CDATA[Yeah, I know that it is Friday, and it is also 11/11/11 (though I still don&#8217;t know if the end of the world was expected on 11/11/11 at 11:11am or 11/11/11 at 11:11pm), but still, the development goes on and on. But as I said, heck, it is Friday, and we all have a nice <a href='http://dodonov.net/blog/2011/11/11/friday-news-for-the-masses/'>[...]</a>]]></description>
			<content:encoded><![CDATA[<p>Yeah, I know that it is Friday, and it is also 11/11/11 (though I still don&#8217;t know if the end of the world was expected on 11/11/11 at 11:11am or 11/11/11 at 11:11pm), but still, the development goes on and on.</p>

<p>But as I said, heck, it is Friday, and we all have a nice binary date on the calendar, so I&#8217;ll give you two additional reasons for celebration today:</p>

<ul>
<li><p>On Mesa, <strong>Eric Anholt</strong> and <strong>Ian Romanick</strong> exposed <strong>GLSL 1.30</strong> compatibility for Intel gen6+ cards. Yes, with the latest commit which added gl_VertexID support, everything required by GLSL spec should be supported now. Yet another milestone towards GL 3.0 was passed.</p></li>
<li><p>And on <strong>xf86-video-intel</strong>, patches which add the support for <strong>Glamor</strong> were sent by Zhigang. Yes, I am talking a lot about Glamor in the past days, as it certainly looks like a very interesting project. Now, with patches which split the device-independent library from the device-dependent part, its support towards upstreaming is getting closer and closer.</p></li>
</ul>

<p>Besides those items, as usual, we have had lots of development and news for all the projects. And next week, we&#8217;ll have <strong>LinuxCon</strong> in Brazil, where I&#8217;ll give a presentation about Intel Linux Graphics, what it is, how it works, and what are all those scary words like kernel, drm, ddx, vaapi and wayland. And, of course, we&#8217;ll have lots of amazing presentations on many Linux-related projects.</p>

<p>So if you&#8217;ll be there, I&#8217;ll be glad to answer your questions and talk about pretty much everything.</p>

<p>See you!</p>
]]></content:encoded>
			<wfw:commentRss>http://dodonov.net/blog/2011/11/11/friday-news-for-the-masses/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>And now, on your favorite Intel Linux Graphics news station&#8230;</title>
		<link>http://dodonov.net/blog/2011/11/08/and-now-on-your-favorite-intel-linux-graphics-news-station/</link>
		<comments>http://dodonov.net/blog/2011/11/08/and-now-on-your-favorite-intel-linux-graphics-news-station/#comments</comments>
		<pubDate>Tue, 08 Nov 2011 22:08:04 +0000</pubDate>
		<dc:creator>eugeni</dc:creator>
				<category><![CDATA[devel]]></category>
		<category><![CDATA[english]]></category>
		<category><![CDATA[intel]]></category>
		<category><![CDATA[kernel]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[Linux-Planet]]></category>
		<category><![CDATA[mageia]]></category>
		<category><![CDATA[mandriva]]></category>
		<category><![CDATA[mesa]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[x.org]]></category>

		<guid isPermaLink="false">http://dodonov.net/blog/?p=1161</guid>
		<description><![CDATA[After some period of silence, this blog returns in bringing you the latest and greatest news from the Intel Linux Graphics world. So if you were sad, depressed and crying in despair without having a chance of reading about what was going on with the Intel Graphics for the past days, rejoice! Those past few <a href='http://dodonov.net/blog/2011/11/08/and-now-on-your-favorite-intel-linux-graphics-news-station/'>[...]</a>]]></description>
			<content:encoded><![CDATA[<p>After some period of silence, this blog returns in bringing you the latest and greatest news from the Intel Linux Graphics world.</p>

<p>So if you were sad, depressed and crying in despair without having a chance of reading about what was going on with the Intel Graphics for the past days, rejoice! <img src='http://dodonov.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>

<p>Those past few days were quite busy on all the projects, and with thousands of emails to keep track of it is hard to select the most relevant news &#8211; all of them are! But I&#8217;ll try to summarize the most interesting stuff that happened for the past few days.</p>

<p>Starting with kernel, as you all already know, we are living in the post-3.1 era now, with the release of <a href="https://plus.google.com/109995262342451767357/posts/jALV6z8SnC7" onclick="urchinTracker('/outgoing/plus.google.com/109995262342451767357/posts/jALV6z8SnC7?referer=');">Linux 3.2-rc1</a>. It brings lots and lots of fixes and improvements all around, and much more are yet to come.</p>

<p>On Intel Graphics side, the following items caught my attention for the past days:</p>

<ul>
<li>Keith Packard sent yet more <strong>eDP</strong>-related patches, allowing eDP displays connected to the PCH to, well, work <img src='http://dodonov.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> . The main issue came from the fact that the driver incorrectly was treating a PCH-connected eDP panel like a CPU-connected one, setting the wrong bits in the wrong places.</li>
<li>Daniel Vetter has sent out a series of patches for <strong>simulating GPU hangs</strong>. As you all know, GPU hangs are an (unfortunate) part of a GPU driver life, and there are many factors which could cause them, ranging from incorrect GL instructions to out-of-bounds variables somewhere in the stream of commands and down to hardware failures. Prior to Daniel&#8217;s patches, the only way to see a GPU hang was by having a hung GPU, so most of them were not easy to reproduce and investigate. Now, it is possible to stop the GPU at will, and see the effects. This is particularly interesting at least for me, because I was working on some tools for doing <a href="http://permalink.gmane.org/gmane.comp.freedesktop.xorg.drivers.intel/6408" onclick="urchinTracker('/outgoing/permalink.gmane.org/gmane.comp.freedesktop.xorg.drivers.intel/6408?referer=');">heuristics analysis</a> of the root-causes of GPU hangs. Now, I can do this task with much more ease.</li>
<li>Jesse Barnes sent out a new round of <strong>planes</strong> support, and support for SNB and IVB <strong>video sprites</strong>. The video sprites support different video formats natively and can do scaling as well, and their support was added to the DRM overlay code with this patchset.</li>
<li>Ken and Daniel did a bit of <strong>cleanup</strong> of code specific to some pre-production SNB systems. Now that Sandy Bridge is out there, those bits are not necessary anymore, so they were wiped out.</li>
<li>Daniel has sent a 13-patch series of <strong>pwrite/pread</strong> reworking. This patchset fixes some spurious -EFAULTS issues which could lead to kernel issues, improves the performance of pread/pwrite calls on LLC machines and cleanups unused code, replacing them with faster execution paths.</li>
<li>Also on kernel,  I&#8217;ve found an issue which can cause <strong>division-by-zero</strong> in kernel when accessing power-related registers from userspace, and sent a small patch fixing it. Apparently, the very same issue was already found back in July by <a href="http://lists.freedesktop.org/archives/intel-gfx/2011-July/011380.html" onclick="urchinTracker('/outgoing/lists.freedesktop.org/archives/intel-gfx/2011-July/011380.html?referer=');">Konstantin Belousov</a>. It is a small fix for a potential kernel crashing issue, and let&#8217;s hope it will be picked up in one of the next kernel pull requests.</li>
<li>And Jesse Barnes sent out some documentation and cleanup patches for the <strong>drm</strong> subsystem.</li>
<li>Still on kernel, but outside of our team&#8217;s area, one big news for Linux Graphics will certainly make some people out there happy. Yes, I am speaking about Alan Cox moving of basic <strong>GMA500</strong> driver out of staging. This driver support accelerated console and non-accelerated KMS on Poulsbo, Oaktrail, Cedarview and Medfield hardware. Note that medfield support in this initial patchset is left out on purpose, as it needs considerable rework to be ready to enter main kernel.</li>
</ul>

<p>One particular issue worth highlighting is that a <strong>long-standing issue</strong> on GL-based applications (among which Unigine Tropics and Sanctuary are probably the most notable examples, among many others) was finally fixed, thanks to an amazing work by Eric Anholt, Kenneth Graunke and Keith Packard. This issue can be described as &#8216;small moving ants on top of image edges&#8217; or &#8216;<strong>flickering pixels</strong>&#8216;. So if you have had this issue, make sure to check out the <a href="http://lkml.indiana.edu/hypermail/linux/kernel/1111.0/02876.html" onclick="urchinTracker('/outgoing/lkml.indiana.edu/hypermail/linux/kernel/1111.0/02876.html?referer=');">patches</a>!</p>

<p>Going to Mesa, out of hundreds of emails and commits, it is hard to choose the most interesting ones. Work on <strong>GL 3.0</strong> support proceeds quickly, and new mesa stability release, <strong>7.11.1</strong> is almost out of the door. Our Q&amp;A team did a full testing of this bugfixing release, and haven&#8217;t found much issues. So prepare yourself, as in few weeks we&#8217;ll have <strong>MESA 7.11.1</strong> out there. Stay tuned for Ian&#8217;s announcement in nearby future.</p>

<p>But as for mesa master branch, the following patches called my attention the most:</p>

<ul>
<li>Eric sent a patch series to add support for GL_EXT_texture_integer on i965 driver.</li>
<li>More work towards EXT_transform_feedback was done by Dan McCabe and Paul Berry, and Marek from the community side.</li>
<li>And we had lots of fixes for potential segmentation faults, safety checks, better hardware specification compatibility, piglit-based fixes and other issues from Yuanhan, Eric, Ken, Chad and Ian.</li>
</ul>

<p>On Wayland side of the force, lots of patches went in those days. Among those, there was an interesting proposal for the screen locking protocol by Pekka Paalanen, and some bugfixing patches from Juan Zhao.</p>

<p>Going to the other components, we had a release of <strong>xorg-xserver</strong> 1.11.2 RC2, with several crashes and correctness fixes; and new stable <strong>pixman</strong> 0.24.0 which brings many performance improvements and usage of architecture-specific instructions to improve overall performance over a number of different operations (such as bilinear scaling for example).</p>

<p>And finally, for the <strong>intel-gpu-tools</strong>, I was working on a new <strong>intel_gpu_analyze</strong> application, which I was using to tracing and analyzing CPU and GPU performance data during workloads, and also checking on the corresponding power consumption. This is a very experimental code yet, and it lives at <a href="http://cgit.freedesktop.org/~eugeni/intel-gpu-tools" onclick="urchinTracker('/outgoing/cgit.freedesktop.org/_eugeni/intel-gpu-tools?referer=');">my freedesktop.org git</a> for now. But still, I can already do some nice performance analysis like <a href="http://eugeni.dodonov.net/webgl_firefox_lasso/" onclick="urchinTracker('/outgoing/eugeni.dodonov.net/webgl_firefox_lasso/?referer=');">this one</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://dodonov.net/blog/2011/11/08/and-now-on-your-favorite-intel-linux-graphics-news-station/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Continuing with the semi-periodic updates&#8230;</title>
		<link>http://dodonov.net/blog/2011/11/01/continuing-with-the-semi-periodic-updates/</link>
		<comments>http://dodonov.net/blog/2011/11/01/continuing-with-the-semi-periodic-updates/#comments</comments>
		<pubDate>Tue, 01 Nov 2011 20:41:30 +0000</pubDate>
		<dc:creator>eugeni</dc:creator>
				<category><![CDATA[devel]]></category>
		<category><![CDATA[english]]></category>
		<category><![CDATA[intel]]></category>
		<category><![CDATA[kernel]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[Linux-Planet]]></category>
		<category><![CDATA[mageia]]></category>
		<category><![CDATA[mandriva]]></category>
		<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[vaapi]]></category>
		<category><![CDATA[x.org]]></category>

		<guid isPermaLink="false">http://dodonov.net/blog/?p=1151</guid>
		<description><![CDATA[&#8230;lots of things happened in the past days, on all fronts. It took me longer than I originally expected to write this next post in the series due to some personal problems which kept me out of the virtual world for quite some time, but better late then never. So, starting with Kernel, as usual, <a href='http://dodonov.net/blog/2011/11/01/continuing-with-the-semi-periodic-updates/'>[...]</a>]]></description>
			<content:encoded><![CDATA[<p>&#8230;lots of things happened in the past days, on all fronts.</p>

<p>It took me longer than I originally expected to write this next post in the series due to some personal problems which kept me out of the virtual world for quite some time, but better late then never.</p>

<p>So, starting with Kernel, as usual, we had lots of updates.</p>

<ul>
<li><strong>Jesse Barnes</strong> sent out his patches for adding DRM <strong>planes</strong> and support for a new <strong>FB creation ioctl</strong>. Planes are similar to half-CRTCs, in the sense that they have a location and fb, but don&#8217;t drive outputs directly. His patchset provided two new interfaces: <strong>addfb2</strong>, a new FB creation ioctl that lets specify a surface format, as defined by a fourcc code from the video4linux headers; and ** <strong>planes</strong> &#8211; ioctls for fetching plane info and attaching an fb to a plane.</li>
<li>Jesse has also proposed some patches for enabling video sprites via overlays.</li>
<li><strong>Keith Packard</strong> has prepared some patches for flicker-free boot, which attempts to avoid the initial modesetting in drm.</li>
<li>A very interesting set of patches from Ben which attempt at adding <strong>fairness</strong> to <strong>GPU scheduling</strong>, preventing greedy apps from over-dominating the GPU and leaving nothing for other apps. This, of course, is still experimental, but think about this like on what <strong>CFS</strong> scheduler did to Linux Process Scheduling, and <strong>CFQ</strong> did to I/O scheduling. Of course, this also raises some concerns, like for example what should happen to benchmarks &#8211; which expect to grab all the possible power to get some measurable numbers, but nothing unsolvable here. It would be really interesting to see how it will go.</li>
<li>Ben has also sent out some patches which attempt to fix <strong>recursive unmapping</strong> of pages, a side effect of the Ironlake workaround which was done recently.</li>
</ul>

<p>For <strong>Mesa</strong>, lots of activities on all fronts too. I won&#8217;t be able to cover all of them, but the main highlights of the past days were:</p>

<ul>
<li>Work on <strong>EXT_transform_feedback</strong> by <strong>Dan McCabe</strong> and <strong>Paul Berry</strong> from Intel and Marek Olsak. The piglit tests are already in place for some months (I actually started to work on some of them, but then Marek has published his own set of tests, and I left mine in a half-finished state for now at my freedesktop.org personal repo. But I think I&#8217;ll finish them at some point). The mesa support for this GL 3.0 extension is approaching its completeness fairly quickly.</li>
<li>A 33-patch series from <strong>Eric Anholt</strong> with lots of fixes for batch buffer handling within mesa.</li>
<li>Lots of different fixes and consistency improvements for Gen6 and Gen7 generations of cards from <strong>Ken</strong> were also unleashed into the wild.</li>
<li>A <strong>HUGE</strong> cleanup of the remaining DRI1 pieces, such as the radeon drivers, dri1-specific extensions and core mesa bits, was carried out by <strong>Kristian  Høgsberg, Eric</strong> and many others who participated in the discussion.</li>
<li><strong>GLSL</strong> and extensions-related work continues, with clean-ups, fixes and improvements from Ian, Ken, Paul Berry and Chad.</li>
<li><strong>GL_ARB_texture_storage</strong> support was brought in by Brian Paul from VMware. It is supported by gallium drivers and swrast for now.</li>
<li>Chad Versace sent more patches for the <strong>Stencil buffer</strong> and <strong>HiZ</strong> support.</li>
<li>Ian sent out a 20-patch series which completely refactors the handling of <strong>uniforms</strong> within Mesa.</li>
<li>Eric has sent 24-patch series for improved renderbuffer mapping (<strong>MapRenderbuffer</strong>).</li>
<li>Paul Berry has added support for <strong>GLSL 1.30 interpolation qualifiers</strong> for Gen6+. This allows to keep track of which fragment shader inputs are overridden with the GLSL &#8220;flat&#8221;, &#8220;smooth&#8221;, &#8220;perspective&#8221; and &#8220;noperspective&#8221; interpolation qualifiers.</li>
<li>And Chia-I Wu has sent some new patches for an updated version of <strong>glext.h</strong> and for improved <strong>android-x86</strong> support within core Mesa.</li>
</ul>

<p>On <strong>Wayland</strong> land, we also had quite some interesting changes:</p>

<ul>
<li><strong>Tiago Vignatti</strong> sent several patches for improving input and evdev handling.</li>
<li>Juan Zhao has put out some <strong>documentation</strong> about Wayland building.</li>
<li>Ander, me, Benjamin Franzke, Casey Dahlin, Pekka Paalanen and Juan Zhao has also sent some build, correctness and GL-related patches. In overall, Wayland development is moving on nicely.</li>
</ul>

<p>Moving to <strong>VAAPI</strong>, as I already wrote here, Gwenole has released a new version of both <strong>libva</strong> and <strong>vaapi-driver-intel</strong>. Also, speaking on new releases, Eric Anholt has also released <strong>libdrm 2.4.27</strong>, we had the release of <strong>xorg-server 1.11.2 RC2</strong>, a new <strong>pixman 0.23.8</strong> release, which happens to be a release candidate for the stable <strong>0.24</strong> release, and Chris Wilson has put out <strong>xf86-video-intel 2.17 RC1</strong>, with several fixes and amazing list of <strong>200+</strong> SNA-related patches.</p>

<p>Also on <strong>SNA</strong>, I&#8217;ve put out two patches which would allow to activate <strong>SNA</strong> by means of a config file option, without recompiling. Those patches patches are floating around the <strong>intel-gfx</strong> mailing list, and make the task of <strong>SNA</strong> testing amazingly more easy (at least, for me <img src='http://dodonov.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> ).</p>

<p>So &#8211; I guess I&#8217;ll stop here for now.</p>

<p>See you in the next iteration of The Tales from the <strike>Crypt</strike> Intel Linux Graphics land <img src='http://dodonov.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> .</p>
]]></content:encoded>
			<wfw:commentRss>http://dodonov.net/blog/2011/11/01/continuing-with-the-semi-periodic-updates/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>VAAPI users around the world, rejoice!</title>
		<link>http://dodonov.net/blog/2011/10/28/vaapi-users-around-the-world-rejoice/</link>
		<comments>http://dodonov.net/blog/2011/10/28/vaapi-users-around-the-world-rejoice/#comments</comments>
		<pubDate>Fri, 28 Oct 2011 14:01:02 +0000</pubDate>
		<dc:creator>eugeni</dc:creator>
				<category><![CDATA[devel]]></category>
		<category><![CDATA[english]]></category>
		<category><![CDATA[intel]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[Linux-Planet]]></category>
		<category><![CDATA[mageia]]></category>
		<category><![CDATA[mandriva]]></category>
		<category><![CDATA[vaapi]]></category>

		<guid isPermaLink="false">http://dodonov.net/blog/?p=1149</guid>
		<description><![CDATA[Hello media users around the world with Intel cards aboard! I am glad to bring you the good news &#8211; Gwenole has just releases libva and vaapi-driver-intel version 1.0.15 into the wild! Go ahead and grab them here and here! And now for the nice details of what you should expect from those releases. Vaapi-driver-intel <a href='http://dodonov.net/blog/2011/10/28/vaapi-users-around-the-world-rejoice/'>[...]</a>]]></description>
			<content:encoded><![CDATA[<p>Hello media users around the world with Intel cards aboard!</p>

<p>I am glad to bring you the good news &#8211; Gwenole has just releases <strong>libva</strong> and <strong>vaapi-driver-intel</strong> version 1.0.15 into the wild! Go ahead and grab them <a href="http://cgit.freedesktop.org/vaapi/intel-driver/" onclick="urchinTracker('/outgoing/cgit.freedesktop.org/vaapi/intel-driver/?referer=');">here</a> and <a href="http://cgit.freedesktop.org/vaapi/libva/" onclick="urchinTracker('/outgoing/cgit.freedesktop.org/vaapi/libva/?referer=');">here</a>!</p>

<p>And now for the nice details of what you should expect from those releases.</p>

<p><strong>Vaapi-driver-intel</strong></p>

<p>This release improves the <strong>VC-1</strong> and <strong>MPEG-2</strong> decoding, and fixes some memory leaks:</p>

<ul>
<li>Fix VC-1 decoding (TTFRM packing)</li>
<li>Fix MPEG-2 decoding on Ivy Bridge</li>
<li>Fix MPEG-2 decoding with sparse QM matrices updates</li>
<li>Fix slice-param &amp; slice-data buffer memory leaks</li>
</ul>

<p><strong>Libva</strong></p>

<p>This release moves the <strong>i965</strong> driver into its own subdirectory, improves packaging support and build issues, and comes with some miscellaneous fixes.</p>

<ul>
<li>API: make {Top,Bottom}FieldOrderCnt signed (Yi Wang)</li>
<li>Add auto-generated Debian packaging</li>
<li>Refine VA trace &amp; VA fool utilities</li>
<li>Move i965 driver to a specific repository (vaapi/intel-driver)</li>
<li>Fix DSO link issue in tests</li>
<li>Fix fglrx driver name detection</li>
<li>Fix API vs. DSO vs. package versioning</li>
</ul>

<p>As you can see, this is a bugfix-mostly release. Next step is <strong>1.0.16</strong>, which will bring some nice features to you in nearby future.</p>

<p>As always, stay tuned <img src='http://dodonov.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> .</p>
]]></content:encoded>
			<wfw:commentRss>http://dodonov.net/blog/2011/10/28/vaapi-users-around-the-world-rejoice/feed/</wfw:commentRss>
		<slash:comments>14</slash:comments>
		</item>
		<item>
		<title>And now, time for some numbers</title>
		<link>http://dodonov.net/blog/2011/10/27/and-now-time-for-some-numbers/</link>
		<comments>http://dodonov.net/blog/2011/10/27/and-now-time-for-some-numbers/#comments</comments>
		<pubDate>Fri, 28 Oct 2011 00:51:56 +0000</pubDate>
		<dc:creator>eugeni</dc:creator>
				<category><![CDATA[devel]]></category>
		<category><![CDATA[english]]></category>
		<category><![CDATA[intel]]></category>
		<category><![CDATA[kernel]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[Linux-Planet]]></category>
		<category><![CDATA[mageia]]></category>
		<category><![CDATA[mandriva]]></category>

		<guid isPermaLink="false">http://dodonov.net/blog/?p=1139</guid>
		<description><![CDATA[Michael Larabel from Phoronix was kind enough to carry out two different testing for the recently released kernel 3.1 on top of our Intel Linux Graphics cards today (thanks again Michael!). He split his evaluations into two different articles &#8211; First one is focused on performance and power usage for stock 3.1 kernel; and Second <a href='http://dodonov.net/blog/2011/10/27/and-now-time-for-some-numbers/'>[...]</a>]]></description>
			<content:encoded><![CDATA[<p>Michael Larabel from Phoronix was kind enough to carry out two different testing for the recently released kernel 3.1 on top of our Intel Linux Graphics cards today (thanks again Michael!). He split his evaluations into two different articles &#8211; <a href="http://www.phoronix.com/scan.php?page=article&amp;item=intel_linux31_gen6&amp;num=1" onclick="urchinTracker('/outgoing/www.phoronix.com/scan.php?page=article_amp_item=intel_linux31_gen6_amp_num=1&amp;referer=');">First one</a> is focused on performance and power usage for stock 3.1 kernel; and <a href="http://www.phoronix.com/scan.php?page=news_item&amp;px=MTAwNjU" onclick="urchinTracker('/outgoing/www.phoronix.com/scan.php?page=news_item_amp_px=MTAwNjU&amp;referer=');">Second one</a> specifically enabled <strong>RC6</strong> on this kernel to see its effects in action.</p>

<p>His testing confirms what I was pointing out with my latest series of the post (however, it always feels great to have independent confirmation of the results). For performance numbers, <strong>kernel 3.1</strong> brings around <strong>+20%</strong> to <strong>+40%</strong> improvements on top of the previous release for Sandy Bridge architecture. Yeah, this <strong>is</strong> nice. So if you haven&#8217;t updated your kernel to the latest and greatest one (in other words, <strong>kernel 3.1</strong>), you should really consider doing this.</p>

<p>As for power numbers, we have some good news too. The default kernel power usage on <strong>3.1</strong> is mostly similar to <strong>3.0</strong>, with some small variations here and there. However, if one enables <strong>RC6</strong> support, the immediate results is that your power usage drops by up to <strong>40%</strong> on idle. It is really nice to see <strong>less than two-digit</strong> watts numbers on current generation of desktop hardware (while it is pretty common to see it on Atom CPUs for some time already, desktop and mobile versions of Intel cards were not that used to such numbers &#8211; <strong>yet</strong>).</p>

<p>One additional bonus Michael has found out is pretty much more interesting one. Apparently, by enabling <strong>RC6</strong>, the graphics-intensive applications get an additional performance boost of up to <strong>10%</strong>. This was a bit unexpected for me, but it is better to have good surprises than bad ones.</p>

<p>From what we have discussed with Jesse Barnes, such improvements could come from several different paths. The first explanation is that, with <strong>RC6</strong> enabled, the graphical card can actually consume much less power (down to <strong>0V</strong>), so it leaves more room for CPU to use the non-claimed power to do more processing of its own. And the second one is that, thanks to additional thermal bonus which we get from the <strong>RC6</strong>-provided power economy, the <strong>GPU</strong> frequency has more room for scaling. So effectively, in both of those case, <strong>RC6</strong> allows you to have a better performance, both CPU and GPU-wise &#8211; at a cost of somewhat higher power usage coming from such performance.</p>

<p>So, in few words, I would define this situation as <strong>battery when you want, performance when you need</strong>. When you are on battery, under mostly idle workload (for example, browsing or reading or writing some blog posts), your battery lasts much longer. And when you start some processing-intensive application (say, <strong>openarena</strong> or <strong>angry birds</strong>), it gets more horsepower to get the job done, and some extra FPS which could mean life or death &#8211; which is specially true in case of said workloads <img src='http://dodonov.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> . Of course, those additional horses are hungry, so this incurs in more power being used when such additional performance is there &#8211; but it is something to be expected in any case.</p>

<p>While writing this description, I actually came to realize that the feature known as <strong>GPU turbo</strong>, which is present on Intel graphics cards, could be used to define and control such behavior on a much finer granularity. From what I&#8217;ve searched all around, surprisingly, nobody seems to have covered its functionality yet. I guess I&#8217;ll try to cover how it works, and how one could use and control it from userspace in one of the next posts, so stay tuned! And meanwhile, enjoy all those nice power and performance-related bonuses which the Intel Linux Graphics team brought to you just in time for Halloween <img src='http://dodonov.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> .</p>
]]></content:encoded>
			<wfw:commentRss>http://dodonov.net/blog/2011/10/27/and-now-time-for-some-numbers/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Kernel 3.1 is out..</title>
		<link>http://dodonov.net/blog/2011/10/25/kernel-3-1-is-out/</link>
		<comments>http://dodonov.net/blog/2011/10/25/kernel-3-1-is-out/#comments</comments>
		<pubDate>Tue, 25 Oct 2011 14:42:23 +0000</pubDate>
		<dc:creator>eugeni</dc:creator>
				<category><![CDATA[devel]]></category>
		<category><![CDATA[english]]></category>
		<category><![CDATA[intel]]></category>
		<category><![CDATA[kernel]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[Linux-Planet]]></category>
		<category><![CDATA[mageia]]></category>
		<category><![CDATA[mandriva]]></category>
		<category><![CDATA[writing]]></category>

		<guid isPermaLink="false">http://dodonov.net/blog/?p=1132</guid>
		<description><![CDATA[&#8230;but what does it means for Intel Linux Graphics? I tried to summarize all the patches and changes which went to this kernel release which somehow affected the drivers/gpu/drm/i915 directory (and, therefore, the kernel part of our driver). To give proper credit to all the authors whose code was accepted into the official kernel between <a href='http://dodonov.net/blog/2011/10/25/kernel-3-1-is-out/'>[...]</a>]]></description>
			<content:encoded><![CDATA[<p>&#8230;but what does it means for Intel Linux Graphics?</p>

<p>I tried to summarize all the patches and changes which went to this kernel release which somehow affected the <strong>drivers/gpu/drm/i915</strong> directory (and, therefore, the kernel part of our driver).</p>

<p>To give proper credit to all the authors whose code was accepted into the official kernel between the <strong>3.0.0</strong> and <strong>3.1</strong> release, here is the full list:</p>

<ul>
<li><strong>Adam Jackson</strong>: <em>drm/i915/dp: Better hexdump of DPCD</em></li>
<li><strong>Adam Jackson</strong>: <em>drm/i915/dp: Don&#8217;t turn CPT DP ports on too early</em></li>
<li><strong>Adam Jackson</strong>: <em>drm/i915/dp: Explicitly disable symbol scrambling while training</em></li>
<li><strong>Adam Jackson</strong>: <em>drm/i915/dp: Explicitly request 8/10 channel coding</em></li>
<li><strong>Adam Jackson</strong>: <em>drm/i915/dp: Move DPCD dump to common code instead of PCH-only</em></li>
<li><strong>Adam Jackson</strong>: <em>drm/i915/dp: Read more DPCD registers on connection probe</em></li>
<li><strong>Adam Jackson</strong>: <em>drm/i915/dp: Retry DPCD fetch on G4X too</em></li>
<li><strong>Adam Jackson</strong>: <em>drm/i915/dp: Zero the DPCD data before connection probe</em></li>
<li><strong>Adam Jackson</strong>: <em>drm/i915/pch: Fix integer math bugs in panel fitting</em></li>
<li><strong>Adam Jackson</strong>: <em>drm/i915/pch: Save/restore PCH_PORT_HOTPLUG across suspend</em></li>
<li><strong>Ben Widawsky</strong>: <em>drm/i915: add module parameter compiler hints</em></li>
<li><strong>Ben Widawsky</strong>: <em>drm/i915: hangcheck disable parameter</em></li>
<li><strong>Ben Widawsky</strong>: <em>drm/i915: provide module parameter description</em></li>
<li><strong>Chris Wilson</strong>: <em>drm/i915: Add an interface to dynamically change the cache level</em></li>
<li><strong>Chris Wilson</strong>: <em>drm/i915/bios: Avoid temporary allocation whilst searching for downclock</em></li>
<li><strong>Chris Wilson</strong>: <em>drm/i915: Cache GT fifo count for SandyBridge</em></li>
<li><strong>Chris Wilson</strong>: <em>drm/i915: Combine pinning with setting to the display plane</em></li>
<li><strong>Chris Wilson</strong>: <em>drm/i915: Disable FBC across page-flipping</em></li>
<li><strong>Chris Wilson</strong>: <em>drm/i915/gtt: Split out i915_gem_gtt_rebind_object()</em></li>
<li><strong>Chris Wilson</strong>: <em>drm/i915: Introduce i915_gem_object_finish_gpu()</em></li>
<li><strong>Chris Wilson</strong>: <em>drm/i915: Introduce i915_gem_object_finish_gtt()</em></li>
<li><strong>Chris Wilson</strong>: <em>drm/i915: Mark the cursor and the overlay as being part of the display planes</em></li>
<li><strong>Chris Wilson</strong>: <em>drm/i915: Only export the generic intel_disable_fbc() interface</em></li>
<li><strong>Chris Wilson</strong>: <em>drm/i915: Perform intel_enable_fbc() from a delayed task</em></li>
<li><strong>Chris Wilson</strong>: <em>drm/i915: Remove vestigial pitch from post-gen2 FBC control routines</em></li>
<li><strong>Chris Wilson</strong>: <em>drm/i915: Replace direct calls to vfunc.disable_fbc with intel_disable_fbc()</em></li>
<li><strong>Chris Wilson</strong>: <em>drm/i915: Set persistent-mode for ILK/SNB framebuffer compression</em></li>
<li><strong>Chris Wilson</strong>: <em>drm/i915: Share the common work of disabling active FBC before updating</em></li>
<li><strong>Chris Wilson</strong>: <em>drm/i915: Use of a CPU fence is mandatory to update FBC regions upon CPU writes</em></li>
<li><strong>Dave Airlie</strong>: <em>Revert &#8220;drm/i915: Try enabling RC6 by default (again)&#8221;</em></li>
<li><strong>Eric Anholt</strong>: <em>drm/i915: Use the LLC mode on gen6 for everything but display.</em></li>
<li><strong>Eric Anholt</strong>: <em>drm/i915: Use the uncached domain for the display planes</em></li>
<li><strong>Hugh Dickins</strong>: <em>drm/i915: more struct_mutex locking</em></li>
<li><strong>Jesse Barnes</strong>: <em>drm/i915: add GPU max frequency control file</em></li>
<li><strong>Jesse Barnes</strong>: <em>drm/i915: allow cache sharing policy control</em></li>
<li><strong>Jesse Barnes</strong>: <em>drm/i915: apply phase pointer override on SNB+ too</em></li>
<li><strong>Jesse Barnes</strong>: <em>drm/i915: apply timing generator bug workaround on CPT and PPT</em></li>
<li><strong>Jesse Barnes</strong>: <em>drm/i915: check for supported depth at fb init time</em></li>
<li><strong>Jesse Barnes</strong>: <em>drm/i915: don&#8217;t set SDVO color range on ILK+</em></li>
<li><strong>Jesse Barnes</strong>: <em>drm/i915: don&#8217;t set transcoder bpc on CougarPoint</em></li>
<li><strong>Jesse Barnes</strong>: <em>drm/i915: don&#8217;t use uninitialized EDID bpc values when picking pipe bpp</em></li>
<li><strong>Jesse Barnes</strong>: <em>drm/i915/dp: wait for previous AUX channel activity to clear</em></li>
<li><strong>Jesse Barnes</strong>: <em>drm/i915: enable ring freq scaling, RC6 and graphics turbo on Ivy Bridge v3</em></li>
<li><strong>Jesse Barnes</strong>: <em>drm/i915: fix CB tuning check for ILK+</em></li>
<li><strong>Jesse Barnes</strong>: <em>drm/i915: flush plane control changes on ILK+ as well</em></li>
<li><strong>Jesse Barnes</strong>: <em>drm/i915/hdmi: HDMI source product description infoframe support</em></li>
<li><strong>Jesse Barnes</strong>: <em>drm/i915/hdmi: send AVI info frames on ILK+ as well</em></li>
<li><strong>Jesse Barnes</strong>: <em>drm/i915/hdmi: split infoframe setting from infoframe type code</em></li>
<li><strong>Jesse Barnes</strong>: <em>drm/i915: load a ring frequency scaling table v3</em></li>
<li><strong>Jesse Barnes</strong>: <em>drm/i915: load the LUT before pipe enable on ILK+</em></li>
<li><strong>Jesse Barnes</strong>: <em>drm/i915: provide more error output when mode sets fail</em></li>
<li><strong>Jesse Barnes</strong>: <em>drm/i915: provide more error output when mode sets fail</em></li>
<li><strong>Jesse Barnes</strong>: <em>drm/i915: set bpc for DP transcoder</em></li>
<li><strong>Jesse Barnes</strong>: <em>drm/i915: set GFX_MODE to pre-Ivybridge default value even on Ivybridge</em></li>
<li><strong>Jesse Barnes</strong>: <em>drm/i915: show interrupt info on IVB</em></li>
<li><strong>Jesse Barnes</strong>: <em>drm/i915: split out Ironlake pipe bpp picking code</em></li>
<li><strong>Jesse Barnes</strong>: <em>drm/i915: split out PCH refclk update code</em></li>
<li><strong>Jesse Barnes</strong>: <em>drm/i915: split out plane update code</em></li>
<li><strong>Jesse Barnes</strong>: <em>drm/i915: use pipe bpp in DP link bandwidth calculation</em></li>
<li><strong>Jesse Barnes</strong>: <em>drm/i915: use pipe bpp in DP link bandwidth calculations</em></li>
<li><strong>Jesse Barnes</strong>: <em>drm/i915: use pipe bpp when setting HDMI bpc</em></li>
<li><strong>Kamal Mostafa</strong>: <em>i915: do not setup intel_backlight twice</em></li>
<li><strong>Keith Packard</strong>: <em>drm/i915: Call intel_enable_plane from i9xx_crtc_mode_set (again)</em></li>
<li><strong>Keith Packard</strong>: <em>drm/i915: Cannot set clock gating under UMS</em></li>
<li><strong>Keith Packard</strong>: <em>drm/i915: Can&#8217;t do accurate vblank timestamps with UMS</em></li>
<li><strong>Keith Packard</strong>: <em>drm/i915: DP_PIPE_ENABLED must check transcoder on CPT</em></li>
<li><strong>Keith Packard</strong>: <em>drm/i915: Enable dither whenever display bpc &lt; frame buffer bpc</em></li>
<li><strong>Keith Packard</strong>: <em>drm/i915: Enable i915 frame buffer compression by default</em></li>
<li><strong>Keith Packard</strong>: <em>drm/i915: FBC off for ironlake and older, otherwise on by default</em></li>
<li><strong>Keith Packard</strong>: <em>drm/i915: Fix PCH port pipe select in CPT disable paths</em></li>
<li><strong>Keith Packard</strong>: <em>drm/i915: Fixup for &#8216;Hold mode_config->mutex during hotplug&#8217;</em></li>
<li><strong>Keith Packard</strong>: <em>drm/i915: Flush other plane register writes</em></li>
<li><strong>Keith Packard</strong>: <em>drm/i915: Hold mode_config->mutex during hotplug processing</em></li>
<li><strong>Keith Packard</strong>: <em>drm/i915: i915_gem_object_finish_gtt must always release gtt mmap</em></li>
<li><strong>Keith Packard</strong>: <em>drm/i915: Ignore GPU wedged errors while pinning scanout buffers</em></li>
<li><strong>Keith Packard</strong>: <em>drm/i915: In intel_dp_init, replace read of DPCD with intel_dp_get_dpcd</em></li>
<li><strong>Keith Packard</strong>: <em>drm/i915: Initialize RCS ring status page address in intel_render_ring_init_dri</em></li>
<li><strong>Keith Packard</strong>: <em>drm/i915: Leave LVDS registers unlocked</em></li>
<li><strong>Keith Packard</strong>: <em>drm/i915: Remove unused &#8216;reg&#8217; argument to dp_pipe_enabled</em></li>
<li><strong>Keith Packard</strong>: <em>drm/i915: Rename i915_dp_detect_common to intel_dp_get_dpcd</em></li>
<li><strong>Keith Packard</strong>: <em>drm/i915: Select correct pipe during TV detect</em></li>
<li><strong>Keith Packard</strong>: <em>drm/i915: Set crtc DPMS mode to ON in intel_crtc_mode_set</em></li>
<li><strong>Keith Packard</strong>: <em>drm/i915: Skip GPU wait for scanout pin while wedged</em></li>
<li><strong>Keith Packard</strong>: <em>drm/i915: Try enabling RC6 by default (again)</em></li>
<li><strong>Keith Packard</strong>: <em>drm/i915: TVDAC_STATE_CHG does not indicate successful load-detect</em></li>
<li><strong>Keith Packard</strong>: <em>drm/i915: Use dp_detect_common in hotplug helper function</em></li>
<li><strong>Keith Packard</strong>: <em>drm/i915: Wait for LVDS panel power sequence</em></li>
<li><strong>Keith Packard</strong>: <em>Revert and fix &#8220;drm/i915/dp: remove DPMS mode tracking from DP&#8221;</em></li>
<li><strong>Keith Packard</strong>: <em>Revert &#8220;drm/i915/dp: Zero the DPCD data before connection probe&#8221;</em></li>
<li><strong>Matthew Garrett</strong>: <em>i915: Fix opregion notifications</em></li>
<li><strong>Matthew Garrett</strong>: <em>Not all systems expose a firmware or platform mechanism for changing the backlight intensity on i915, so add native driver support.</em></li>
<li><strong>Michel Alexandre Salim</strong>: <em>drm/i915: Add quirk to disable SSC on Sony Vaio Y2</em></li>
<li><strong>Pieterjan Camerlynck</strong>: <em>i915: add Dell OptiPlex FX170 to intel_no_lvds</em></li>
<li><strong>Simon Farnsworth</strong>: <em>drm/i915: Enable SDVO hotplug interrupts for HDMI and DVI</em></li>
<li><strong>Thomas Jarosch</strong>: <em>drm/i915: Fix wrong initializer for &#8220;locked&#8221; variable in assert_panel_unlocked</em></li>
</ul>

<p>If we count the final number of changes between the <strong>3.0</strong> and <strong>3.1</strong> versions, we come to the following results:</p>

<pre><code>drivers/gpu/drm/i915/i915_debugfs.c     |  232 +++++++-
drivers/gpu/drm/i915/i915_dma.c         |   10 +-
drivers/gpu/drm/i915/i915_drv.c         |   69 ++-
drivers/gpu/drm/i915/i915_drv.h         |   51 +-
drivers/gpu/drm/i915/i915_gem.c         |  193 +++++-
drivers/gpu/drm/i915/i915_gem_gtt.c     |   39 +-
drivers/gpu/drm/i915/i915_irq.c         |   22 +-
drivers/gpu/drm/i915/i915_reg.h         |   59 ++-
drivers/gpu/drm/i915/i915_suspend.c     |   13 +-
drivers/gpu/drm/i915/intel_bios.c       |  140 +++--
drivers/gpu/drm/i915/intel_display.c    | 1028 +++++++++++++++++++++++--------
drivers/gpu/drm/i915/intel_dp.c         |  135 +++--
drivers/gpu/drm/i915/intel_drv.h        |   38 +-
drivers/gpu/drm/i915/intel_hdmi.c       |  166 +++++-
drivers/gpu/drm/i915/intel_lvds.c       |   90 ++--
drivers/gpu/drm/i915/intel_opregion.c   |   16 +-
drivers/gpu/drm/i915/intel_overlay.c    |    6 +-
drivers/gpu/drm/i915/intel_panel.c      |   76 +++-
drivers/gpu/drm/i915/intel_ringbuffer.c |   13 +-
drivers/gpu/drm/i915/intel_sdvo.c       |   88 +--
drivers/gpu/drm/i915/intel_tv.c         |   46 +-
21 files changed, 1879 insertions(+), 651 deletions(-)
</code></pre>

<p>So, in sum, there are changes all around the driver. Among the most interesting ones (in my humble opinion), are:</p>

<ul>
<li><strong>Frame Buffer Compression</strong> is now enabled for <strong>Gen6</strong> onwards (in other words, starting with Sandy Bridge). Of course, you can always enable it manually on your machine as well by using the <strong>i915.i915_enable_fbc=1</strong> kernel parameter.</li>
<li><strong>FBC</strong> should work better in general, thanks to patches from Chris Wilson which disable it across <strong>page-flipping</strong> and before updating, <strong>persist framebuffer compression</strong> mode for Ironlake and Sandy Bridge, and also making a proper use of <strong>fences</strong> after CPU writes.</li>
<li><strong>RC6</strong> was attempted to be enabled, but it was reverted early in the development cycle. As we had unusual time frame for this kernel release, by the time we have hit <strong>RC8</strong>, all the remaining <strong>RC6</strong>-related issues were tracked down. But as it was already too late for kernel 3.1, its enablement by default should happen in kernel <strong>3.2</strong>. The usage of <strong>RC6</strong> brings amazing power usage benefits, so you can enable it by yourself via the <strong>i915.i915_enable_rc6=1</strong> kernel parameter &#8211; and letting us know about any non-covered issues it may bring.</li>
<li><strong>DCPD</strong>, or Display Port Configuration Data handling has received lots of attention, and in general one should have a much better support for <strong>Display Port</strong> outputs.</li>
<li>configuration parameters for changing the <strong>cache level</strong>, <strong>maximum GPU frequency</strong>, <strong>cache sharing policy</strong> and GPU ring <strong>frequency scaling</strong>.</li>
<li>additional debugging output when <strong>mode setting fails</strong>, information about <strong>interrupts</strong> on Ivy bridge, <strong>hangcheck disabling</strong> support and better DPCD <strong>hexdump</strong>.</li>
<li>improvements for <strong>HDMI</strong> support, <strong>SDVO</strong> and <strong>LVDS</strong> handling, better pipe handling of <strong>EDID</strong> bpc values and proper panel fitting calculationsl</li>
<li>usage of <strong>LLC</strong> mode (usage of CPU cache for GPU instructions) for Gen6. This one-lined (excluding comments <img src='http://dodonov.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> ) change alone was responsible for about <strong>20%</strong> performance improvements for openarena in full-screen mode, and about <strong>12%</strong> improvements in nexuiz.</li>
</ul>

<p>The <strong>i915</strong> driver in kernel 3.1 received a total of <strong>95</strong> new patches when compared to <strong>3.0</strong> (excluding merges), coming from <strong>14</strong> different authors &#8211; both working at Intel and not. Now the road is open for <strong>3.2</strong>. So fasten your seat belts and prepare for the next ride <img src='http://dodonov.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> .</p>
]]></content:encoded>
			<wfw:commentRss>http://dodonov.net/blog/2011/10/25/kernel-3-1-is-out/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
		<item>
		<title>Graphics News Monday</title>
		<link>http://dodonov.net/blog/2011/10/24/graphics-news-monday/</link>
		<comments>http://dodonov.net/blog/2011/10/24/graphics-news-monday/#comments</comments>
		<pubDate>Mon, 24 Oct 2011 14:46:22 +0000</pubDate>
		<dc:creator>eugeni</dc:creator>
				<category><![CDATA[devel]]></category>
		<category><![CDATA[english]]></category>
		<category><![CDATA[intel]]></category>
		<category><![CDATA[kernel]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[Linux-Planet]]></category>
		<category><![CDATA[mageia]]></category>
		<category><![CDATA[mandriva]]></category>
		<category><![CDATA[mesa]]></category>
		<category><![CDATA[x.org]]></category>

		<guid isPermaLink="false">http://dodonov.net/blog/?p=1128</guid>
		<description><![CDATA[Another week, another round of updates . As a shameless self-promoting plug, let me start by sharing the presentation about Linux and Open-Source which I did last week. As with all my other presentation, I put it on scribd: Linux e Open-Source: o que são e como podem me ajudar durante a faculdade? I hope <a href='http://dodonov.net/blog/2011/10/24/graphics-news-monday/'>[...]</a>]]></description>
			<content:encoded><![CDATA[<p>Another week, another round of updates <img src='http://dodonov.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> .</p>

<p>As a shameless self-promoting plug, let me start by sharing the presentation about Linux and Open-Source which I did last week. As with all my other presentation, I put it on scribd:</p>

<p><a title="View Linux e Open-Source: o que são e como podem me ajudar durante a faculdade? on Scribd" href="http://www.scribd.com/doc/69815875/Linux-e-Open-Source-o-que-sao-e-como-podem-me-ajudar-durante-a-faculdade" style="margin: 12px auto 6px auto; font-family: Helvetica,Arial,Sans-serif; font-style: normal; font-variant: normal; font-weight: normal; font-size: 14px; line-height: normal; font-size-adjust: none; font-stretch: normal; -x-system-font: none; display: block; text-decoration: underline;" onclick="urchinTracker('/outgoing/www.scribd.com/doc/69815875/Linux-e-Open-Source-o-que-sao-e-como-podem-me-ajudar-durante-a-faculdade?referer=');">Linux e Open-Source: o que são e como podem me ajudar durante a faculdade?</a></p>

<iframe class="scribd_iframe_embed" src="http://www.scribd.com/embeds/69815875/content?start_page=1&#038;view_mode=slideshow&#038;access_key=key-bcg8h58qfz8cbd24skp" data-auto-height="true" data-aspect-ratio="1.33115468409586" scrolling="no" id="doc_75082" width="100%" height="600" frameborder="0"></iframe>

<script type="text/javascript">(function() { var scribd = document.createElement("script"); scribd.type = "text/javascript"; scribd.async = true; scribd.src = "http://www.scribd.com/javascripts/embed_code/inject.js"; var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(scribd, s); })();</script>

<p>I hope it would be as much interesting for you to access it, as it was for me to have the opportunity to write and present it. Thanks to all who attended the event, it was <strong>great</strong>!</p>

<p>But going back to the technical items in the agenda, let me start with the Kernel progress over the past week:</p>

<ul>
<li>As you all know, <strong>Kernel 3.1</strong> was just released. It comes with a nice set of patches for Intel Graphics, so we hope you&#8217;ll enjoy it. Expect all range of improvements &#8211; from performance boosts to lots of stability and feature-wise fixes.</li>
<li>As a major news, we had a pull request for the <strong>drm-intel-next</strong> branch from Keith Packard, for inclusion into the 3.2 version of Linux kernel. It comes with lots of interesting patches, among which I&#8217;d like to highlight the Ivybridge <strong>3-display</strong> pipe support, lots of fixes for <strong>Embedded Display Port (eDP)</strong> handling on Sandy Bridge architecture, workarounds for the <strong>VT-d-related issues</strong> on Ironlake family of GPU, fixes for <strong>interrupt</strong> race conditions, among many others.</li>
<li>Still on kernel, there was a number of conversations &#8211; all over the IRC channel, bugzilla and mailing lists &#8211; about <strong>GPU hangs</strong> and <strong>backlight</strong>-related issues. Some of those investigations resulted in new patches which could possibly solve &#8211; or, at least, help identifying the issues.</li>
<li>On the <strong>FBC</strong> front, I&#8217;ve sent an initial patch for enabling Frame Buffer Compression on Ivybridge. It still needs testing and verification though, and lots of changes in code style and content, many of which were pointed out by Chris Wilson. So I&#8217;ll work on it this week.</li>
<li>And as a bonus news, it looks like all the critical <strong>RC6-related</strong> issues (e.g., crashes or hangs) are now gone. There are still rendering-related problems though, some of which I came to figure out through this blog of mine (thank to you all for reporting!!). This is still not the ideal solution, but heck &#8211; it is a large step forward. Based on latest performance and power-related investigations which both we carried out internally, and the ones reported by community &#8211; by activating <strong>RC6</strong> one could expect up to <strong>50%</strong> improvements in power consumption. Definitely a nice thing to have.</li>
</ul>

<p>On <strong>mesa</strong> front, we had a number of news as well:</p>

<ul>
<li>A discussion about moving the <strong>DRI1</strong> radeon drivers into the land where the old drivers live happy forever-after was started by <strong>Eric</strong> and picked up by a number of Mesa developers. Those are possibly the last remaining drivers using DRI1 code path out there, and I guess we won&#8217;t have them around for much longer. Specially now that gallium backend is among us.</li>
<li>Some optimizations about dead and non-reachable code cleanups were proposed by <strong>Ian</strong>.</li>
<li>And we had several fixes for <strong>Gen6</strong> and <strong>Gen7</strong> architectures from <strong>Kenneth</strong> and <strong>Yuanhan</strong>.</li>
</ul>

<p>An interesting collection of news came from the <strong>X.org</strong> development land:</p>

<ul>
<li>The discussion about <strong>Glamor</strong> server project was carried on, with a number of interesting opinions and talks. Glamor project, which was initially sent to the X developers mailing list some weeks ago, is aiming at introducing a new hardware-independent DDX which can use the GPU acceleration via OpenGL interface. One of the concerns expressed by the X development community about it is that, well, there are already too many different acceleration projects for X out there. So, after a number of very insightful discussions about Glamor, it was agreed that its development will be split into two different branches &#8211; one device-independent library, which could be reused by all the other DDX drivers; and intel-specific bits will be developed and integrated on their own incremental pace.</li>
<li>Besides Glamor, lots of activity came from the <strong>Xinput</strong> developers and documentation updates.</li>
<li>A number of coverity-discovered patches was sent by Dave Airle.</li>
<li>And as a major news, we had a new security update for the <strong>Xserver</strong> project, fixing two security vulnerabilities: <strong>CVE-2011-4028</strong> and <strong>CVE-2011-4029</strong>. One of the vulnerabilities allows to disclose the existence of a privileged file, and another allows to reset permissions of a restricted file to 444 via a symlink attack. So it would be a good idea to update your Xserver installation with those fixes included.</li>
</ul>

<p>On <strong>Cairo</strong> side, there was an interesting discussion about slow HTML5 rendering in Firefox, coming from the non-optimal usage of X shared memory. The root of the problem is that code path used in this case does not uses BigReq extension, so it is limited to allocating a fixed 16Kb buffer &#8211; which is obviously not enough for the data it needs to process. So it results in lots and lots of small transmissions, and incurring in around 25k context switches per second.</p>

<p>Those are the major highlights of what I&#8217;ve seen over the past few days. See you on the next post <img src='http://dodonov.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> .</p>
]]></content:encoded>
			<wfw:commentRss>http://dodonov.net/blog/2011/10/24/graphics-news-monday/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>If you ever wondered who Eugeni is&#8230;</title>
		<link>http://dodonov.net/blog/2011/10/19/if-you-ever-wondered-who-eugeni-is/</link>
		<comments>http://dodonov.net/blog/2011/10/19/if-you-ever-wondered-who-eugeni-is/#comments</comments>
		<pubDate>Wed, 19 Oct 2011 17:46:13 +0000</pubDate>
		<dc:creator>eugeni</dc:creator>
				<category><![CDATA[devel]]></category>
		<category><![CDATA[english]]></category>
		<category><![CDATA[intel]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[Linux-Planet]]></category>
		<category><![CDATA[mageia]]></category>
		<category><![CDATA[mandriva]]></category>

		<guid isPermaLink="false">http://dodonov.net/blog/?p=1121</guid>
		<description><![CDATA[&#8230;and never had a chance to meet me, now you have . I&#8217;ll do two Linux and open-source-related presentations in the coming weeks. The first one would occur at the IV Semana Nacional de Ciência e Tecnologia, promoted by the Instituto Federal de Educação, Ciência e Tecnologia de São Paulo &#8211; campus São Carlos, this <a href='http://dodonov.net/blog/2011/10/19/if-you-ever-wondered-who-eugeni-is/'>[...]</a>]]></description>
			<content:encoded><![CDATA[<p>&#8230;and never had a chance to meet me, now you have <img src='http://dodonov.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> .</p>

<p>I&#8217;ll do two Linux and open-source-related presentations in the coming weeks.</p>

<p>The first one would occur at the <a href="http://www.ifspsaocarlos.edu.br/snct2011/" onclick="urchinTracker('/outgoing/www.ifspsaocarlos.edu.br/snct2011/?referer=');">IV Semana Nacional de Ciência e Tecnologia</a>, promoted by the <strong>Instituto Federal de Educação, Ciência e Tecnologia de São Paulo &#8211; campus São Carlos</strong>, this Friday as 20:30 at UFSCar. I&#8217;ll give a presentation about Linux, Open-Source, and why it is a good idea to work and contribute to it during the (under)graduation. The title of the presentation is <strong>Linux e Open-Source: o que são e como podem me ajudar durante a faculdade?</strong>, and it will be in portuguese. The link to the event and additional details about it are listed <a href="http://www.ifspsaocarlos.edu.br/snct2011/programacao.php" onclick="urchinTracker('/outgoing/www.ifspsaocarlos.edu.br/snct2011/programacao.php?referer=');">here</a>.</p>

<p>The second will be at the <a href="https://events.linuxfoundation.org/events/linuxcon-brazil/" onclick="urchinTracker('/outgoing/events.linuxfoundation.org/events/linuxcon-brazil/?referer=');">LinuxCon Brazil</a> conference, where I&#8217;ll have a presentation with self-explained title <a href="https://events.linuxfoundation.org/events/linuxcon-brazil/dodonov" onclick="urchinTracker('/outgoing/events.linuxfoundation.org/events/linuxcon-brazil/dodonov?referer=');">Intel Linux Graphics – Following the Open Source Road from Kernel to UI Toolkits</a>. The LinuxCon conference needs no introduction, and it will have lots of amazing <a href="https://events.linuxfoundation.org/events/linuxcon-brazil/schedule" onclick="urchinTracker('/outgoing/events.linuxfoundation.org/events/linuxcon-brazil/schedule?referer=');">presentations</a>, so be sure to check it out!</p>

<p>Also on LinuxCon, we&#8217;ll have a presentation by <strong>Guilherme Moro</strong>, who replaced my at Mandriva when I left. He&#8217;ll talk about <a href="https://events.linuxfoundation.org/events/linuxcon-brazil/moro" onclick="urchinTracker('/outgoing/events.linuxfoundation.org/events/linuxcon-brazil/moro?referer=');">Managing IT infrastructure with Open Source Multiplatform Tool Pulse 2</a>. He is a great developer and a good friend of mine &#8211; I actually was responsible for bringing him to mstech, and later to Mandriva, to work in my teams. So it would be a great presentation to watch as well.</p>

<p>But in general &#8211; if you happen to come to any of the aforementioned presentation, I&#8217;ll be happy to talk about linux, intel, open-source, mandriva, mageia, football, programming and all other nice and endless issues <img src='http://dodonov.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> .</p>
]]></content:encoded>
			<wfw:commentRss>http://dodonov.net/blog/2011/10/19/if-you-ever-wondered-who-eugeni-is/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>So, what&#8217;ve been up to at linux graphics lately?</title>
		<link>http://dodonov.net/blog/2011/10/18/so-whatve-been-up-to-at-linux-graphics-lately/</link>
		<comments>http://dodonov.net/blog/2011/10/18/so-whatve-been-up-to-at-linux-graphics-lately/#comments</comments>
		<pubDate>Tue, 18 Oct 2011 20:12:05 +0000</pubDate>
		<dc:creator>eugeni</dc:creator>
				<category><![CDATA[devel]]></category>
		<category><![CDATA[english]]></category>
		<category><![CDATA[intel]]></category>
		<category><![CDATA[kernel]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[Linux-Planet]]></category>
		<category><![CDATA[mageia]]></category>
		<category><![CDATA[mandriva]]></category>
		<category><![CDATA[mesa]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[x.org]]></category>

		<guid isPermaLink="false">http://dodonov.net/blog/?p=1115</guid>
		<description><![CDATA[So far, it turned out that the semi-periodic write-ups turned up to be much more frequent that I originally thought. Let&#8217;s see if I&#8217;ll be able to keep this pace &#8211; lots of interesting things are happening all around, so I think that it is not worth waiting weeks just to write a summary of <a href='http://dodonov.net/blog/2011/10/18/so-whatve-been-up-to-at-linux-graphics-lately/'>[...]</a>]]></description>
			<content:encoded><![CDATA[<p>So far, it turned out that the semi-periodic write-ups turned up to be much more frequent that I originally thought. Let&#8217;s see if I&#8217;ll be able to keep this pace &#8211; lots of interesting things are happening all around, so I think that it is not worth waiting weeks just to write a summary of most important points.</p>

<p>Since last update, we had a very productive weekend <img src='http://dodonov.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> , and 2 days of work on all the projects. In this time span, on <a href="http://cgit.freedesktop.org/xorg/app/intel-gpu-tools/" onclick="urchinTracker('/outgoing/cgit.freedesktop.org/xorg/app/intel-gpu-tools/?referer=');">intel-gpu-tools</a> front, we had some interesting commits:</p>

<ul>
<li>One from myself, to add <strong>non-interactive logging</strong> of GPU activity, parseable by other scripts and applications</li>
<li>Several from Daniel, improving the <strong>debugging</strong> facilities of the tools</li>
<li>A new <strong>intel_reg_checker</strong> application from Eric Anholt, which attempts to discover possibly incorrect settings which could lead to the crash/hang/issue.</li>
<li>And I&#8217;ve sent some <strong>heuristics</strong> patches for intel_error_decode and intel_decode which attempt to identify the root cause of the problem (e.g., if it came through mesa codepath, or 2D driver, or VA). After discussion on both mail and IRC with Chris and Daniel, we came to the conclusion that this approach should be better approaches from a separate script or app, which would do the analysis of the trace.</li>
</ul>

<p>On <strong>Kernel</strong>, we had some nice news too:</p>

<ul>
<li>QA has carried out the performance and functionality testing for my <strong>edid</strong> patch, and it gave a really nice performance boost in all cases. After sending the final version of the patch, we had some comments from Jean Delvare and Alex Deucher about possible issues this could bring to radeon-based cards, if the fix would be implemented inside DRM. So I am still not sure about what to do here &#8211; I have two versions of the same fix, both are working, but I don&#8217;t know which one will be the final one.</li>
<li>Lots of activity and discussion on <strong>SNA, VA and RC6</strong>-related issues took place from Daniel, Ben, Chris and myself. Some of the reported issues have been isolated (well.. mostly <img src='http://dodonov.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> ), and some have some patching attempts. The root cause of the problems is not clear yet. But on the bright side, apparently, we don&#8217;t have any crash or hang-related issues coming via RC6, only some rendering corruptions. So hopefully RC6-by-default will see the light of day again in some point in the future <img src='http://dodonov.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> .</li>
<li>Some (possibly) final patches from Ben Widawsky and David Woodhouse arrived, attempting to fix the <strong>VTd-related</strong> problem on Ironlake chipsets.</li>
</ul>

<p>Meanwhile, Mesa has had lots of activity too:</p>

<ul>
<li>Chad Versace sent out some dozens of patches which added support for <strong>HiZ</strong> infrastructure in core mesa, adding new driver hooks and small changes all around. Note that HiZ is supposed to be supported by i965 family of the chips (e.g., 5th (Ironlake) generation onward).</li>
<li>Lots of <strong>piglit</strong> and conformance patches arrived from Eric, Yuanhan and Chad.</li>
<li><strong>Stencil buffer</strong> support has received some updates from Chad as well.</li>
<li>And an improved <strong>math performance</strong> patch was sent by Ken. It should improve math-related operations by a nice margin on <strong>Ivybridge</strong>, and also allows it to work in a workaround-free way <img src='http://dodonov.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> .</li>
</ul>

<p>On DDX front, as usually, we had an impressive number of patches from Chris for <strong>SNA</strong>. On a related note, past weeks had given us lots and lots of feedback about SNA and how people are using it. This is great &#8211; it means that it works (despite some issues, many of which are already filed as bugs, or being investigated right now)! I&#8217;ve been using SNA by default on all my machines for a couple of months, and it works just fine for me. Only faster <img src='http://dodonov.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> .</p>

<p>And finally, on Xserver-related work, we had a new <strong>Glamor</strong> pull request from Zhigang Gong, lots of man and documentation-related patches, Xinput and evdev development, and a small patch which drops support for the <strong>bsdi</strong>. I am actually quite curious about this one &#8211; it has been a really, <em>really</em> long time since I&#8217;ve seen a bsdi system out there. Does anyone still has one around? It would be nice to play with it those days&#8230; <img src='http://dodonov.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>

<p><strong>EDIT:</strong> Update from Daniel Vetter &#8211; HiZ is available in hardware starting from Ironlake. I updated the post accordingly.</p>
]]></content:encoded>
			<wfw:commentRss>http://dodonov.net/blog/2011/10/18/so-whatve-been-up-to-at-linux-graphics-lately/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>So, what&#8217;s been up with Intel Linux Graphics this week?</title>
		<link>http://dodonov.net/blog/2011/10/14/so-whats-been-up-with-intel-linux-graphics-this-week/</link>
		<comments>http://dodonov.net/blog/2011/10/14/so-whats-been-up-with-intel-linux-graphics-this-week/#comments</comments>
		<pubDate>Fri, 14 Oct 2011 17:19:09 +0000</pubDate>
		<dc:creator>eugeni</dc:creator>
				<category><![CDATA[devel]]></category>
		<category><![CDATA[english]]></category>
		<category><![CDATA[intel]]></category>
		<category><![CDATA[kernel]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[Linux-Planet]]></category>
		<category><![CDATA[mageia]]></category>
		<category><![CDATA[mandriva]]></category>
		<category><![CDATA[mesa]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[x.org]]></category>

		<guid isPermaLink="false">http://dodonov.net/blog/?p=1108</guid>
		<description><![CDATA[As a Friday gift for you readers, I have another round of updates about the Intel Linux Graphics development during this week. There was much activity all around those days, so I decided not to wait until next week and do this update earlier. Certainly until next week lots of things will still happen. But <a href='http://dodonov.net/blog/2011/10/14/so-whats-been-up-with-intel-linux-graphics-this-week/'>[...]</a>]]></description>
			<content:encoded><![CDATA[<p>As a Friday gift for you readers, I have another round of updates about the Intel Linux Graphics development during this week.</p>

<p>There was much activity all around those days, so I decided not to wait until next week and do this update earlier. Certainly until next week lots of things will still happen.</p>

<p>But let&#8217;s get started. And first of all, I&#8217;d like to thank you all for the feedback I had on this blog &#8211; both by emails and comments and IRC and bugzilla &#8211; I was really and truly pleasantly surprised with your comments. Looks like this sort of information I am putting here is interesting to many people out there, so I&#8217;ll try to keep up to the task.</p>

<p>And one important reminder which somehow slipped out from the previous posts in the series &#8211; if you want to report an issue related to the Intel Graphics stack, there is a comprehensive guide on what you need to report <a href="http://intellinuxgraphics.org/how_to_report_bug.html" onclick="urchinTracker('/outgoing/intellinuxgraphics.org/how_to_report_bug.html?referer=');">here</a>. For debugging suspend-resume issues, there is a separate <a href="http://intellinuxgraphics.org/suspend-resume.html" onclick="urchinTracker('/outgoing/intellinuxgraphics.org/suspend-resume.html?referer=');">guide</a> as well. And, of course, if you want to build the latest versions of the drivers (or their snapshots) as well, there is a <a href="http://intellinuxgraphics.org/install.html" onclick="urchinTracker('/outgoing/intellinuxgraphics.org/install.html?referer=');">tutorial</a> to get you started. Those links are hidden deep in the Intel Linux Graphics web page, so they are not easy to find sometimes &#8211; so I hope they will be useful to you.</p>

<p>But let&#8217;s go to the development progress on the components of the stack for this 2nd week of October.</p>

<ul>
<li>I sent out yet another round of my <strong>EDID</strong> fixes. Thanks to the testing by <strong>Mike Lothian</strong> (thanks!!), the i915-specific fixes gave no visible regressions (however, no visible improvements improvements either), but the drm-specific fix managed to do something wrong with the Radeon adapter. So I switched the focus to the i915-specific version for now, as I don&#8217;t have non-intel hardware to do the debugging, and put it on my <a href="http://cgit.freedesktop.org/~eugeni/kernel/commit/?h=edid-i915" onclick="urchinTracker('/outgoing/cgit.freedesktop.org/_eugeni/kernel/commit/?h=edid-i915&amp;referer=');">fd.o repository</a>. Hopefully I&#8217;ll have more testing results next week, or maybe other comments on this patch. At least on all my machines, it managed to improve the monitor detection timing by a considerable margin.</li>
<li>Also on Kernel, <strong>Adam Jackson</strong> from RedHat sent out a nice patch that work around the limitations of active dp->any connectors. Quoting his patch description, &#8221; Many such (including all DP->VGA chips I can find on the market) come equipped with only 2 DP lanes, which clips your dotclock to 144MHz at8bpc.  Of the standard DMT modes, that means you lose 1600&#215;1200@60 and above.  Since these adaptors are marketed as supporting 1920&#215;1200, we might as well make that work, otherwise it&#8217;s the driver that comes out looking bad.&#8221;.</li>
<li>Still on Kernel, <strong>Jesse Barnes</strong> had sent new iterations of his 3-display-pipes patches, which have evolved into more than that by now, improving lots of display handling aspects within the driver. Also within this context, <strong>Paulo Zanoni</strong> has worked around a bug with multiple VGA outputs by using some <strong>intel_reg_dumper/intel_reg_write</strong> magic <img src='http://dodonov.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> , and came with a kernel patch for fixing such problems. This patch was further adapted according to <strong>Chris</strong> and <strong>Jesse&#8217;s</strong> comments, and is floating around the intel-gfx mailing lists at the moment.</li>
<li>Also on kernel, <strong>Daniel Vetter</strong> and (by a much smaller margin) myself were been doing lots of investigation for GPU hangs, corruptions, suspend-resume and rendering problems. Some of the problems has possible patches, some of them are still out in the wild. For the currently alive suspend-resume issues, looks like they happen when the Kernel Mode Setting (KMS) is being used, and go away with the <strong>nomodeset</strong> kernel parameter. So if you are affected by any of those, it would be worth trying that parameter in grub or kernel command line to see if it helps.</li>
<li>On development side of kernel, <strong>Jesse Barnes</strong> sent out a modeset verification patch, which could help identifying modeset-related problems; and <strong>Ben</strong> and <strong>Daniel Vetter</strong> did many code cleanups, sent out patches on hangcheck robustification, and overall were working on improving the debugging facilities of the driver.</li>
</ul>

<p>Moving to the <strong>DDX</strong> (a.k.a., 2D display driver, usually known by its friendly nickname of <strong>xf86-video-intel</strong>), there was quite an activity as well:</p>

<ul>
<li><strong>Chris</strong> has sent out lots of SNA-related patches.</li>
<li><strong>Daniel Vetter</strong> has sent some Sandy Bridge-specific fixes, and was also investigating SNA-related bug reports.</li>
<li>And I&#8217;ve managed to find a new GPU hang which only happens when SNA is active on an Ivy Bridge system. Somehow I suspect not many people out there besides myself are affected by it though <img src='http://dodonov.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> .</li>
</ul>

<p>On <strong>Mesa</strong> front, there were some new patches from <strong>Chad</strong> on Stencil Buffer development; lots of patch reviews by <strong>Eric Anholt</strong> and <strong>Ian</strong>, some Ivy Bridge-specific fixes from <strong>Ken</strong>, many code cleanups and refactoring by <strong>Ken</strong> again, and some patches from <strong>Yuanhan Liu</strong> for bug fixing, improved Ivy Bridge functionality, and better GL conformance. Besides Intel-specific development, there were some interesting patches from <strong>VMware</strong> developers (Thomas Hellstrom, José Fonseca and Brian Paul) which landed into master branch as well.</p>

<p>About <strong>Xserver</strong>, lots of emails on most different areas have been floating around, as usual, but not much Intel-specific activity took place. Among the discussions and patches which caught my attention the most were an interesting discussion about patches which allow X server to run without <strong>root</strong> user; a patch which adds support for running a <strong>backtracer</strong> in case of fault; a new round of <strong>Xinput</strong> fixes, a patch for setting a default <strong>DPI</strong> value from <strong>EDID</strong> data by Michal Suchanek, and more <strong>bus cleanups</strong> by Jeremy Huddleston. On a related note, Xserver <strong>1.11.2 RC1</strong> release is approaching fairly quickly.</p>

<p>Moving to <strong>Wayland</strong>, we had lots of <strong>x11</strong>-specific patches from <strong>Kristian</strong>, and some compositor bugfixes from Benjamin Franzke.</p>

<p>And finally, on <strong>LIBVA</strong> there was a one bugfixing patch from <strong>Gwenole</strong> for proper driver name detection with fglrx-powered cards.</p>

<p>Besides those news, we also have had a new <strong>pixman</strong> release, which added some nice optimizations by using <strong>SSE2</strong> instructions on x86 platforms, and <strong>iwMMXt</strong> ones on ARM.</p>

<p>So yeah, quite some changes so far.</p>

<p>So this is the end of this semi-periodic-update about the state and news from the Intel Linux Graphics (and related) world &#8211; see you in the next one.</p>

<p>P.S.: On a slightly related note &#8211; I have received some comments which say that this kind of posts, when they do not directly mention Mandriva or Mageia, should not belong to the respective planets. However, I also received some posts saying that the Graphics-related news affect pretty much all the distributions out there. So I am open for opinions &#8211; what do you suggest, should such post be excluded from the syndication to Planet Mandriva and/or Mageia feeds, or they could fit there as well?</p>
]]></content:encoded>
			<wfw:commentRss>http://dodonov.net/blog/2011/10/14/so-whats-been-up-with-intel-linux-graphics-this-week/feed/</wfw:commentRss>
		<slash:comments>16</slash:comments>
		</item>
		<item>
		<title>Another update on Intel Linux Graphics</title>
		<link>http://dodonov.net/blog/2011/10/10/another-update-on-intel-linux-graphics/</link>
		<comments>http://dodonov.net/blog/2011/10/10/another-update-on-intel-linux-graphics/#comments</comments>
		<pubDate>Mon, 10 Oct 2011 17:56:38 +0000</pubDate>
		<dc:creator>eugeni</dc:creator>
				<category><![CDATA[devel]]></category>
		<category><![CDATA[english]]></category>
		<category><![CDATA[intel]]></category>
		<category><![CDATA[kernel]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[Linux-Planet]]></category>
		<category><![CDATA[mageia]]></category>
		<category><![CDATA[mandriva]]></category>
		<category><![CDATA[mesa]]></category>
		<category><![CDATA[programming]]></category>

		<guid isPermaLink="false">http://dodonov.net/blog/?p=1102</guid>
		<description><![CDATA[Hi folks, another week, another update . Lots of major things happened for the past week over all the Intel Linux Graphics-related projects. Let me highlight some of them for you. On kernel side, the major feature is, certainly, the enablement of the 3rd display pipe for the Ivy Bridge architecture in the intel-gfx mailing <a href='http://dodonov.net/blog/2011/10/10/another-update-on-intel-linux-graphics/'>[...]</a>]]></description>
			<content:encoded><![CDATA[<p>Hi folks,</p>

<p>another week, another update <img src='http://dodonov.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> .</p>

<p>Lots of major things happened for the past week over all the Intel Linux Graphics-related projects. Let me highlight some of them for you.</p>

<ul>
<li>On <strong>kernel</strong> side, the major feature is, certainly, the enablement of the <a href="http://dodonov.net/blog/2011/10/05/3-independent-displays-are-getting-really-close/">3rd display pipe for the Ivy Bridge architecture</a> in the intel-gfx mailing list, by Jesse Barnes. Lots of things were already said about Ivy Bridge, which will arrive next year to your favorite reseller, and the Open Source drivers for it will be ready by the time it gets there. The enablement of the 3rd display pipe &#8211; and, therefore, the possibility of having 3 independent displays up and running on Linux &#8211; certainly is a major step forward. And having those patches in the open-source world early, months before the hardware will arrive to the vast majority of the users, is certainly a big plus for everyone (and specially for the open-source community)!</li>
<li>Lots of work for next stable release of <strong>mesa</strong> (<strong>7.11.1</strong>) was done, resulting in cherry-picking hundreds of commits to the stable branch.</li>
<li>MRT rendering support in OpenGL ES 2.0 was added to <strong>Mesa</strong> by Ian Romanick. This change brought the GL_NV_draw_buffers and GL_NV_fbo_color_attachment OpenGL extensions to ES 2.0.</li>
<li>Lots of internal shaders cleanup was also done by Ian Romanick.</li>
<li>Paul Berry has sent yet more patches for gl_Clip_Distance and gl_ClipVertex to <strong>mesa-dev</strong> mailing list. Also, a (possibly final) version of clipping series of patches for Gen6 is floating around mesa-dev mailing list now.</li>
<li>Also on <strong>mesa</strong> side, some work on <strong>GLES 1.1</strong> conformance was done by Kenneth Graunke, together with new patches for <strong>HiZ</strong> support by Chad Versace and some <strong>GLSL 1.30</strong> fixes by Carl Worth. Speaking on GLSL 1.30, it has received lots of commits from Eric Anholt, Kenneth Graunke and Paul Berry as well. The OpenGL 3.0 and GLSL 1.30 support is getting closer and closer now.</li>
<li>On intel-gfx mailing lists, irc and bugzilla, lots of discussion and possible fixes for the <strong>RC6-related</strong> problems I mentioned in the <a href="http://dodonov.net/blog/2011/10/03/a-first-post-about-intel-linux-graphics-and-their-friends/">previous post</a> took place by myself, Daniel Vetter, Chris Wilson and many others. So far, a workaround for <a href="https://bugs.freedesktop.org/show_bug.cgi?id=38567" onclick="urchinTracker('/outgoing/bugs.freedesktop.org/show_bug.cgi?id=38567&amp;referer=');">bug 38567</a> seems to be found, while the <a href="https://bugs.freedesktop.org/show_bug.cgi?id=41266" onclick="urchinTracker('/outgoing/bugs.freedesktop.org/show_bug.cgi?id=41266&amp;referer=');">bug 41226</a> is still playing tricks with us. Those are the only rc6-related bugs we are aware of at the moment, so hopefully they will be solved pretty soon.</li>
<li>Also on kernel side, some patches from Daniel Vetter and Ben Widawsky landed in the intel-gfx mailing list, which enable more verbose per-ring information collection. This would result in a much more accurate problem diagnosis &#8211; as newer GPU hardware has multiple rendering rings, the crash dumps not always provided all the necessary information. Now they should.</li>
<li>Some more timing and display detection-related patches from Keith Packard arrived to the intel-gfx mailing list, which greatly improve the monitor detection timings and provide support for new MacBook Air displays. They should probably get into the Kernel 3.2, but can already be used to testing with the 3.1 (and, with some adaptations 3.0) kernel series.</li>
<li>And finally, I&#8217;ve finally sent my patches for fixing the <a href="http://dodonov.net/blog/2011/10/07/improving-edid-detection-timings/">long display discovery</a> issues to intel-gfx mailing list. According to the tests, they should improve the display detection timing by <strong>30%&#8211;300%</strong>, by giving up earlier on non-working output ports. The effects should be more visible on machines which has lots of such ports &#8211; which is becoming quite common those days with the DisplayPort, HDMI, VGA, S-Video, and all the others connections we have out there.</li>
</ul>

<p>On a related note, Mageia kernel was updated to <strong>3.1-rc9</strong> &#8211; so all the Mageia Cauldron users should experience a nice performance improvements with their Intel graphics cards. Mandriva kernel is at 3.1-rc9 as well, both distributions are on a similar page now.</p>
]]></content:encoded>
			<wfw:commentRss>http://dodonov.net/blog/2011/10/10/another-update-on-intel-linux-graphics/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Improving edid detection timings</title>
		<link>http://dodonov.net/blog/2011/10/07/improving-edid-detection-timings/</link>
		<comments>http://dodonov.net/blog/2011/10/07/improving-edid-detection-timings/#comments</comments>
		<pubDate>Fri, 07 Oct 2011 14:24:40 +0000</pubDate>
		<dc:creator>eugeni</dc:creator>
				<category><![CDATA[devel]]></category>
		<category><![CDATA[english]]></category>
		<category><![CDATA[intel]]></category>
		<category><![CDATA[kernel]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[Linux-Planet]]></category>
		<category><![CDATA[mageia]]></category>
		<category><![CDATA[mandriva]]></category>

		<guid isPermaLink="false">http://dodonov.net/blog/?p=1098</guid>
		<description><![CDATA[After some iterations of my patch to improve the edid detection timings, I finally posted the release-candidate version of it to the intel-gfx mailing list yesterday. What is this patch about? In many cases, when you have a system with different video outputs (say, VGA, HDMI, DP, among others), sometimes a simple xrandr execution takes <a href='http://dodonov.net/blog/2011/10/07/improving-edid-detection-timings/'>[...]</a>]]></description>
			<content:encoded><![CDATA[<p>After some iterations of my patch to improve the edid detection timings, I finally posted the release-candidate version of it to the intel-gfx mailing list yesterday.</p>

<p>What is this patch about? In many cases, when you have a system with different video outputs (say, VGA, HDMI, DP, among others), sometimes a simple <strong>xrandr</strong> execution takes too long &#8211; sometimes even longer than 1 second (the famous <a href="https://bugs.freedesktop.org/show_bug.cgi?id=41059" onclick="urchinTracker('/outgoing/bugs.freedesktop.org/show_bug.cgi?id=41059&amp;referer=');">BUG #41059</a>).</p>

<p>The first two iterations of this fix managed to improve the timing by a huge margin &#8211; as much by a factor 100x actually in some cases. But the drawback is that the fix also managed to exclude some valid port connectors sometimes, so it wasn&#8217;t a valid fix after all.</p>

<p>After more investigation, I came to realize that what happens in some cases is that the pins used for detection are stuck while the the connector is not plugged in; and suddenly come to their senses when the connector is there. So we couldn&#8217;t just ignore those pins in all cases &#8211; even if they seem to be invalid, they could change their mind at some point.</p>

<p>So I came with two different sets of patches &#8211; one which fixes the issue directly in <strong>drm</strong>, and should benefit all the video cards using it for edid detection; and another which does the same thing but within the <strong>i915</strong> driver. In both cases, I have experienced a <strong>30%-300%</strong> improvements in output detection on all the machines I have tested, which also resulted in some seconds of boot-time optimizations in total. So it is a nice improvement in my opinion <img src='http://dodonov.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> .</p>

<p>The advantage of the first approach is that it should work with each card; but the disadvantage is that I don&#8217;t have any non-intel cards around for a long time already &#8211; well, technically, for 6 months, since my <strong>ASUS G1S</strong> passed away after 4 years or use, 2 years of disk uptime according to S.M.A.R.T.. He was solely responsible for all the builds of 4 Mandriva releases (2010.2 and all the 2011 preliminar ones) &#8211; so indeed, it was a hero notebook.</p>

<p>But back to the topic &#8211; if by a chance you experience slow <strong>xrandr</strong> execution; or you think that your machine takes a long time to start X or during the boot while attempting to find out all the video output it has &#8211; <a href="https://bugs.freedesktop.org/show_bug.cgi?id=41059" onclick="urchinTracker('/outgoing/bugs.freedesktop.org/show_bug.cgi?id=41059&amp;referer=');">give them a try</a>! I&#8217;d be very interested in any feedback.</p>
]]></content:encoded>
			<wfw:commentRss>http://dodonov.net/blog/2011/10/07/improving-edid-detection-timings/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>3 independent displays are getting really close..</title>
		<link>http://dodonov.net/blog/2011/10/05/3-independent-displays-are-getting-really-close/</link>
		<comments>http://dodonov.net/blog/2011/10/05/3-independent-displays-are-getting-really-close/#comments</comments>
		<pubDate>Wed, 05 Oct 2011 20:36:19 +0000</pubDate>
		<dc:creator>eugeni</dc:creator>
				<category><![CDATA[devel]]></category>
		<category><![CDATA[english]]></category>
		<category><![CDATA[intel]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[Linux-Planet]]></category>
		<category><![CDATA[mandriva]]></category>

		<guid isPermaLink="false">http://dodonov.net/blog/?p=1092</guid>
		<description><![CDATA[Continuing my updating on latest intel linux graphics-related activity, some hours ago Jesse Barnes&#8217; patches which add support for 3 display pipes to our Linux i915 driver have landed onto intel-gfx mailing list. This is one feature I am particularly very interested in, and it is great to have those patches available in the open-source <a href='http://dodonov.net/blog/2011/10/05/3-independent-displays-are-getting-really-close/'>[...]</a>]]></description>
			<content:encoded><![CDATA[<div align="center"><a href="http://twitpic.com/6vop4e" title="Linux on IVB with 3 independent displays - ain&#039;t that aw... on Twitpic" onclick="urchinTracker('/outgoing/twitpic.com/6vop4e?referer=');"><img src="http://s1.proxy05.twitpic.com/photos/large/416017454.jpg" alt="Linux on IVB with 3 independent displays - ain&#039;t that aw... on Twitpic"></a></div>

<p>Continuing my updating on latest intel linux graphics-related activity, some hours ago Jesse Barnes&#8217; patches which add support for 3 display pipes to our Linux i915 driver have landed onto intel-gfx mailing list. This is one feature I am particularly very interested in, and it is great to have those patches available in the open-source world now &#8211; months before the IVB-based hardware will arrive at the consumer market.</p>

<p>Yes, as it was announced in several conferences, notes and even IDF, the Ivy Bridge graphics will bring out some impressive changes. Besides a <strong>greatly</strong> improved performance and new features, they also bring the support for 3 independent displays with them. So yes, it would be possible for one to have up to three independent video/audio streams being output to 3 different monitors at the same time (or having your display extended over 3 different monitors to bring you closer to the matrix reality <img src='http://dodonov.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> ).</p>

<p>As for the user interface to configure such display &#8211; pretty much everything stays the same. You just have more options in the xrandr tool (and its GUI frontends out there).</p>

<p>So if you&#8217;ve been waiting for watching 3 HDTV 1080p (or even twice-that-resolution) videos at the same time, on 3 different monitors, this time is approaching very fast.</p>
]]></content:encoded>
			<wfw:commentRss>http://dodonov.net/blog/2011/10/05/3-independent-displays-are-getting-really-close/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>A first post about Intel Linux Graphics and their friends</title>
		<link>http://dodonov.net/blog/2011/10/03/a-first-post-about-intel-linux-graphics-and-their-friends/</link>
		<comments>http://dodonov.net/blog/2011/10/03/a-first-post-about-intel-linux-graphics-and-their-friends/#comments</comments>
		<pubDate>Mon, 03 Oct 2011 19:50:24 +0000</pubDate>
		<dc:creator>eugeni</dc:creator>
				<category><![CDATA[devel]]></category>
		<category><![CDATA[english]]></category>
		<category><![CDATA[intel]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[Linux-Planet]]></category>
		<category><![CDATA[mandriva]]></category>
		<category><![CDATA[mesa]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[writing]]></category>
		<category><![CDATA[x.org]]></category>

		<guid isPermaLink="false">http://dodonov.net/blog/?p=1067</guid>
		<description><![CDATA[A long time no post.. but then, it was also a long time without a home, internet and free time as well. As you already know, since August I am working at Intel, within the Intel Linux Graphics group. And, as many of you know as well, the news about Intel Linux graphics out there <a href='http://dodonov.net/blog/2011/10/03/a-first-post-about-intel-linux-graphics-and-their-friends/'>[...]</a>]]></description>
			<content:encoded><![CDATA[<p>A long time no post.. but then, it was also a long time without a home, internet and free time as well.</p>

<p>As you already know, since August I am working at Intel, within the <a href="http://intellinuxgraphics.org/team.html" onclick="urchinTracker('/outgoing/intellinuxgraphics.org/team.html?referer=');">Intel Linux Graphics</a> group. And, as many of you know as well, the news about Intel Linux graphics out there vary a lot, but usually just between the &#8220;it just works&#8221; and &#8220;nothing works&#8221; states, with few intermediate points in between (many of which are usually covered by phoronix news).</p>

<p>So to fill those empty spots, I thought on getting back into the habit of semi periodic write-ups I got while at Mandriva &#8211; just giving out some insights, overviews and overall updates about what is going on with Intel Linux Graphics and related open-source projects from time to time.</p>

<p>But first of all, let me do a quick review about what Intel Linux Graphics is all about. Unlikely other drivers project, the Linux Graphics does not consists from a single and unique driver. By the contrary, it has a lot of ground to cover, working directly on the upstream projects which compose the graphical stack &#8211; ranging from the i915 driver in <strong>kernel</strong> to the entire <strong>MESA</strong> 3D/GL stack, passing through <strong>libdrm</strong> and <strong>vaapi</strong> and all the way up to <strong>x11-server</strong>, <strong>cairo</strong> and <strong>wayland</strong> &#8211; among others. So when you read about an Intel Linux Graphics release, it considers a snapshot version of each of those components.</p>

<p>Of course, each of those projects has a different release goals and timelines, different sets of features to cover, and so on. And, of course, there is a matrix of different generations of graphical hardware, different variations of the models and revisions, and a multitude of OEM platforms to cover.</p>

<p>So, in short, &#8220;it&#8217;s complicated&#8221; <img src='http://dodonov.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> .</p>

<p>In this sense, the Intel Linux Graphics project so far was doing quarterly releases of the entire stack, as one could see at <a href="http://intellinuxgraphics.org/2011Q3.html" onclick="urchinTracker('/outgoing/intellinuxgraphics.org/2011Q3.html?referer=');">2011Q3</a>, <a href="http://intellinuxgraphics.org/2011Q1.html" onclick="urchinTracker('/outgoing/intellinuxgraphics.org/2011Q1.html?referer=');">2011Q1</a>, <a href="http://intellinuxgraphics.org/2010Q4.html" onclick="urchinTracker('/outgoing/intellinuxgraphics.org/2010Q4.html?referer=');">2010Q4</a> and all the previous ones. However, one of the problems with the quarterly releases, specially over such a big and varying stack, is that they don&#8217;t fit all the situations. So starting with the next release, we&#8217;ll be changing our process to carry out more specific releases, based on pre-defined release criteria for each of them. And the next release will be focused specifically on performance and stability enhancement over our current code.</p>

<p>What do I mean by performance and stability? While most of the people out there do not experience any issues with the drivers (e.g., &#8220;they just work&#8221; category I mentioned out there), we are by no means perfect, and yes, we have bugs which affect different users, operating systems and hardware components (all the way to that &#8220;nothing works&#8221; category of people &#8211; which is thankfully quite small, and of course we hope to promote it to the &#8220;just work&#8221; category of the people ASAP). And we are trying to get better and better for each release, at the same time trying to maintain the same level of openness as one would expect from open-source projects.</p>

<p>If you look at the freedesktop bugzilla, for intel graphics-specific issues, there is a quite complete list out there. Of course, many of those bugs are old, or do not apply to the current state of the code anymore, but some of those are valid &#8211; and they don&#8217;t get the level of attention they need. Specially considering the large number of reports, it is really hard to keep track of all of them, and it is specially easy to get lost among all of them. So if your bug is not getting enough attention &#8211; just go over to it, and ping us. We do not ignore you, but sometimes we lose track of specific issues out there, and we&#8217;ll be happy to be reminded either when an issue is fixed, or whether it is still out there and needs some love <img src='http://dodonov.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> .</p>

<p>So, as I said previously, I&#8217;ll try to cover up the details of each part of our drivers stack, and try to keep updated the list of the current work and goals we have in mind. So I&#8217;ll start with this first post, and will try to cover a bit about the areas we&#8217;ve been focused the most for the past months &#8211; specially considering the &#8220;performance&#8221; and &#8220;stability&#8221; criteria, and the most interesting features we have out there.</p>

<p><strong>RC6</strong></p>

<p>The first feature which I&#8217;d like to mention, which is probably unknown to most of you out there, is the support for <strong>RC6</strong> technology. This is a feature which allows the GPU (in other words, the graphical adapter) to enter an extremely low power-consuming state while the graphical card is idle. This feature has drastic effects on the power usage of the system &#8211; up to 26% power usage improvements according to <a href="http://www.phoronix.com/scan.php?page=article&amp;item=intel_i915_power&amp;num=1" onclick="urchinTracker('/outgoing/www.phoronix.com/scan.php?page=article_amp_item=intel_i915_power_amp_num=1&amp;referer=');">Phoronix testing</a>. So in theory, having this feature enabled by default would allow a much better battery life for a casual system out there equipped with an Intel graphical card.</p>

<p>However, one drawback to the rc6 is that in some very rare cases, it results in different set of issues. The good part is that very few systems are affected by this bug, and none of the machines either the developers or QA team has managed to reproduce the problems, so chances are very high that it could just work for your by adding a <strong>&#8216;i915.i915_enable_rc6=1&#8242;</strong> parameter to the kernel. The bad part is.. well.. the same as the good part &#8211; we could not reproduce the issues on any of the machines we had. So by a chance, if you enable this feature and hit some unexpected behavior or issue &#8211; please, let us know! We would be really interested in fixing this for all the systems out there. But, with all the magnitude of different x86-based machines, it is virtually impossible to test them all. So we need your help to help of us fix this issue, in case it affects your machine. All the details, such as the vendor, model, installed OS, whether the issue happens with a new install from scratch, bios configuration &#8211; would help.</p>

<p><strong>FBC</strong></p>

<p>Besides <strong>RC6</strong>, one other interesting feature present in the Intel graphical drivers is the support for framebuffer compression, of <strong>fbc</strong>. This feature allows the driver to store the contents of the picture on screen in a compressed format, effectively reducing the amount of energy (and, therefore, power) required to update the screen. On some hardware revisions, however, this feature sometimes causes the GPU not to redraw the display correctly, resulting in only partial screen updates, sometimes visible only after a few suspend-resume sequences. The solution for this problem was to disable this feature by default on such machines, while having it enabled automatically on the chips which do not reproduce the problem. However, even on those chips, you can always enable it manually, by using a <strong>i915.i915_enable_fbc=1</strong> kernel parameter.</p>

<p><strong>Semaphores</strong></p>

<p>And finally, the 3rd major issue being worked on the kernel side is the usage of semaphores in the graphical driver, which allows for a big jump in performance, and also in stability in some cases. However, not everything is perfect in this world <img src='http://dodonov.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> , so on some hardware models this feature results in performance choppiness or GPU hangs. It is within of the nature of the bug to appear only on some selected machines, most of which are out of our reach, so chances are, like with the <strong>RC6</strong> and <strong>FBC</strong> features, it should just work out of the box. But if it does not &#8211; please, let us know!</p>

<p>Apart from those 3 big items, lots of work has been carried out on different components of the stack in the past months. I&#8217;ll try to summarize the most interesting points for each component below.</p>

<p><strong>Kernel</strong></p>

<p>The Linux kernel 3.1, which is quickly approaching its release date, brings lots of stability and performance improvements over 3.0 version. The performance results are the most notable ones, as according to the initial testing, you could expect about 25% performance improvements in 3D games and performance benchmarks (and even up to 40% in some of them). I won&#8217;t enter into the details here, as I am certain that Michal Larabel from Phoronix will do his usual round of benchmarks soon enough and provide the numbers <img src='http://dodonov.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> .</p>

<p>Besides the performance fixes, the timing for detecting the different video outputs has also received lots of attention. Some of the fixes will appear in 3.1 kernel, and some of them are already being prepared to get into 3.2 as soon as its merge window will open.</p>

<p>And of course, there were lots of patches for stability and error recovery within GPU.</p>

<p>Out of the major distributions out there, as far as I know, only Mandriva Cooker has already updated its kernel to the latest 3.1 pre-released version, so its users already have most of those features with them. So if you are a brave soul and are willing to try this as soon as possible, you could either try Mandriva&#8217;s development version; or download and build the 3.1-git kernel yourself. Or just wait a few weeks and it will came to you as soon as your $FAVORITE_DISTRIBUTION would update it in the repository.</p>

<p>So, leaving kernel area, let&#8217;s move to another major component of the stack, which is well-known by its name..</p>

<p><strong>MESA</strong></p>

<p>(No, it is not the Black Mesa Research Facility, so you may put away your crowbar <img src='http://dodonov.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> )</p>

<p>Lots of work has been done on Mesa library, and some thousands of emails on the mesa-dev mailing list complement this statement.</p>

<p>Some initial patches for HiZ support from Chad Versace landed on the list, and Phoronix has also performed initial testing on them, obtaining very impressive <a href="http://www.phoronix.com/scan.php?page=article&amp;item=intel_mesa_hiz&amp;num=1" onclick="urchinTracker('/outgoing/www.phoronix.com/scan.php?page=article_amp_item=intel_mesa_hiz_amp_num=1&amp;referer=');">results</a>.</p>

<p>Also, a huge cleanup of old drivers, together with the removal of old DRI1 code and overall refactoring of the code in preparation for the GL 3.0 was done by Ian Romanick. Kenneth Graunke provided lots of patches for both performance and stability improvements for a large number of cases, together with the IvyBridge-specific optimizations. New Vertex Shader backend, lots of TextureImage development by Eric Anholt, work on gl_ClipDistance and the layout of vertex attributes by Paul Berry, lots of GLSL 1.30 development and overall bugfixing complement the picture of what happened with Mesa for the past month or so.</p>

<p>As mesa-dev list, and the git source tree, are quite busy places, there were lots of other development and updates all around which I haven&#8217;t covered here. Mesa 7.11.1 and 7.12 are really going to be amazing releases when they will come out!</p>

<p>But leaving mesa, the next stop in the Intel Linux Graphics stack overview leads us to..</p>

<p><strong>DDX, or xf86-video-intel X driver</strong></p>

<p>The video driver for Intel graphics cards has received lots of attention for the past weeks. Most of the patches came from Chris Wilson, and were related to further improvements in the SNA backend, and a fix for a non-SNA-related X crash. Besides those, we also had some IvyBridge-specific fixes from Kenneth Graunke and cleanup of some warnings from Paulo Zanoni.</p>

<p><strong>Cairo</strong></p>

<p>On Cairo side, a huge work has been made on performance, stability and testing. In some workloads, the performance improved by several orders of magnitude, and in average, one could expect better performance for Cairo on most cases when comparing with the previous release.</p>

<p><strong>Wayland</strong></p>

<p>For Wayland compositor, lots of discussions took place in the wayland-devel mailing list, covering a large collection of topics, randing from the best way to process configuration events and requests, similarities and differences between the wayland protocol and X operations, window management and overall interaction between the clients and the compositor within the Wayland world. From the technical side, there were lots of patches from Tiago Vignatti and Kristian Høgsberg on both core wayland and the wayland-demos repository. One notable change was the change of the GPLv2 headers to MIT for the remaining files where such change wasn&#8217;t applied previously.</p>

<p><strong>Intel-gpu-tools</strong></p>

<p>The package for providing tools for debugging, analyzing, tracing and profiling the Intel graphical cards on Linux/Unix has received some code cleanups from Paulo Zanoni, some news tests from Daniel Vetter, and also a small series of patches from myself which allows it to work in a non-interactive way, generating a tab-separated list of performance values for each capturing points. Those events can be further analyzed with a statistical tool, or plotted with gnuplot, or dumped into openoffice calc/excel applications &#8211; you name it.</p>

<p><strong>Libdrm</strong></p>

<p>Libdrm, which is a glue between the kernel and the userspace applications that use the kernel graphical driver, has received some fixes from Daniel Vetter last week. Besides those, there was a fix to make &#8216;make check&#8217; work correctly, and a support for using xf86drm.h from C++ applications.</p>

<p><strong>Xserver</strong></p>

<p>X.org X server has received lots of updates and merges since the 1.11.0 release in the past weeks. Among the most notable ones, there were some enhancements to the DRI2, XRANDR and DAMAGE extensions, documentation, comments and scripts fixes, besides the changes in the input framework.</p>

<p><strong>VAAPI</strong></p>

<p>And finally, as for VAAPI, not much activities happened in the git repo for the past weeks besides some refinements on the API and the vatrace tool.</p>

<p>So, as this post has already grown past the size I originally expected, I think that I&#8217;ll stop about here this time.</p>

<p>I&#8217;ll try to continue with the semi-regular blogging about the news in the graphics land of Intel world on a weekly basis.</p>

<p>See you!
Eugeni</p>
]]></content:encoded>
			<wfw:commentRss>http://dodonov.net/blog/2011/10/03/a-first-post-about-intel-linux-graphics-and-their-friends/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
		<item>
		<title>Stability is a strange word.. :)</title>
		<link>http://dodonov.net/blog/2011/08/10/stability-is-a-strange-word/</link>
		<comments>http://dodonov.net/blog/2011/08/10/stability-is-a-strange-word/#comments</comments>
		<pubDate>Wed, 10 Aug 2011 17:33:04 +0000</pubDate>
		<dc:creator>eugeni</dc:creator>
				<category><![CDATA[devel]]></category>
		<category><![CDATA[english]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[x.org]]></category>

		<guid isPermaLink="false">http://dodonov.net/blog/?p=1063</guid>
		<description><![CDATA[[eugeni@acergeni-x86_64 14:26:49 ~] $ pacman -Q &#124; grep -- -git intel-dri-git 20110809-1 libdrm-git 20110809-1 libglapi-git 20110809-1 libgl-git 20110809-1 libwayland-git 20110809-1 wayland-demos-git 20110810-1 wayland-mesa-git 20110809-1 xf86-input-evdev-git 20110810-1 xf86-input-synaptics-git 20110810-1 xf86-video-intel-git 20110810-1 xorg-server-common-git 20110810-1 xorg-server-devel-git 20110810-1 xorg-server-git 20110810-1 xorg-server-xdmx-git 20110810-1 xorg-server-xephyr-git 20110810-1 xorg-server-xnest-git 20110810-1 xorg-server-xvfb-git 20110810-1 (Yeah, by the way, I am back to arch+xfce4 now.. )]]></description>
			<content:encoded><![CDATA[<pre><code>[eugeni@acergeni-x86_64 14:26:49 ~] $ pacman -Q | grep -- -git
intel-dri-git 20110809-1
libdrm-git 20110809-1
libglapi-git 20110809-1
libgl-git 20110809-1
libwayland-git 20110809-1
wayland-demos-git 20110810-1
wayland-mesa-git 20110809-1
xf86-input-evdev-git 20110810-1
xf86-input-synaptics-git 20110810-1
xf86-video-intel-git 20110810-1
xorg-server-common-git 20110810-1
xorg-server-devel-git 20110810-1
xorg-server-git 20110810-1
xorg-server-xdmx-git 20110810-1
xorg-server-xephyr-git 20110810-1
xorg-server-xnest-git 20110810-1
xorg-server-xvfb-git 20110810-1
</code></pre>

<p>(Yeah, by the way, I am back to arch+xfce4 now.. <img src='http://dodonov.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> )</p>
]]></content:encoded>
			<wfw:commentRss>http://dodonov.net/blog/2011/08/10/stability-is-a-strange-word/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

<!-- Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

Served from: dodonov.net @ 2012-02-04 13:49:13 -->
