<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/arch/um/kernel, branch v2.6.27.56</title>
<subtitle>Linux kernel source tree</subtitle>
<id>https://git.amat.us/linux/atom/arch/um/kernel?h=v2.6.27.56</id>
<link rel='self' href='https://git.amat.us/linux/atom/arch/um/kernel?h=v2.6.27.56'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/'/>
<updated>2008-07-26T19:00:10Z</updated>
<entry>
<title>um: use generic show_mem()</title>
<updated>2008-07-26T19:00:10Z</updated>
<author>
<name>Johannes Weiner</name>
<email>hannes@saeurebad.de</email>
</author>
<published>2008-07-26T02:46:12Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=79b0cbd113a9de1eaa3322528ccaeb97bd9189cc'/>
<id>urn:sha1:79b0cbd113a9de1eaa3322528ccaeb97bd9189cc</id>
<content type='text'>
Remove arch-specific show_mem() in favor of the generic version.

This also removes the following redundant information display:

	- free swap pages, printed by show_swap_cache_info()
	- pages in swapcache, printed by show_swap_cache_info()

where show_mem() calls show_free_areas(), which calls
show_swap_cache_info().

Signed-off-by: Johannes Weiner &lt;hannes@saeurebad.de&gt;
Acked-by: Jeff Dike &lt;jdike@addtoit.com&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>Merge branch 'timers-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip</title>
<updated>2008-07-24T19:55:01Z</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2008-07-24T19:55:01Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=ecc8b655b38a880b578146895e0e1e2d477ca2c0'/>
<id>urn:sha1:ecc8b655b38a880b578146895e0e1e2d477ca2c0</id>
<content type='text'>
* 'timers-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
  nohz: adjust tick_nohz_stop_sched_tick() call of s390 as well
  nohz: prevent tick stop outside of the idle loop
</content>
</entry>
<entry>
<title>UML: make several more things static</title>
<updated>2008-07-24T17:47:24Z</updated>
<author>
<name>WANG Cong</name>
<email>xiyou.wangcong@gmail.com</email>
</author>
<published>2008-07-24T04:28:49Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=99764fa4ceeecba8b9e0a8a5565b418a2e94f83b'/>
<id>urn:sha1:99764fa4ceeecba8b9e0a8a5565b418a2e94f83b</id>
<content type='text'>
- Make some variables and functions static, since they don't need to be
  global.

- Remove an unused function - arch/um/kernel/time.c::sched_clock().

- Clean the style a bit as complained by checkpatch.pl.

Cc: Jeff Dike &lt;jdike@addtoit.com&gt;
Signed-off-by: WANG Cong &lt;wangcong@zeuux.org&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>arch/um/kernel/mem.c: remove arch_validate()</title>
<updated>2008-07-24T17:47:24Z</updated>
<author>
<name>WANG Cong</name>
<email>xiyou.wangcong@gmail.com</email>
</author>
<published>2008-07-24T04:28:49Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=4a5675820436e4ad738dd442c1cc8a165101509b'/>
<id>urn:sha1:4a5675820436e4ad738dd442c1cc8a165101509b</id>
<content type='text'>
- Remove arch_validate(), because no one uses it.

- Remove useless macro HAVE_ARCH_VALIDATE.

- Make the variable 'empty_bad_page' static.

Cc: Jeff Dike &lt;jdike@addtoit.com&gt;
Signed-off-by: WANG Cong &lt;wangcong@zeuux.org&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>arch/um/kernel/irq.c: clean up some functions</title>
<updated>2008-07-24T17:47:24Z</updated>
<author>
<name>WANG Cong</name>
<email>xiyou.wangcong@gmail.com</email>
</author>
<published>2008-07-24T04:28:47Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=4c182ae7810f3fe444e666f3f78c209a7c116fdf'/>
<id>urn:sha1:4c182ae7810f3fe444e666f3f78c209a7c116fdf</id>
<content type='text'>
Make activate_fd() and free_irq_by_irq_and_dev() static.  Remove
init_aio_irq() since it has no users.

Cc: Jeff Dike &lt;jdike@addtoit.com&gt;
Signed-off-by: WANG Cong &lt;wangcong@zeuux.org&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>Merge branch 'linus' into timers/nohz</title>
<updated>2008-07-18T17:53:16Z</updated>
<author>
<name>Ingo Molnar</name>
<email>mingo@elte.hu</email>
</author>
<published>2008-07-18T17:53:16Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=9b610fda0df5d0f0b0c64242e37441ad1b384aac'/>
<id>urn:sha1:9b610fda0df5d0f0b0c64242e37441ad1b384aac</id>
<content type='text'>
</content>
</entry>
<entry>
<title>nohz: prevent tick stop outside of the idle loop</title>
<updated>2008-07-18T16:10:28Z</updated>
<author>
<name>Thomas Gleixner</name>
<email>tglx@linutronix.de</email>
</author>
<published>2008-07-18T15:27:28Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=b8f8c3cf0a4ac0632ec3f0e15e9dc0c29de917af'/>
<id>urn:sha1:b8f8c3cf0a4ac0632ec3f0e15e9dc0c29de917af</id>
<content type='text'>
Jack Ren and Eric Miao tracked down the following long standing
problem in the NOHZ code:

	scheduler switch to idle task
	enable interrupts

Window starts here

	----&gt; interrupt happens (does not set NEED_RESCHED)
	      	irq_exit() stops the tick

	----&gt; interrupt happens (does set NEED_RESCHED)

	return from schedule()
	
	cpu_idle(): preempt_disable();

Window ends here

The interrupts can happen at any point inside the race window. The
first interrupt stops the tick, the second one causes the scheduler to
rerun and switch away from idle again and we end up with the tick
disabled.

The fact that it needs two interrupts where the first one does not set
NEED_RESCHED and the second one does made the bug obscure and extremly
hard to reproduce and analyse. Kudos to Jack and Eric.

Solution: Limit the NOHZ functionality to the idle loop to make sure
that we can not run into such a situation ever again.

cpu_idle()
{
	preempt_disable();

	while(1) {
		 tick_nohz_stop_sched_tick(1); &lt;- tell NOHZ code that we
		 			          are in the idle loop

		 while (!need_resched())
		       halt();

		 tick_nohz_restart_sched_tick(); &lt;- disables NOHZ mode
		 preempt_enable_no_resched();
		 schedule();
		 preempt_disable();
	}
}

In hindsight we should have done this forever, but ... 

/me grabs a large brown paperbag.

Debugged-by: Jack Ren &lt;jack.ren@marvell.com&gt;, 
Debugged-by: eric miao &lt;eric.y.miao@gmail.com&gt;
Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;

</content>
</entry>
<entry>
<title>smp_call_function: get rid of the unused nonatomic/retry argument</title>
<updated>2008-06-26T09:24:35Z</updated>
<author>
<name>Jens Axboe</name>
<email>jens.axboe@oracle.com</email>
</author>
<published>2008-06-06T09:18:06Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=8691e5a8f691cc2a4fda0651e8d307aaba0e7d68'/>
<id>urn:sha1:8691e5a8f691cc2a4fda0651e8d307aaba0e7d68</id>
<content type='text'>
It's never used and the comments refer to nonatomic and retry
interchangably. So get rid of it.

Acked-by: Jeremy Fitzhardinge &lt;jeremy.fitzhardinge@citrix.com&gt;
Signed-off-by: Jens Axboe &lt;jens.axboe@oracle.com&gt;
</content>
</entry>
<entry>
<title>uml: deal with inaccessible address space start</title>
<updated>2008-06-06T18:29:10Z</updated>
<author>
<name>Tom Spink</name>
<email>tspink@gmail.com</email>
</author>
<published>2008-06-06T05:46:12Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=40fb16a360d9c6459afee91dc793c1e3374feb94'/>
<id>urn:sha1:40fb16a360d9c6459afee91dc793c1e3374feb94</id>
<content type='text'>
This patch makes os_get_task_size locate the bottom of the address space,
as well as the top.  This is for systems which put a lower limit on mmap
addresses.  It works by manually scanning pages from zero onwards until a
valid page is found.

Because the bottom of the address space may not be zero, it's not
sufficient to assume the top of the address space is the size of the
address space.  The size is the difference between the top address and
bottom address.

[jdike@addtoit.com: changed the name to reflect that this function is
supposed to return the top of the process address space, not its size and
changed the return value to reflect that.  Also some minor formatting
changes]
Signed-off-by: Tom Spink &lt;tspink@gmail.com&gt;
Signed-off-by: Jeff Dike &lt;jdike@linux.intel.com&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>uml: add missing exports for UML_RANDOM=m</title>
<updated>2008-05-21T23:55:58Z</updated>
<author>
<name>Al Viro</name>
<email>viro@ftp.linux.org.uk</email>
</author>
<published>2008-05-21T05:32:11Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=d347926a7ef9fa1334894a0531aa0c5f8a1ddeae'/>
<id>urn:sha1:d347926a7ef9fa1334894a0531aa0c5f8a1ddeae</id>
<content type='text'>
Signed-off-by: Al Viro &lt;viro@zeniv.linux.org.uk&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
</feed>
