[linux-mm-cc] Problems with ccache

Nitin Gupta nitingupta.mail at gmail.com
Mon Sep 11 10:28:30 EDT 2006


Hi All,

Some project news...

-- Major cleanups done and >1KLOC removed! and bug fixes (major fix: page-cache
 compression stopped once max_fs_backed_cc_size limit was reached for first
time). This new patch posted as: patch-ccache-alpha-006-2.6.18-rc6-git3.

http://prdownloads.sourceforge.net/linuxcompressed/patch-ccache-alpha-006-2.6.18-rc6-git3?download

-- Also done tests with this new patch on (virtual) SMP (2-x86) and this
revealed locking problems in find_get_pages() and friends (though locking in
find_get_page() looks fine). Though I now know races that exist in this
function (truncate happens during we release tree_lock) but have no immediate
solution to the problem and working to get it right :)

-----------------------------------------------------

Here's BUG I get during tests:

 BUG: unable to handle kernel NULL pointer dereference at virtual address
00000000
  printing eip:
 c014aa1e
 *pde = 04e3c067
 *pte = 00000000
 Oops: 0000 [#1]
 PREEMPT SMP
 Modules linked in: floppy nvram usblp uhci_hcd sg pcnet32 pcspkr mii BusLogic
sd_mod scsi_mod
 CPU:    1
 EIP:    0060:[<c014aa1e>]    Not tainted VLI
 EFLAGS: 00210097   (2.6.18-rc6-cc #120)
 EIP is at find_get_pages+0x58/0xf2
 eax: 00000000   ebx: c7c91ea0   ecx: c7fc0a90   edx: 00000000
 esi: c7fc0de0   edi: 00000008   ebp: c7c91e68   esp: c7c91e44
 ds: 007b   es: 007b   ss: 0068
 Process kswapd0 (pid: 94, ti=c7c90000 task=c7fc0a90 task.ti=c7c90000)
 Stack: c02fc633 c02e2f89 80010008 c4523dc0 c4523c00 00000001 00000000 c7c91e94
        00000000 c7c91e7c c014f53b c7c91e9c 00000080 c4523c90 c7c91c36 c014fd4f
        0000000e ffffffff c4523db0 00000000 00000000 00000000 c1088f00 00000000
 Call Trace:
  [<c014f53b>] pagevec_lookup+0x1e/0x27
  [<c014fd4f>] isolate_lru_pages+0x1f/0xce
 DWARF2 unwinder stuck at isolate_lru_pages+0x1f/0xce
 Leftover inexact backtrace:
  [<c01040a1>] show_stack_log_lvl+0xa6/0xcb
  [<c0104294>] show_registers+0x1ce/0x259
  [<c0104450>] die+0x131/0x2e7
  [<c02dd75b>] do_page_fault+0x1fb/0x5f0
  [<c01039d9>] error_code+0x39/0x40
  [<c014f53b>] pagevec_lookup+0x1e/0x27
  [<c014fd4f>] isolate_lru_pages+0x1f/0xce
  [<00010000>] 0x10000
 Code: 0f 09 00 89 45 f0 85 c0 0f 84 9c 00 00 00 89 fb 31 ff eb 0f 83 c7 01 83
c3 04 39 7d f0 0f 84 87 00 00 00 8b 33 8b 06 89 03 89 c2 <8b> 00 f6 c4 40 0f 85
87 00 00 00 f0 ff 42 04 8b 13 8b 02 a9 00

-----------------

Please mail any solution/comment you have. Happy Hacking! :)

Cheers,
Nitin


More information about the linux-mm-cc mailing list