Skip to contentSkip to conversation

oops with 2.4.8-pre5

DISCUSSION Alex Romosan 2 participants 4 messages Aug 7, 2001

lore
Share & tools
lore
#0 lore raw

i got the following oops with kernel 2.4.8-pre5. i was just logged in remotely, reading email with gnus and maybe i had just run dselect (debian package installer):

ksymoops 2.4.1 on i686 2.4.8-pre5. Options used
-V (default)
-k /proc/ksyms (default)
-l /proc/modules (default)
-o /lib/modules/2.4.8-pre5/ (default)
-m /boot/System.map-2.4.8-pre5 (specified)

Aug  7 12:47:26 caliban kernel: Unable to handle kernel NULL pointer dereference at virtual address 0000001c
Aug  7 12:47:26 caliban kernel: c01311c9
Aug  7 12:47:26 caliban kernel: *pde = 00000000
Aug  7 12:47:26 caliban kernel: Oops: 0000
Aug  7 12:47:26 caliban kernel: CPU:    0
Aug  7 12:47:26 caliban kernel: EIP:    0010:[sync_old_buffers+41/76]
Aug  7 12:47:26 caliban kernel: EFLAGS: 00010286
Aug  7 12:47:26 caliban kernel: eax: 0009c42b   ebx: cff20000   ecx: 00000200   edx: 00000000
Aug  7 12:47:26 caliban kernel: esi: c0259357   edi: cff2023b   ebp: 0008e000   esp: cff21fe0
Aug  7 12:47:26 caliban kernel: ds: 0018   es: 0018   ss: 0018
Aug  7 12:47:26 caliban kernel: Process kupdated (pid: 7, stackpage=cff21000)
Aug  7 12:47:26 caliban kernel: Stack: c0131425 00010f00 cff39fb0 c02e34a8 c0105454 c02e34a8 00000078 c02d1fc0 
Aug  7 12:47:26 caliban kernel: Call Trace: [kupdate+205/208] [kernel_thread+40/56] 
Aug  7 12:47:26 caliban kernel: Code: 2b 42 1c 79 e2 89 f6 81 3d 80 4f 2c c0 80 4f 2c c0 74 0d 68 

Using defaults from ksymoops -t elf32-i386 -a i386

Code; 00000000 Before first symbol
00000000 <_EIP>:
Code; 00000000 Before first symbol
0: 2b 42 1c sub 0x1c(%edx),%eax
Code; 00000003 Before first symbol
3: 79 e2 jns ffffffe7 <_EIP+0xffffffe7> ffffffe7 <END_OF_CODE+2f4e6e48/????>
Code; 00000005 Before first symbol
5: 89 f6 mov %esi,%esi
Code; 00000007 Before first symbol
7: 81 3d 80 4f 2c c0 80 cmpl $0xc02c4f80,0xc02c4f80
Code; 0000000e Before first symbol
e: 4f 2c c0
Code; 00000011 Before first symbol
11: 74 0d je 20 <_EIP+0x20> 00000020 Before first symbol
Code; 00000013 Before first symbol
13: 68 00 00 00 00 push $0x0

--alex--

Signature · 4 lines
| I believe the moment is at hand when, by a paranoiac and active |
|  advance of the mind, it will be possible (simultaneously with  |
|  automatism and other passive states) to systematize confusion  |
|  and thus to help to discredit completely the world of reality. |
#1 lore raw
Quoted 3 lines · Alex Romosan

i got the following oops with kernel 2.4.8-pre5. i was just logged in remotely, reading email with gnus and maybe i had just run dselect (debian package installer):

This should fix it.

Signature · 1 line
Jens Axboe
buffer.c renamed from opt/kernel/linux-2.4.8-pre5/fs/buffer.c +5 -1
@@ -2581,13 +2472,17 @@
 
 			spin_lock(&lru_list_lock);
 			bh = lru_list[BUF_DIRTY];
+			if (!bh)
+				break;
 			if (!time_before(jiffies, bh->b_flushtime))
 				continue;
 			spin_unlock(&lru_list_lock);
 		}
 		run_task_queue(&tq_disk);
-		return 0;
+		break;
 	}
+
+	return 0;
 }
 
 int block_sync_page(struct page *page)
#2 lore raw
In reply to Alex Romosan
Quoted 6 lines · Jens Axboe
Quoted 3 lines · Alex Romosan

i got the following oops with kernel 2.4.8-pre5. i was just logged in remotely, reading email with gnus and maybe i had just run dselect (debian package installer):

This should fix it.

Eh scratch that braino, here's a right one...

Signature · 1 line
Jens Axboe
buffer.c renamed from opt/kernel/linux-2.4.8-pre5/fs/buffer.c +3 -0
@@ -2581,10 +2472,13 @@
 
 			spin_lock(&lru_list_lock);
 			bh = lru_list[BUF_DIRTY];
+			if (!bh)
+				goto quit;
 			if (!time_before(jiffies, bh->b_flushtime))
 				continue;
 			spin_unlock(&lru_list_lock);
 		}
+quit:
 		run_task_queue(&tq_disk);
 		return 0;
 	}
#3 lore raw
In reply to Alex Romosan
Quoted 9 lines · Jens Axboe
Quoted 6 lines · Jens Axboe
Quoted 3 lines · Alex Romosan

i got the following oops with kernel 2.4.8-pre5. i was just logged in remotely, reading email with gnus and maybe i had just run dselect (debian package installer):

This should fix it.

Eh scratch that braino, here's a right one...

Too tired, or something... I think I'll stop for today.

Signature · 1 line
Jens Axboe
buffer.c renamed from opt/kernel/linux-2.4.8-pre5/fs/buffer.c +5 -0
@@ -2581,10 +2472,15 @@
 
 			spin_lock(&lru_list_lock);
 			bh = lru_list[BUF_DIRTY];
+			if (!bh) {
+				spin_unlock(&lru_list_lock);
+				goto quit;
+			}
 			if (!time_before(jiffies, bh->b_flushtime))
 				continue;
 			spin_unlock(&lru_list_lock);
 		}
+quit:
 		run_task_queue(&tq_disk);
 		return 0;
 	}