CINXE.COM

LKML: "K.R. Foley": Re: [patch] Real-Time Preemption, -RT-2.6.12-rc1-V0.7.43-00

<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>LKML: "K.R. Foley": Re: [patch] Real-Time Preemption, -RT-2.6.12-rc1-V0.7.43-00</title><link href="/css/message.css" rel="stylesheet" type="text/css" /><link href="/css/wrap.css" rel="alternate stylesheet" type="text/css" title="wrap" /><link href="/css/nowrap.css" rel="stylesheet" type="text/css" title="nowrap" /><link href="/favicon.ico" rel="shortcut icon" /><script src="/js/simple-calendar.js" type="text/javascript"></script><script src="/js/styleswitcher.js" type="text/javascript"></script><link rel="alternate" type="application/rss+xml" title="lkml.org : last 100 messages" href="/rss.php" /><link rel="alternate" type="application/rss+xml" title="lkml.org : last messages by &quot;K.R. Foley&quot;" href="/groupie.php?aid=8203" /><!--Matomo--><script> var _paq = window._paq = window._paq || []; /* tracker methods like "setCustomDimension" should be called before "trackPageView" */ _paq.push(["setDoNotTrack", true]); _paq.push(["disableCookies"]); _paq.push(['trackPageView']); _paq.push(['enableLinkTracking']); (function() { var u="//m.lkml.org/"; _paq.push(['setTrackerUrl', u+'matomo.php']); _paq.push(['setSiteId', '1']); var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0]; g.async=true; g.src=u+'matomo.js'; s.parentNode.insertBefore(g,s); })(); </script><!--End Matomo Code--></head><body onload="es.jasper.simpleCalendar.init();" itemscope="itemscope" itemtype="http://schema.org/BlogPosting"><table border="0" cellpadding="0" cellspacing="0"><tr><td width="180" align="center"><a href="/"><img style="border:0;width:135px;height:32px" src="/images/toprowlk.gif" alt="lkml.org" /></a></td><td width="32">聽</td><td class="nb"><div><a class="nb" href="/lkml"> [lkml]</a> 聽 <a class="nb" href="/lkml/2005"> [2005]</a> 聽 <a class="nb" href="/lkml/2005/4"> [Apr]</a> 聽 <a class="nb" href="/lkml/2005/4/1"> [1]</a> 聽 <a class="nb" href="/lkml/last100"> [last100]</a> 聽 <a href="/rss.php"><img src="/images/rss-or.gif" border="0" alt="RSS Feed" /></a></div><div>Views: <a href="#" class="nowrap" onclick="setActiveStyleSheet('wrap');return false;">[wrap]</a><a href="#" class="wrap" onclick="setActiveStyleSheet('nowrap');return false;">[no wrap]</a> 聽 <a class="nb" href="/lkml/mheaders/2005/4/1/183" onclick="this.href='/lkml/headers'+'/2005/4/1/183';">[headers]</a>聽 <a href="/lkml/bounce/2005/4/1/183">[forward]</a>聽 </div></td><td width="32">聽</td></tr><tr><td valign="top"><div class="es-jasper-simpleCalendar" baseurl="/lkml/"></div><div class="threadlist">Messages in this thread</div><ul class="threadlist"><li class="root"><a href="/lkml/2005/3/25/100">First message in thread</a></li><li><a href="/lkml/2005/4/1/77">Ingo Molnar</a><ul><li><a href="/lkml/2005/4/1/90">"Rui Nuno Capela"</a><ul><li><a href="/lkml/2005/4/1/100">Ingo Molnar</a><ul><li><a href="/lkml/2005/4/1/118">"Rui Nuno Capela"</a><ul><li><a href="/lkml/2005/4/1/124">Ingo Molnar</a></li></ul></li></ul></li></ul></li><li><a href="/lkml/2005/4/1/165">Gene Heskett</a><ul><li class="origin"><a href="/lkml/2005/4/1/180">"K.R. Foley"</a><ul><li><a href="/lkml/2005/4/1/180">Ingo Molnar</a></li><li><a href="/lkml/2005/4/1/198">Gene Heskett</a><ul><li><a href="/lkml/2005/4/1/200">"K.R. Foley"</a></li></ul></li><li><a href="/lkml/2005/4/1/199">Gene Heskett</a></li></ul></li></ul></li><li><a href="/lkml/2005/4/5/35">Ingo Molnar</a><ul><li><a href="/lkml/2005/4/5/279">"Rui Nuno Capela"</a><ul><li><a href="/lkml/2005/4/5/294">Steven Rostedt</a><ul><li><a href="/lkml/2005/4/8/167">"Rui Nuno Capela"</a></li></ul></li></ul></li><li><a href="/lkml/2005/4/10/78">"K.R. Foley"</a><ul><li><a href="/lkml/2005/4/10/81">Ingo Molnar</a><ul><li><a href="/lkml/2005/4/10/86">Steven Rostedt</a></li></ul></li></ul></li><li><a href="/lkml/2005/4/21/49">Ingo Molnar</a><ul><li><a href="/lkml/2005/4/21/55">Paolo Ciarrocchi</a></li><li><a href="/lkml/2005/4/21/142">Daniel Walker</a></li><li><a href="/lkml/2005/4/21/185">Daniel Walker</a></li><li><a href="/lkml/2005/4/22/11">Ingo Molnar</a><ul><li><a href="/lkml/2005/4/22/22">Ingo Molnar</a></li><li><a href="/lkml/2005/4/30/158">Lee Revell</a></li></ul></li></ul></li></ul></li></ul></li></ul><div class="threadlist">Patch in this message</div><ul class="threadlist"><li><a href="/lkml/diff/2005/4/1/183/1">Get diff 1</a></li></ul></td><td width="32" rowspan="2" class="c" valign="top"><img src="/images/icornerl.gif" width="32" height="32" alt="/" /></td><td class="c" rowspan="2" valign="top" style="padding-top: 1em"><table><tr><td><table><tr><td class="lp">Date</td><td class="rp" itemprop="datePublished">Fri, 01 Apr 2005 12:27:11 -0600</td></tr><tr><td class="lp">From</td><td class="rp" itemprop="author">"K.R. Foley" &lt;&gt;</td></tr><tr><td class="lp">Subject</td><td class="rp" itemprop="name">Re: [patch] Real-Time Preemption, -RT-2.6.12-rc1-V0.7.43-00</td></tr></table></td><td></td></tr></table><pre itemprop="articleBody">Gene Heskett wrote:<br />&lt;snip&gt;<br />&gt; It was up to 43-04 by the time I got there.<br />&gt; <br />&gt; This one didn't go in cleanly Ingo. From my build-src scripts output:<br />&gt; -------------------<br />&gt; Applying patch realtime-preempt-2.6.12-rc1-V0.7.43-04<br />&gt; [...]<br />&gt; patching file lib/rwsem-spinlock.c<br />&gt; Hunk #5 FAILED at 133.<br />&gt; Hunk #6 FAILED at 160.<br />&gt; Hunk #7 FAILED at 179.<br />&gt; Hunk #8 FAILED at 194.<br />&gt; Hunk #9 FAILED at 204.<br />&gt; Hunk #10 FAILED at 231.<br />&gt; Hunk #11 FAILED at 250.<br />&gt; Hunk #12 FAILED at 265.<br />&gt; Hunk #13 FAILED at 274.<br />&gt; Hunk #14 FAILED at 293.<br />&gt; Hunk #15 FAILED at 314.<br />&gt; 11 out of 15 hunks FAILED -- saving rejects to file <br />&gt; lib/rwsem-spinlock.c.rej<br />&gt; -----------<br />&gt; I doubt it would run, so I haven't built it. Should I?<br />&gt; <br /><br />Adding the attached patch on top of the above should resolve the <br />failures, at least in the patching. Still working on building it.<br /><br />-- <br /> kr<br />--- linux-2.6.12/lib/rwsem-spinlock.c.orig 2005-04-01 12:00:21.000000000 -0600<br />+++ linux-2.6.12/lib/rwsem-spinlock.c 2005-04-01 12:19:06.000000000 -0600<br />&#64;&#64; -18,7 +18,7 &#64;&#64; struct rwsem_waiter {<br /> };<br /> <br /> #if RWSEM_DEBUG<br />-void rwsemtrace(struct rw_semaphore *sem, const char *str)<br />+void rwsemtrace(struct compat_rw_semaphore *sem, const char *str)<br /> {<br /> if (sem-&gt;debug)<br /> printk("[%d] %s({%d,%d})\n",<br />&#64;&#64; -30,7 +30,7 &#64;&#64; void rwsemtrace(struct rw_semaphore *sem<br /> /*<br /> * initialise the semaphore<br /> */<br />-void fastcall init_rwsem(struct rw_semaphore *sem)<br />+void fastcall compat_init_rwsem(struct compat_rw_semaphore *sem)<br /> {<br /> sem-&gt;activity = 0;<br /> spin_lock_init(&amp;sem-&gt;wait_lock);<br />&#64;&#64; -49,8 +49,8 &#64;&#64; void fastcall init_rwsem(struct rw_semap<br /> * - woken process blocks are discarded from the list after having task zeroed<br /> * - writers are only woken if wakewrite is non-zero<br /> */<br />-static inline struct rw_semaphore *<br />-__rwsem_do_wake(struct rw_semaphore *sem, int wakewrite)<br />+static inline struct compat_rw_semaphore *<br />+__rwsem_do_wake(struct compat_rw_semaphore *sem, int wakewrite)<br /> {<br /> struct rwsem_waiter *waiter;<br /> struct task_struct *tsk;<br />&#64;&#64; -111,8 +111,8 &#64;&#64; __rwsem_do_wake(struct rw_semaphore *sem<br /> /*<br /> * wake a single writer<br /> */<br />-static inline struct rw_semaphore *<br />-__rwsem_wake_one_writer(struct rw_semaphore *sem)<br />+static inline struct compat_rw_semaphore *<br />+__rwsem_wake_one_writer(struct compat_rw_semaphore *sem)<br /> {<br /> struct rwsem_waiter *waiter;<br /> struct task_struct *tsk;<br />&#64;&#64; -133,7 +133,8 &#64;&#64; __rwsem_wake_one_writer(struct rw_semaph<br /> /*<br /> * get a read lock on the semaphore<br /> */<br />-void fastcall __sched __down_read(struct rw_semaphore *sem)<br />+void fastcall __sched __down_read(struct compat_rw_semaphore *sem)<br />+<br /> {<br /> struct rwsem_waiter waiter;<br /> struct task_struct *tsk;<br />&#64;&#64; -179,7 +180,8 &#64;&#64; void fastcall __sched __down_read(struct<br /> /*<br /> * trylock for reading -- returns 1 if successful, 0 if contention<br /> */<br />-int fastcall __down_read_trylock(struct rw_semaphore *sem)<br />+int fastcall __down_read_trylock(struct compat_rw_semaphore *sem)<br />+<br /> {<br /> unsigned long flags;<br /> int ret = 0;<br />&#64;&#64; -204,7 +206,8 &#64;&#64; int fastcall __down_read_trylock(struct <br /> * get a write lock on the semaphore<br /> * - we increment the waiting count anyway to indicate an exclusive lock<br /> */<br />-void fastcall __sched __down_write(struct rw_semaphore *sem)<br />+void fastcall __sched __down_write(struct compat_rw_semaphore *sem)<br />+<br /> {<br /> struct rwsem_waiter waiter;<br /> struct task_struct *tsk;<br />&#64;&#64; -250,7 +253,8 &#64;&#64; void fastcall __sched __down_write(struc<br /> /*<br /> * trylock for writing -- returns 1 if successful, 0 if contention<br /> */<br />-int fastcall __down_write_trylock(struct rw_semaphore *sem)<br />+int fastcall __down_write_trylock(struct compat_rw_semaphore *sem)<br />+<br /> {<br /> unsigned long flags;<br /> int ret = 0;<br />&#64;&#64; -274,7 +278,8 &#64;&#64; int fastcall __down_write_trylock(struct<br /> /*<br /> * release a read lock on the semaphore<br /> */<br />-void fastcall __up_read(struct rw_semaphore *sem)<br />+void fastcall __up_read(struct compat_rw_semaphore *sem)<br />+<br /> {<br /> unsigned long flags;<br /> <br />&#64;&#64; -293,7 +298,7 &#64;&#64; void fastcall __up_read(struct rw_semaph<br /> /*<br /> * release a write lock on the semaphore<br /> */<br />-void fastcall __up_write(struct rw_semaphore *sem)<br />+void fastcall __up_write(struct compat_rw_semaphore *sem)<br /> {<br /> unsigned long flags;<br /> <br />&#64;&#64; -314,7 +319,7 &#64;&#64; void fastcall __up_write(struct rw_semap<br /> * downgrade a write lock into a read lock<br /> * - just wake up any readers at the front of the queue<br /> */<br />-void fastcall __downgrade_write(struct rw_semaphore *sem)<br />+void fastcall __downgrade_write(struct compat_rw_semaphore *sem)<br /> {<br /> unsigned long flags;<br /> <br />&#64;&#64; -331,7 +336,7 &#64;&#64; void fastcall __downgrade_write(struct r<br /> rwsemtrace(sem, "Leaving __downgrade_write");<br /> }<br /> <br />-EXPORT_SYMBOL(init_rwsem);<br />+EXPORT_SYMBOL(compat_init_rwsem);<br /> EXPORT_SYMBOL(__down_read);<br /> EXPORT_SYMBOL(__down_read_trylock);<br /> EXPORT_SYMBOL(__down_write);</pre></td><td width="32" rowspan="2" class="c" valign="top"><img src="/images/icornerr.gif" width="32" height="32" alt="\" /></td></tr><tr><td align="right" valign="bottom"> 聽 </td></tr><tr><td align="right" valign="bottom">聽</td><td class="c" valign="bottom" style="padding-bottom: 0px"><img src="/images/bcornerl.gif" width="32" height="32" alt="\" /></td><td class="c">聽</td><td class="c" valign="bottom" style="padding-bottom: 0px"><img src="/images/bcornerr.gif" width="32" height="32" alt="/" /></td></tr><tr><td align="right" valign="top" colspan="2"> 聽 </td><td class="lm">Last update: 2005-04-06 13:31 聽聽 [from the cache]<br />漏2003-2020 <a href="http://blog.jasper.es/"><span itemprop="editor">Jasper Spaans</span></a>|hosted at <a href="https://www.digitalocean.com/?refcode=9a8e99d24cf9">Digital Ocean</a> and my Meterkast|<a href="http://blog.jasper.es/categories.html#lkml-ref">Read the blog</a></td><td>聽</td></tr></table><script language="javascript" src="/js/styleswitcher.js" type="text/javascript"></script></body></html>

Pages: 1 2 3 4 5 6 7 8 9 10