All of lore.kernel.org
 help / color / mirror / Atom feed
* [linux-lvm] linux-2.6.0 + reiser4 oops
@ 2004-01-16 20:45 ` markw
  0 siblings, 0 replies; 9+ messages in thread
From: markw @ 2004-01-16 15:46 UTC (permalink / raw)
  To: reiserfs-list; +Cc: linux-lvm

I was testing our DBT-2 workload on linux-2.6.0 with LVM2 and reiser4
and got the following oops when I attempted to create a database with
PostgreSQL.  Let me know if I can provide any additional information:

Unable to handle kernel NULL pointer dereference at virtual address 00000000
 printing eip:                                                       
c014c607      
*pde = 00104001
*pte = 00000000
Oops: 0000 [#1]
CPU:    7      
EIP:    0060:[<c014c607>]    Not tainted
EFLAGS: 00010086                        
EIP is at page_address+0x17/0xd0
eax: 00000000   ebx: 00000000   ecx: ea5c58e0   edx: ea21bf20
esi: f69df200   edi: 00000000   ebp: 00000001   esp: f59abb84
ds: 007b   es: 007b   ss: 0068                               
Process ktxnmgrd:run (pid: 16798, threadinfo=f59aa000 task=f5983960)
Stack: 00000001 e8d77260 f69df200 00000000 00000001 c027fed6 00000000 ea5c58e0 
       00000020 00000000 00002980 00000000 00000000 00000008 00000020 e8d77260 
       f69df200 00000020 ea5c5be0 00000020 c02803ff f69df200 ea5c58e0 f7fc7260 
Call Trace:                                                                    
 [<c027fed6>] __make_request+0x226/0x5e0
 [<c02803ff>] generic_make_request+0x16f/0x1f0
 [<c02f303d>] __map_bio+0x3d/0x120            
 [<c02f32f6>] __clone_and_map+0xc6/0x310
 [<c011fae0>] autoremove_wake_function+0x0/0x50
 [<c02f35c8>] __split_bio+0x88/0x100           
 [<c022000c>] try_by_label+0x2c/0x40
 [<c02f3703>] dm_request+0xc3/0xe0  
 [<c02803ff>] generic_make_request+0x16f/0x1f0
 [<c0165807>] bio_alloc+0xd7/0x1c0            
 [<c02804d4>] submit_bio+0x54/0xa0
 [<c01ece88>] jnode_extent_write+0x3c8/0x430
 [<c01ed157>] alloc_wandered_blocks+0x77/0xc0
 [<c01ed5e2>] reiser4_write_logs+0x1b2/0x300 
 [<c01e464d>] commit_current_atom+0x17d/0x260
 [<c01e50bd>] try_commit_txnh+0xed/0x1b0     
 [<c01e51b8>] commit_txnh+0x38/0xd0     
 [<c011f651>] .text.lock.sched+0x10f/0x12e
 [<c01e385f>] txn_end+0x3f/0x50           
 [<c01e4b57>] commit_some_atoms+0x187/0x220
 [<c01f38f6>] scan_mgr+0x36/0x57           
 [<c01f3528>] ktxnmgrd+0x1a8/0x290
 [<c01f3380>] ktxnmgrd+0x0/0x290  
 [<c01072e9>] kernel_thread_helper+0x5/0xc
                                          
Code: 8b 03 a9 00 01 00 00 75 30 8b 0d 8c 33 4a c0 29 cb c1 fb 03 
 <6>note: ktxnmgrd:run[16798] exited with preempt_count 1         
Debug: sleeping function called from invalid context at include/linux/rwsem.h:43
in_atomic():1, irqs_disabled():0                                               
Call Trace:                     
 [<c011f3eb>] __might_sleep+0xab/0xd0
 [<c0122928>] printk+0x178/0x1d0     
 [<c0122ef0>] profile_exit_task+0x20/0x60
 [<c0124a88>] do_exit+0x78/0x4b0         
 [<c010a8bc>] die+0xfc/0x100    
 [<c011a4a9>] do_page_fault+0x1f9/0x58f
 [<c0143180>] __alloc_pages+0xc0/0x370 
 [<c0141c61>] mempool_alloc+0x91/0x190
 [<c011fae0>] autoremove_wake_function+0x0/0x50
 [<c0141c61>] mempool_alloc+0x91/0x190         
 [<c011fae0>] autoremove_wake_function+0x0/0x50
 [<c011fae0>] autoremove_wake_function+0x0/0x50
 [<c011a2b0>] do_page_fault+0x0/0x58f          
 [<c010a205>] error_code+0x2d/0x38   
 [<c014c607>] page_address+0x17/0xd0
 [<c027fed6>] __make_request+0x226/0x5e0
 [<c02803ff>] generic_make_request+0x16f/0x1f0
 [<c02f303d>] __map_bio+0x3d/0x120            
 [<c02f32f6>] __clone_and_map+0xc6/0x310
 [<c011fae0>] autoremove_wake_function+0x0/0x50
 [<c02f35c8>] __split_bio+0x88/0x100           
 [<c022000c>] try_by_label+0x2c/0x40
 [<c02f3703>] dm_request+0xc3/0xe0  
 [<c02803ff>] generic_make_request+0x16f/0x1f0
 [<c0165807>] bio_alloc+0xd7/0x1c0            
 [<c02804d4>] submit_bio+0x54/0xa0
 [<c01ece88>] jnode_extent_write+0x3c8/0x430
 [<c01ed157>] alloc_wandered_blocks+0x77/0xc0
 [<c01ed5e2>] reiser4_write_logs+0x1b2/0x300 
 [<c01e464d>] commit_current_atom+0x17d/0x260
 [<c01e50bd>] try_commit_txnh+0xed/0x1b0     
 [<c01e51b8>] commit_txnh+0x38/0xd0     
 [<c011f651>] .text.lock.sched+0x10f/0x12e
 [<c01e385f>] txn_end+0x3f/0x50           
 [<c01e4b57>] commit_some_atoms+0x187/0x220
 [<c01f38f6>] scan_mgr+0x36/0x57           
 [<c01f3528>] ktxnmgrd+0x1a8/0x290
 [<c01f3380>] ktxnmgrd+0x0/0x290  
 [<c01072e9>] kernel_thread_helper+0x5/0xc


-- 
Mark Wong - - markw@osdl.org
Open Source Development Lab Inc - A non-profit corporation
12725 SW Millikan Way - Suite 400 - Beaverton, OR 97005
(503) 626-2455 x 32 (office)
(503) 626-2436      (fax)
http://developer.osdl.org/markw/

^ permalink raw reply	[flat|nested] 9+ messages in thread

* [linux-lvm] Re: linux-2.6.0 + reiser4 oops
  2004-01-16 20:45 ` markw
@ 2004-01-16 20:50   ` Hans Reiser
  -1 siblings, 0 replies; 9+ messages in thread
From: Hans Reiser @ 2004-01-16 17:04 UTC (permalink / raw)
  To: markw; +Cc: reiserfs-list, linux-lvm, vs

Thanks Mark, the weekend has already started here in Moscow, but 
Vladimir will look into this on Monday.  Thanks for the report.

Hans

markw@osdl.org wrote:

>I was testing our DBT-2 workload on linux-2.6.0 with LVM2 and reiser4
>and got the following oops when I attempted to create a database with
>PostgreSQL.  Let me know if I can provide any additional information:
>
>Unable to handle kernel NULL pointer dereference at virtual address 00000000
> printing eip:                                                       
>c014c607      
>*pde = 00104001
>*pte = 00000000
>Oops: 0000 [#1]
>CPU:    7      
>EIP:    0060:[<c014c607>]    Not tainted
>EFLAGS: 00010086                        
>EIP is at page_address+0x17/0xd0
>eax: 00000000   ebx: 00000000   ecx: ea5c58e0   edx: ea21bf20
>esi: f69df200   edi: 00000000   ebp: 00000001   esp: f59abb84
>ds: 007b   es: 007b   ss: 0068                               
>Process ktxnmgrd:run (pid: 16798, threadinfo=f59aa000 task=f5983960)
>Stack: 00000001 e8d77260 f69df200 00000000 00000001 c027fed6 00000000 ea5c58e0 
>       00000020 00000000 00002980 00000000 00000000 00000008 00000020 e8d77260 
>       f69df200 00000020 ea5c5be0 00000020 c02803ff f69df200 ea5c58e0 f7fc7260 
>Call Trace:                                                                    
> [<c027fed6>] __make_request+0x226/0x5e0
> [<c02803ff>] generic_make_request+0x16f/0x1f0
> [<c02f303d>] __map_bio+0x3d/0x120            
> [<c02f32f6>] __clone_and_map+0xc6/0x310
> [<c011fae0>] autoremove_wake_function+0x0/0x50
> [<c02f35c8>] __split_bio+0x88/0x100           
> [<c022000c>] try_by_label+0x2c/0x40
> [<c02f3703>] dm_request+0xc3/0xe0  
> [<c02803ff>] generic_make_request+0x16f/0x1f0
> [<c0165807>] bio_alloc+0xd7/0x1c0            
> [<c02804d4>] submit_bio+0x54/0xa0
> [<c01ece88>] jnode_extent_write+0x3c8/0x430
> [<c01ed157>] alloc_wandered_blocks+0x77/0xc0
> [<c01ed5e2>] reiser4_write_logs+0x1b2/0x300 
> [<c01e464d>] commit_current_atom+0x17d/0x260
> [<c01e50bd>] try_commit_txnh+0xed/0x1b0     
> [<c01e51b8>] commit_txnh+0x38/0xd0     
> [<c011f651>] .text.lock.sched+0x10f/0x12e
> [<c01e385f>] txn_end+0x3f/0x50           
> [<c01e4b57>] commit_some_atoms+0x187/0x220
> [<c01f38f6>] scan_mgr+0x36/0x57           
> [<c01f3528>] ktxnmgrd+0x1a8/0x290
> [<c01f3380>] ktxnmgrd+0x0/0x290  
> [<c01072e9>] kernel_thread_helper+0x5/0xc
>                                          
>Code: 8b 03 a9 00 01 00 00 75 30 8b 0d 8c 33 4a c0 29 cb c1 fb 03 
> <6>note: ktxnmgrd:run[16798] exited with preempt_count 1         
>Debug: sleeping function called from invalid context at include/linux/rwsem.h:43
>in_atomic():1, irqs_disabled():0                                               
>Call Trace:                     
> [<c011f3eb>] __might_sleep+0xab/0xd0
> [<c0122928>] printk+0x178/0x1d0     
> [<c0122ef0>] profile_exit_task+0x20/0x60
> [<c0124a88>] do_exit+0x78/0x4b0         
> [<c010a8bc>] die+0xfc/0x100    
> [<c011a4a9>] do_page_fault+0x1f9/0x58f
> [<c0143180>] __alloc_pages+0xc0/0x370 
> [<c0141c61>] mempool_alloc+0x91/0x190
> [<c011fae0>] autoremove_wake_function+0x0/0x50
> [<c0141c61>] mempool_alloc+0x91/0x190         
> [<c011fae0>] autoremove_wake_function+0x0/0x50
> [<c011fae0>] autoremove_wake_function+0x0/0x50
> [<c011a2b0>] do_page_fault+0x0/0x58f          
> [<c010a205>] error_code+0x2d/0x38   
> [<c014c607>] page_address+0x17/0xd0
> [<c027fed6>] __make_request+0x226/0x5e0
> [<c02803ff>] generic_make_request+0x16f/0x1f0
> [<c02f303d>] __map_bio+0x3d/0x120            
> [<c02f32f6>] __clone_and_map+0xc6/0x310
> [<c011fae0>] autoremove_wake_function+0x0/0x50
> [<c02f35c8>] __split_bio+0x88/0x100           
> [<c022000c>] try_by_label+0x2c/0x40
> [<c02f3703>] dm_request+0xc3/0xe0  
> [<c02803ff>] generic_make_request+0x16f/0x1f0
> [<c0165807>] bio_alloc+0xd7/0x1c0            
> [<c02804d4>] submit_bio+0x54/0xa0
> [<c01ece88>] jnode_extent_write+0x3c8/0x430
> [<c01ed157>] alloc_wandered_blocks+0x77/0xc0
> [<c01ed5e2>] reiser4_write_logs+0x1b2/0x300 
> [<c01e464d>] commit_current_atom+0x17d/0x260
> [<c01e50bd>] try_commit_txnh+0xed/0x1b0     
> [<c01e51b8>] commit_txnh+0x38/0xd0     
> [<c011f651>] .text.lock.sched+0x10f/0x12e
> [<c01e385f>] txn_end+0x3f/0x50           
> [<c01e4b57>] commit_some_atoms+0x187/0x220
> [<c01f38f6>] scan_mgr+0x36/0x57           
> [<c01f3528>] ktxnmgrd+0x1a8/0x290
> [<c01f3380>] ktxnmgrd+0x0/0x290  
> [<c01072e9>] kernel_thread_helper+0x5/0xc
>
>
>  
>


-- 
Hans

^ permalink raw reply	[flat|nested] 9+ messages in thread

* linux-2.6.0 + reiser4 oops
@ 2004-01-16 20:45 ` markw
  0 siblings, 0 replies; 9+ messages in thread
From: markw @ 2004-01-16 20:45 UTC (permalink / raw)
  To: reiserfs-list; +Cc: linux-lvm

I was testing our DBT-2 workload on linux-2.6.0 with LVM2 and reiser4
and got the following oops when I attempted to create a database with
PostgreSQL.  Let me know if I can provide any additional information:

Unable to handle kernel NULL pointer dereference at virtual address 00000000
 printing eip:                                                       
c014c607      
*pde = 00104001
*pte = 00000000
Oops: 0000 [#1]
CPU:    7      
EIP:    0060:[<c014c607>]    Not tainted
EFLAGS: 00010086                        
EIP is at page_address+0x17/0xd0
eax: 00000000   ebx: 00000000   ecx: ea5c58e0   edx: ea21bf20
esi: f69df200   edi: 00000000   ebp: 00000001   esp: f59abb84
ds: 007b   es: 007b   ss: 0068                               
Process ktxnmgrd:run (pid: 16798, threadinfo=f59aa000 task=f5983960)
Stack: 00000001 e8d77260 f69df200 00000000 00000001 c027fed6 00000000 ea5c58e0 
       00000020 00000000 00002980 00000000 00000000 00000008 00000020 e8d77260 
       f69df200 00000020 ea5c5be0 00000020 c02803ff f69df200 ea5c58e0 f7fc7260 
Call Trace:                                                                    
 [<c027fed6>] __make_request+0x226/0x5e0
 [<c02803ff>] generic_make_request+0x16f/0x1f0
 [<c02f303d>] __map_bio+0x3d/0x120            
 [<c02f32f6>] __clone_and_map+0xc6/0x310
 [<c011fae0>] autoremove_wake_function+0x0/0x50
 [<c02f35c8>] __split_bio+0x88/0x100           
 [<c022000c>] try_by_label+0x2c/0x40
 [<c02f3703>] dm_request+0xc3/0xe0  
 [<c02803ff>] generic_make_request+0x16f/0x1f0
 [<c0165807>] bio_alloc+0xd7/0x1c0            
 [<c02804d4>] submit_bio+0x54/0xa0
 [<c01ece88>] jnode_extent_write+0x3c8/0x430
 [<c01ed157>] alloc_wandered_blocks+0x77/0xc0
 [<c01ed5e2>] reiser4_write_logs+0x1b2/0x300 
 [<c01e464d>] commit_current_atom+0x17d/0x260
 [<c01e50bd>] try_commit_txnh+0xed/0x1b0     
 [<c01e51b8>] commit_txnh+0x38/0xd0     
 [<c011f651>] .text.lock.sched+0x10f/0x12e
 [<c01e385f>] txn_end+0x3f/0x50           
 [<c01e4b57>] commit_some_atoms+0x187/0x220
 [<c01f38f6>] scan_mgr+0x36/0x57           
 [<c01f3528>] ktxnmgrd+0x1a8/0x290
 [<c01f3380>] ktxnmgrd+0x0/0x290  
 [<c01072e9>] kernel_thread_helper+0x5/0xc
                                          
Code: 8b 03 a9 00 01 00 00 75 30 8b 0d 8c 33 4a c0 29 cb c1 fb 03 
 <6>note: ktxnmgrd:run[16798] exited with preempt_count 1         
Debug: sleeping function called from invalid context at include/linux/rwsem.h:43
in_atomic():1, irqs_disabled():0                                               
Call Trace:                     
 [<c011f3eb>] __might_sleep+0xab/0xd0
 [<c0122928>] printk+0x178/0x1d0     
 [<c0122ef0>] profile_exit_task+0x20/0x60
 [<c0124a88>] do_exit+0x78/0x4b0         
 [<c010a8bc>] die+0xfc/0x100    
 [<c011a4a9>] do_page_fault+0x1f9/0x58f
 [<c0143180>] __alloc_pages+0xc0/0x370 
 [<c0141c61>] mempool_alloc+0x91/0x190
 [<c011fae0>] autoremove_wake_function+0x0/0x50
 [<c0141c61>] mempool_alloc+0x91/0x190         
 [<c011fae0>] autoremove_wake_function+0x0/0x50
 [<c011fae0>] autoremove_wake_function+0x0/0x50
 [<c011a2b0>] do_page_fault+0x0/0x58f          
 [<c010a205>] error_code+0x2d/0x38   
 [<c014c607>] page_address+0x17/0xd0
 [<c027fed6>] __make_request+0x226/0x5e0
 [<c02803ff>] generic_make_request+0x16f/0x1f0
 [<c02f303d>] __map_bio+0x3d/0x120            
 [<c02f32f6>] __clone_and_map+0xc6/0x310
 [<c011fae0>] autoremove_wake_function+0x0/0x50
 [<c02f35c8>] __split_bio+0x88/0x100           
 [<c022000c>] try_by_label+0x2c/0x40
 [<c02f3703>] dm_request+0xc3/0xe0  
 [<c02803ff>] generic_make_request+0x16f/0x1f0
 [<c0165807>] bio_alloc+0xd7/0x1c0            
 [<c02804d4>] submit_bio+0x54/0xa0
 [<c01ece88>] jnode_extent_write+0x3c8/0x430
 [<c01ed157>] alloc_wandered_blocks+0x77/0xc0
 [<c01ed5e2>] reiser4_write_logs+0x1b2/0x300 
 [<c01e464d>] commit_current_atom+0x17d/0x260
 [<c01e50bd>] try_commit_txnh+0xed/0x1b0     
 [<c01e51b8>] commit_txnh+0x38/0xd0     
 [<c011f651>] .text.lock.sched+0x10f/0x12e
 [<c01e385f>] txn_end+0x3f/0x50           
 [<c01e4b57>] commit_some_atoms+0x187/0x220
 [<c01f38f6>] scan_mgr+0x36/0x57           
 [<c01f3528>] ktxnmgrd+0x1a8/0x290
 [<c01f3380>] ktxnmgrd+0x0/0x290  
 [<c01072e9>] kernel_thread_helper+0x5/0xc


-- 
Mark Wong - - markw@osdl.org
Open Source Development Lab Inc - A non-profit corporation
12725 SW Millikan Way - Suite 400 - Beaverton, OR 97005
(503) 626-2455 x 32 (office)
(503) 626-2436      (fax)
http://developer.osdl.org/markw/

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: linux-2.6.0 + reiser4 oops
@ 2004-01-16 20:50   ` Hans Reiser
  0 siblings, 0 replies; 9+ messages in thread
From: Hans Reiser @ 2004-01-16 20:50 UTC (permalink / raw)
  To: markw; +Cc: reiserfs-list, linux-lvm, vs

Thanks Mark, the weekend has already started here in Moscow, but 
Vladimir will look into this on Monday.  Thanks for the report.

Hans

markw@osdl.org wrote:

>I was testing our DBT-2 workload on linux-2.6.0 with LVM2 and reiser4
>and got the following oops when I attempted to create a database with
>PostgreSQL.  Let me know if I can provide any additional information:
>
>Unable to handle kernel NULL pointer dereference at virtual address 00000000
> printing eip:                                                       
>c014c607      
>*pde = 00104001
>*pte = 00000000
>Oops: 0000 [#1]
>CPU:    7      
>EIP:    0060:[<c014c607>]    Not tainted
>EFLAGS: 00010086                        
>EIP is at page_address+0x17/0xd0
>eax: 00000000   ebx: 00000000   ecx: ea5c58e0   edx: ea21bf20
>esi: f69df200   edi: 00000000   ebp: 00000001   esp: f59abb84
>ds: 007b   es: 007b   ss: 0068                               
>Process ktxnmgrd:run (pid: 16798, threadinfo=f59aa000 task=f5983960)
>Stack: 00000001 e8d77260 f69df200 00000000 00000001 c027fed6 00000000 ea5c58e0 
>       00000020 00000000 00002980 00000000 00000000 00000008 00000020 e8d77260 
>       f69df200 00000020 ea5c5be0 00000020 c02803ff f69df200 ea5c58e0 f7fc7260 
>Call Trace:                                                                    
> [<c027fed6>] __make_request+0x226/0x5e0
> [<c02803ff>] generic_make_request+0x16f/0x1f0
> [<c02f303d>] __map_bio+0x3d/0x120            
> [<c02f32f6>] __clone_and_map+0xc6/0x310
> [<c011fae0>] autoremove_wake_function+0x0/0x50
> [<c02f35c8>] __split_bio+0x88/0x100           
> [<c022000c>] try_by_label+0x2c/0x40
> [<c02f3703>] dm_request+0xc3/0xe0  
> [<c02803ff>] generic_make_request+0x16f/0x1f0
> [<c0165807>] bio_alloc+0xd7/0x1c0            
> [<c02804d4>] submit_bio+0x54/0xa0
> [<c01ece88>] jnode_extent_write+0x3c8/0x430
> [<c01ed157>] alloc_wandered_blocks+0x77/0xc0
> [<c01ed5e2>] reiser4_write_logs+0x1b2/0x300 
> [<c01e464d>] commit_current_atom+0x17d/0x260
> [<c01e50bd>] try_commit_txnh+0xed/0x1b0     
> [<c01e51b8>] commit_txnh+0x38/0xd0     
> [<c011f651>] .text.lock.sched+0x10f/0x12e
> [<c01e385f>] txn_end+0x3f/0x50           
> [<c01e4b57>] commit_some_atoms+0x187/0x220
> [<c01f38f6>] scan_mgr+0x36/0x57           
> [<c01f3528>] ktxnmgrd+0x1a8/0x290
> [<c01f3380>] ktxnmgrd+0x0/0x290  
> [<c01072e9>] kernel_thread_helper+0x5/0xc
>                                          
>Code: 8b 03 a9 00 01 00 00 75 30 8b 0d 8c 33 4a c0 29 cb c1 fb 03 
> <6>note: ktxnmgrd:run[16798] exited with preempt_count 1         
>Debug: sleeping function called from invalid context at include/linux/rwsem.h:43
>in_atomic():1, irqs_disabled():0                                               
>Call Trace:                     
> [<c011f3eb>] __might_sleep+0xab/0xd0
> [<c0122928>] printk+0x178/0x1d0     
> [<c0122ef0>] profile_exit_task+0x20/0x60
> [<c0124a88>] do_exit+0x78/0x4b0         
> [<c010a8bc>] die+0xfc/0x100    
> [<c011a4a9>] do_page_fault+0x1f9/0x58f
> [<c0143180>] __alloc_pages+0xc0/0x370 
> [<c0141c61>] mempool_alloc+0x91/0x190
> [<c011fae0>] autoremove_wake_function+0x0/0x50
> [<c0141c61>] mempool_alloc+0x91/0x190         
> [<c011fae0>] autoremove_wake_function+0x0/0x50
> [<c011fae0>] autoremove_wake_function+0x0/0x50
> [<c011a2b0>] do_page_fault+0x0/0x58f          
> [<c010a205>] error_code+0x2d/0x38   
> [<c014c607>] page_address+0x17/0xd0
> [<c027fed6>] __make_request+0x226/0x5e0
> [<c02803ff>] generic_make_request+0x16f/0x1f0
> [<c02f303d>] __map_bio+0x3d/0x120            
> [<c02f32f6>] __clone_and_map+0xc6/0x310
> [<c011fae0>] autoremove_wake_function+0x0/0x50
> [<c02f35c8>] __split_bio+0x88/0x100           
> [<c022000c>] try_by_label+0x2c/0x40
> [<c02f3703>] dm_request+0xc3/0xe0  
> [<c02803ff>] generic_make_request+0x16f/0x1f0
> [<c0165807>] bio_alloc+0xd7/0x1c0            
> [<c02804d4>] submit_bio+0x54/0xa0
> [<c01ece88>] jnode_extent_write+0x3c8/0x430
> [<c01ed157>] alloc_wandered_blocks+0x77/0xc0
> [<c01ed5e2>] reiser4_write_logs+0x1b2/0x300 
> [<c01e464d>] commit_current_atom+0x17d/0x260
> [<c01e50bd>] try_commit_txnh+0xed/0x1b0     
> [<c01e51b8>] commit_txnh+0x38/0xd0     
> [<c011f651>] .text.lock.sched+0x10f/0x12e
> [<c01e385f>] txn_end+0x3f/0x50           
> [<c01e4b57>] commit_some_atoms+0x187/0x220
> [<c01f38f6>] scan_mgr+0x36/0x57           
> [<c01f3528>] ktxnmgrd+0x1a8/0x290
> [<c01f3380>] ktxnmgrd+0x0/0x290  
> [<c01072e9>] kernel_thread_helper+0x5/0xc
>
>
>  
>


-- 
Hans



^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: linux-2.6.0 + reiser4 oops
  2004-01-16 20:45 ` markw
  (?)
  (?)
@ 2004-01-19  9:46 ` Nikita Danilov
  2004-01-19 17:29     ` markw
  -1 siblings, 1 reply; 9+ messages in thread
From: Nikita Danilov @ 2004-01-19  9:46 UTC (permalink / raw)
  To: markw; +Cc: reiserfs-list, linux-lvm

markw@osdl.org writes:
 > I was testing our DBT-2 workload on linux-2.6.0 with LVM2 and reiser4
 > and got the following oops when I attempted to create a database with
 > PostgreSQL.  Let me know if I can provide any additional information:
 > 
 > Unable to handle kernel NULL pointer dereference at virtual address 00000000
 >  printing eip:                                                       
 > c014c607      
 > *pde = 00104001
 > *pte = 00000000
 > Oops: 0000 [#1]

This looks much like another bug report we had for
reiser4-on-top-of-raid0. A fix (tentative) for that was to use
bio_add_page() while constructing bios, and it will be included into
next reiser4 snapshot (that, I hope, will be released
to-day---2004.01.19).

If you are interested, here is the patch (to be applied from fs/reiser4):
----------------------------------------------------------------------
===== page_cache.c 1.265 vs edited =====
--- 1.265/page_cache.c	Wed Dec 24 17:57:42 2003
+++ edited/page_cache.c	Tue Jan 13 15:48:58 2004
@@ -499,17 +499,18 @@
 		assert("nikita-2275", blocknr != (reiser4_block_nr) 0);
 		assert("nikita-2276", !blocknr_is_fake(&blocknr));
 
-		bio->bi_sector = blocknr * (blksz >> 9);
 		bio->bi_bdev = super->s_bdev;
-		bio->bi_io_vec[0].bv_page = page;
-		bio->bi_io_vec[0].bv_len = blksz;
-		bio->bi_io_vec[0].bv_offset = 0;
 
-		bio->bi_vcnt = 1;
-		/* bio -> bi_idx is filled by bio_init() */
-		bio->bi_size = blksz;
+		if (!bio_add_page(bio, page, blksz, 0)) {
+			warning("nikita-3452",
+				"Single page bio cannot be constructed");
+			return ERR_PTR(RETERR(-EINVAL));
+		}
 
-		bio->bi_end_io = (rw == READ) ? end_bio_single_page_read : end_bio_single_page_write;
+		bio->bi_sector = blocknr * (blksz >> 9);
+		/* bio -> bi_idx is filled by bio_init() */
+		bio->bi_end_io = (rw == READ) ?
+			end_bio_single_page_read : end_bio_single_page_write;
 
 		return bio;
 	} else
===== wander.c 1.229 vs edited =====
--- 1.229/wander.c	Tue Jan 13 14:02:11 2004
+++ edited/wander.c	Tue Jan 13 16:18:31 2004
@@ -527,6 +527,26 @@
 	return ret;
 }
 
+static void
+undo_bio(struct bio *bio)
+{
+	int i;
+
+	for (i = 0; i < bio->bi_vcnt; ++i) {
+		struct page *pg;
+		jnode *node;
+
+		pg = bio->bi_io_vec[i].bv_page;
+		ClearPageWriteback(pg);
+		node = jprivate(pg);
+		LOCK_JNODE(node);
+		JF_CLR(node, JNODE_WRITEBACK);
+		JF_SET(node, JNODE_DIRTY);
+		UNLOCK_JNODE(node);
+	}
+	bio_put(bio);
+}
+
 #if REISER4_COPY_ON_CAPTURE
 
 extern spinlock_t scan_lock;
@@ -715,11 +735,7 @@
 	ON_TRACE (TRACE_IO_W, "write of %d blocks starting from %llu\n",
 		  nr, (unsigned long long)block);
 
-#if REISER4_USER_LEVEL_SIMULATION
-	max_blocks = nr;
-#else
 	max_blocks = bdev_get_queue(super->s_bdev)->max_sectors >> (super->s_blocksize_bits - 9);
-#endif
 
 	while (nr > 0) {
 		struct bio *bio;
@@ -731,6 +747,7 @@
 		if (!bio)
 			return RETERR(-ENOMEM);
 
+		bio->bi_bdev = super->s_bdev;
 		for (nr_used = 0, i = 0; i < nr_blocks; i++) {
 			struct page *pg;
 			ON_DEBUG(int jnode_is_releasable(jnode *));
@@ -749,18 +766,27 @@
 			if (!JF_ISSET(cur, JNODE_WRITEBACK)) {
 				assert("zam-912", !JF_ISSET(cur, JNODE_WRITEBACK));
 				assert("nikita-3165", !jnode_is_releasable(cur));
+				UNLOCK_JNODE(cur);
+				if (!bio_add_page(bio,
+						  pg, super->s_blocksize, 0))
+					/*
+					 * underlying device is satiated. Stop
+					 * adding pages to the bio.
+					 */
+					break;
+
+				LOCK_JNODE(cur);
 				JF_SET(cur, JNODE_WRITEBACK);
 				JF_CLR(cur, JNODE_DIRTY);
 				UNLOCK_JNODE(cur);
 
 				SetPageWriteback(pg);
-				
+
 				spin_lock(&pg->mapping->page_lock);
 
-#if REISER4_STATS
-				if (!PageDirty(pg))
+				if (REISER4_STATS && !PageDirty(pg))
 					reiser4_stat_inc(pages_clean);
-#endif
+
 				/* don't check return value: submit page even if
 				   it wasn't dirty. */		
 				test_clear_page_dirty(pg);
@@ -771,10 +797,7 @@
 				spin_unlock(&pg->mapping->page_lock);
 				
 				unlock_page(pg);
-				
-				bio->bi_io_vec[nr_used].bv_page = pg;
-				bio->bi_io_vec[nr_used].bv_len = super->s_blocksize;
-				bio->bi_io_vec[nr_used].bv_offset = 0;
+				nr_used ++;
 			} else {
 				/* jnode being WRITEBACK might be replaced on
 				   ovrwr_nodes list with jnode CC. We just
@@ -790,31 +813,18 @@
 			cur = capture_list_next(cur);
 			if (!capture_list_end(head, cur))
 				JF_SET(cur, JNODE_SCANNED);
-			else {
-				/* end of overwrite list reached */
-				assert("", i == nr_blocks - 1);
-				assert("", nr_used + 1 == nr);
-			}
 			spin_unlock(&scan_lock);
-			nr_used ++;
 		}
 		if (nr_used > 0) {
 			bio->bi_sector = block * (super->s_blocksize >> 9);
-			bio->bi_bdev = super->s_bdev;
-			bio->bi_size = super->s_blocksize * nr_used;
-			bio->bi_vcnt = nr_used;
+			assert("nikita-3455",
+			       bio->bi_size = super->s_blocksize * nr_used);
+			assert("nikita-3456", bio->bi_vcnt == nr_used);
 
 			/* Check if we are allowed to write at all */
-			if ( super->s_flags & MS_RDONLY ) {
-				int i;
-				for ( i = 0; i < nr_used ; i++) {
-					struct page *pg = bio->bi_io_vec[i].bv_page;
-					ClearPageWriteback(pg);
-					JF_CLR((jnode *)pg->private, JNODE_WRITEBACK);
-					JF_SET((jnode *)pg->private, JNODE_DIRTY);
-				}
-				bio_put(bio);
-			} else {
+			if (super->s_flags & MS_RDONLY)
+				undo_bio(bio);
+			else {
 				add_fq_to_bio(fq, bio);
 				reiser4_submit_bio(WRITE, bio);
 			}
@@ -1142,11 +1152,7 @@
 	ON_TRACE (TRACE_IO_W, "write of %d blocks starting from %llu\n",
 		  nr, (unsigned long long)block);
 
-#if REISER4_USER_LEVEL_SIMULATION
-	max_blocks = nr;
-#else
 	max_blocks = bdev_get_queue(super->s_bdev)->max_sectors >> (super->s_blocksize_bits - 9);
-#endif
 
 	while (nr > 0) {
 		struct bio *bio;
@@ -1158,6 +1164,7 @@
 		if (!bio)
 			return RETERR(-ENOMEM);
 
+		bio->bi_bdev = super->s_bdev;
 		for (nr_used = 0, i = 0; i < nr_blocks; i++) {
 			struct page *pg;
 			ON_DEBUG(int jnode_is_releasable(jnode *));
@@ -1169,6 +1176,13 @@
 
 			lock_and_wait_page_writeback(pg);
 
+			if (!bio_add_page(bio, pg, super->s_blocksize, 0))
+				/*
+				 * underlying device is satiated. Stop adding
+				 * pages to the bio.
+				 */
+				break;
+
 			LOCK_JNODE(cur);
 			ON_DEBUG_MODIFY(znode_set_checksum(cur, 1));
 			assert("nikita-3166",
@@ -1183,10 +1197,9 @@
 
 			spin_lock(&pg->mapping->page_lock);
 
-#if REISER4_STATS
-			if (!PageDirty(pg))
+			if (REISER4_STATS && !PageDirty(pg))
 				reiser4_stat_inc(pages_clean);
-#endif
+
 			/* don't check return value: submit page even if it
 			   wasn't dirty. */		
 			test_clear_page_dirty(pg);
@@ -1198,34 +1211,19 @@
 
 			unlock_page(pg);
 
-			bio->bi_io_vec[nr_used].bv_page = pg;
-			bio->bi_io_vec[nr_used].bv_len = super->s_blocksize;
-			bio->bi_io_vec[nr_used].bv_offset = 0;
-
 			cur = capture_list_next(cur);
 			nr_used ++;
 		}
 		if (nr_used > 0) {
 			bio->bi_sector = block * (super->s_blocksize >> 9);
-			bio->bi_bdev = super->s_bdev;
-			bio->bi_size = super->s_blocksize * nr_used;
-			bio->bi_vcnt = nr_used;
+			assert("nikita-3453",
+			       bio->bi_size == super->s_blocksize * nr_used);
+			assert("nikita-3454", bio->bi_vcnt == nr_used);
 
 			/* Check if we are allowed to write at all */
-			if ( super->s_flags & MS_RDONLY ) {
-				int i;
-				for ( i = 0; i < nr_used ; i++) {
-					struct page *pg = bio->bi_io_vec[i].bv_page;
-					struct jnode *j;
-
-					j = jprivate(pg);
-					ClearPageWriteback(pg);
-					JF_CLR(j, JNODE_WRITEBACK);
-					ON_DEBUG_MODIFY(znode_set_checksum(j, 1));
-					JF_SET(j, JNODE_DIRTY);
-				}
-				bio_put(bio);
-			} else {
+			if (super->s_flags & MS_RDONLY)
+				undo_bio(bio);
+			else {
 				add_fq_to_bio(fq, bio);
 				reiser4_submit_bio(WRITE, bio);
 			}
----------------------------------------------------------------------

 > CPU:    7      
 > EIP:    0060:[<c014c607>]    Not tainted
 > EFLAGS: 00010086                        

Nikita.

^ permalink raw reply	[flat|nested] 9+ messages in thread

* [linux-lvm] Re: linux-2.6.0 + reiser4 oops
  2004-01-19  9:46 ` Nikita Danilov
@ 2004-01-19 17:29     ` markw
  0 siblings, 0 replies; 9+ messages in thread
From: markw @ 2004-01-19 12:30 UTC (permalink / raw)
  To: Nikita; +Cc: reiserfs-list, linux-lvm

On 19 Jan, Nikita Danilov wrote:
> markw@osdl.org writes:
>  > I was testing our DBT-2 workload on linux-2.6.0 with LVM2 and reiser4
>  > and got the following oops when I attempted to create a database with
>  > PostgreSQL.  Let me know if I can provide any additional information:
>  > 
>  > Unable to handle kernel NULL pointer dereference at virtual address 00000000
>  >  printing eip:                                                       
>  > c014c607      
>  > *pde = 00104001
>  > *pte = 00000000
>  > Oops: 0000 [#1]
> 
> This looks much like another bug report we had for
> reiser4-on-top-of-raid0. A fix (tentative) for that was to use
> bio_add_page() while constructing bios, and it will be included into
> next reiser4 snapshot (that, I hope, will be released
> to-day---2004.01.19).

Hi Nikita,

I ran the 2004.01.19 snapshot against 2.6.1 and now I get the following
error when I attempt to mount the reiser4 parition:

reiser4[mount(17176)]: _init_read_super (fs/reiser4/init_super.c:166)[nikita-2608]:
WARNING: Wrong master super block magic.

Thanks,
Mark

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: linux-2.6.0 + reiser4 oops
@ 2004-01-19 17:29     ` markw
  0 siblings, 0 replies; 9+ messages in thread
From: markw @ 2004-01-19 17:29 UTC (permalink / raw)
  To: Nikita; +Cc: reiserfs-list, linux-lvm

On 19 Jan, Nikita Danilov wrote:
> markw@osdl.org writes:
>  > I was testing our DBT-2 workload on linux-2.6.0 with LVM2 and reiser4
>  > and got the following oops when I attempted to create a database with
>  > PostgreSQL.  Let me know if I can provide any additional information:
>  > 
>  > Unable to handle kernel NULL pointer dereference at virtual address 00000000
>  >  printing eip:                                                       
>  > c014c607      
>  > *pde = 00104001
>  > *pte = 00000000
>  > Oops: 0000 [#1]
> 
> This looks much like another bug report we had for
> reiser4-on-top-of-raid0. A fix (tentative) for that was to use
> bio_add_page() while constructing bios, and it will be included into
> next reiser4 snapshot (that, I hope, will be released
> to-day---2004.01.19).

Hi Nikita,

I ran the 2004.01.19 snapshot against 2.6.1 and now I get the following
error when I attempt to mount the reiser4 parition:

reiser4[mount(17176)]: _init_read_super (fs/reiser4/init_super.c:166)[nikita-2608]:
WARNING: Wrong master super block magic.

Thanks,
Mark

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: linux-2.6.0 + reiser4 oops
  2004-01-19 17:29     ` markw
@ 2004-01-20  8:42       ` Nikita Danilov
  -1 siblings, 0 replies; 9+ messages in thread
From: Nikita Danilov @ 2004-01-19 17:35 UTC (permalink / raw)
  To: markw; +Cc: reiserfs-list, linux-lvm

markw@osdl.org writes:
 > On 19 Jan, Nikita Danilov wrote:
 > > markw@osdl.org writes:
 > >  > I was testing our DBT-2 workload on linux-2.6.0 with LVM2 and reiser4
 > >  > and got the following oops when I attempted to create a database with
 > >  > PostgreSQL.  Let me know if I can provide any additional information:
 > >  > 
 > >  > Unable to handle kernel NULL pointer dereference at virtual address 00000000
 > >  >  printing eip:                                                       
 > >  > c014c607      
 > >  > *pde = 00104001
 > >  > *pte = 00000000
 > >  > Oops: 0000 [#1]
 > > 
 > > This looks much like another bug report we had for
 > > reiser4-on-top-of-raid0. A fix (tentative) for that was to use
 > > bio_add_page() while constructing bios, and it will be included into
 > > next reiser4 snapshot (that, I hope, will be released
 > > to-day---2004.01.19).
 > 
 > Hi Nikita,
 > 
 > I ran the 2004.01.19 snapshot against 2.6.1 and now I get the following
 > error when I attempt to mount the reiser4 parition:
 > 
 > reiser4[mount(17176)]: _init_read_super (fs/reiser4/init_super.c:166)[nikita-2608]:
 > WARNING: Wrong master super block magic.

I am afraid, you have to re-create reiser4 file systems with new
progs. It was decided that we should change super block magic to be more
"descriptive".

By the way, it turned out, that 2004.01.19 snapshot contained a bug, so
new snapshot will be released to-night.

 > Thanks,
 > Mark

Nikita.

^ permalink raw reply	[flat|nested] 9+ messages in thread

* [linux-lvm] Re: linux-2.6.0 + reiser4 oops
@ 2004-01-20  8:42       ` Nikita Danilov
  0 siblings, 0 replies; 9+ messages in thread
From: Nikita Danilov @ 2004-01-20  8:42 UTC (permalink / raw)
  To: markw; +Cc: reiserfs-list, linux-lvm

markw@osdl.org writes:
 > On 19 Jan, Nikita Danilov wrote:
 > > markw@osdl.org writes:
 > >  > I was testing our DBT-2 workload on linux-2.6.0 with LVM2 and reiser4
 > >  > and got the following oops when I attempted to create a database with
 > >  > PostgreSQL.  Let me know if I can provide any additional information:
 > >  > 
 > >  > Unable to handle kernel NULL pointer dereference at virtual address 00000000
 > >  >  printing eip:                                                       
 > >  > c014c607      
 > >  > *pde = 00104001
 > >  > *pte = 00000000
 > >  > Oops: 0000 [#1]
 > > 
 > > This looks much like another bug report we had for
 > > reiser4-on-top-of-raid0. A fix (tentative) for that was to use
 > > bio_add_page() while constructing bios, and it will be included into
 > > next reiser4 snapshot (that, I hope, will be released
 > > to-day---2004.01.19).
 > 
 > Hi Nikita,
 > 
 > I ran the 2004.01.19 snapshot against 2.6.1 and now I get the following
 > error when I attempt to mount the reiser4 parition:
 > 
 > reiser4[mount(17176)]: _init_read_super (fs/reiser4/init_super.c:166)[nikita-2608]:
 > WARNING: Wrong master super block magic.

I am afraid, you have to re-create reiser4 file systems with new
progs. It was decided that we should change super block magic to be more
"descriptive".

By the way, it turned out, that 2004.01.19 snapshot contained a bug, so
new snapshot will be released to-night.

 > Thanks,
 > Mark

Nikita.

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2004-01-20  8:42 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2004-01-16 15:46 [linux-lvm] linux-2.6.0 + reiser4 oops markw
2004-01-16 20:45 ` markw
2004-01-16 17:04 ` [linux-lvm] " Hans Reiser
2004-01-16 20:50   ` Hans Reiser
2004-01-19  9:46 ` Nikita Danilov
2004-01-19 12:30   ` [linux-lvm] " markw
2004-01-19 17:29     ` markw
2004-01-19 17:35     ` Nikita Danilov
2004-01-20  8:42       ` [linux-lvm] " Nikita Danilov

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.