<?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/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Tiago Vignatti &#187; device</title>
	<atom:link href="http://vignatti.wordpress.com/tag/device/feed/" rel="self" type="application/rss+xml" />
	<link>http://vignatti.wordpress.com</link>
	<description>In The Eyes Of The World</description>
	<lastBuildDate>Mon, 09 Nov 2009 01:47:17 +0000</lastBuildDate>
	<generator>http://wordpress.com/</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<cloud domain='vignatti.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://www.gravatar.com/blavatar/33cb7ca85d43793f113cab97fc6c2cd1?s=96&#038;d=http://s.wordpress.com/i/buttonw-com.png</url>
		<title>Tiago Vignatti &#187; device</title>
		<link>http://vignatti.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://vignatti.wordpress.com/osd.xml" title="Tiago Vignatti" />
		<item>
		<title>fakemouse &#8212; a driver that emulates a mouse</title>
		<link>http://vignatti.wordpress.com/2008/05/27/fakemouse-a-driver-that-emulates-a-mouse/</link>
		<comments>http://vignatti.wordpress.com/2008/05/27/fakemouse-a-driver-that-emulates-a-mouse/#comments</comments>
		<pubDate>Wed, 28 May 2008 02:36:09 +0000</pubDate>
		<dc:creator>vignatti</dc:creator>
				<category><![CDATA[Computing]]></category>
		<category><![CDATA[SoC2008]]></category>
		<category><![CDATA[device]]></category>
		<category><![CDATA[event]]></category>
		<category><![CDATA[fake]]></category>
		<category><![CDATA[input]]></category>
		<category><![CDATA[kernel]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[mouse]]></category>
		<category><![CDATA[vignatti]]></category>
		<category><![CDATA[xorg]]></category>

		<guid isPermaLink="false">http://vignatti.wordpress.com/?p=29</guid>
		<description><![CDATA[For my SoC project I need some mechanism to evaluate the improvement of the input thread inside X. So I wrote a simple kernel driver that emulates the mouse device moving and emitting bits of a simple pattern. I don&#8217;t know if something like this already exists or if there are other ways to do [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=vignatti.wordpress.com&blog=769537&post=29&subd=vignatti&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>For my SoC <a href="http://vignatti.wordpress.com/2008/04/29/google-summer-of-code-2008/" target="_self">project</a> I need some mechanism to evaluate the improvement of the input thread inside X. So I wrote a simple kernel driver that emulates the mouse device moving and emitting bits of a simple pattern. I don&#8217;t know if something like this already exists or if there are other ways to do it, but the fact is that the solution I thought took me only few hours between the moment that I imagined, collected some ideas on the Web and implemented it.</p>
<p>Why emulate a device? I need stress the X server always with same routines and things like XWarpPointer() and XTestFake*MotionEvent() is not close to a real user usage because they do not pass through all the paths of the event creation stage inside X. So now I can run fakemouse module together with some x11perf test and collect the results comparing the X with and without input thread. Cool :)</p>
<p>&#8212;</p>
<p>For those who are interested in the driver can do the following:<br />
# wget http://web.inf.ufpr.br/vignatti/code/fakemouse-0.01.tar.gz<br />
# tar xzvf fakemouse-0.01.tar.gz<br />
# cd fakemouse-0.01<br />
# make<br />
# insmod fakemouse.ko<br />
# echo 1 &gt; /sys/module/fakemouse/parameters/mouseon</p>
<p>and be happy seeing what happens in some event node create by fakemouse (/dev/input/event*).</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/vignatti.wordpress.com/29/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/vignatti.wordpress.com/29/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/vignatti.wordpress.com/29/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/vignatti.wordpress.com/29/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/vignatti.wordpress.com/29/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/vignatti.wordpress.com/29/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/vignatti.wordpress.com/29/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/vignatti.wordpress.com/29/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/vignatti.wordpress.com/29/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/vignatti.wordpress.com/29/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/vignatti.wordpress.com/29/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/vignatti.wordpress.com/29/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=vignatti.wordpress.com&blog=769537&post=29&subd=vignatti&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://vignatti.wordpress.com/2008/05/27/fakemouse-a-driver-that-emulates-a-mouse/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/c80e0b79eb21bbd134add2362d74f4ce?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">vignatti</media:title>
		</media:content>
	</item>
	</channel>
</rss>