Re: kernel BUGs when removing largish files with the SLOB allocator

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Sep 12, 2006 at 09:56:46PM +0100, David Howells wrote:
> Matt Mackall <[email protected]> wrote:
> 
> > > > You just broke the bit that shrinks the arena.
> > > 
> > > How?  This is only called once when things are being initialised.  There can
> > > be no SLOB objects allocated prior to that point.
> > 
> > It's on a timer.
> 
> So what then?  The timer is still initialised:
> 
> 	void kmem_cache_init(void)
> 	{
> 	+#if 0
> 		void *p = slob_alloc(PAGE_SIZE, 0, PAGE_SIZE-1);
> 
> 		if (p)
> 			free_page((unsigned long)p);
> 	+#endif
> 
> 		mod_timer(&slob_timer, jiffies + HZ);
> 	}

"allocate a page from the slob arena"
"if successful, release it to the page allocator"
"re-arm timer"

The only tricky part is the timer points back to _this very function_.

-- 
Mathematics is the supreme nostalgia of our time.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux