* Jens Axboe <[EMAIL PROTECTED]> wrote: > @@ -777,8 +777,12 @@ struct scatterlist *scsi_alloc_sgtable(struct scsi_cmnd > *cmd, gfp_t gfp_mask) > * sglist must be the biggest one, or we would not have > * ended up doing another loop. > */ > - if (prev) > + if (prev) { > + struct Scsi_Host *shost = cmd->device->host; > + > + BUG_ON(!shost->use_sg_chaining); > sg_chain(prev, SCSI_MAX_SG_SEGMENTS, sgl); > + } >
nope, this did not help. First bootup went fine, second bootup crashed again (see below), without hitting the BUG_ON(). Ingo [ 39.351198] BUG: unable to handle kernel paging request at virtual address 7ca58000 [ 39.358698] printing eip: 784e9480 *pde = 00dda027 *pte = 04a58000 [ 39.364939] Oops: 0000 [#1] DEBUG_PAGEALLOC [ 39.369099] [ 39.370573] Pid: 0, comm: swapper Not tainted (2.6.23 #9) [ 39.375944] EIP: 0060:[<784e9480>] EFLAGS: 00010087 CPU: 0 [ 39.381408] EIP is at ata_qc_issue+0x90/0x380 [ 39.385737] EAX: 7ca57ff0 EBX: 0000001f ECX: 7ca57ff0 EDX: 79181c20 [ 39.391977] ESI: 00000020 EDI: 7ca57e00 EBP: 7b54007c ESP: 78a13e10 [ 39.398217] DS: 007b ES: 007b FS: 0000 GS: 0000 SS: 0068 [ 39.403590] Process swapper (pid: 0, ti=78a12000 task=789753e0 task.ti=78a12000) [ 39.410781] Stack: 7ca57e00 7b540000 7b540000 00000000 7ca57fe0 7b54007c 7c991980 7b5417a4 [ 39.419101] 784c2490 784ef69e 784f21f3 7b52de98 7c991980 7b540000 7b5417a4 7c991980 [ 39.427421] 7b540000 7b524004 784f22e0 784ef380 784c2490 7c991980 00000206 7b524004 [ 39.435740] Call Trace: [ 39.438340] [<784c2490>] scsi_done+0x0/0x20 [ 39.442586] [<784ef69e>] ata_scsi_translate+0xbe/0x140 [ 39.447785] [<784f21f3>] ata_scsi_queuecmd+0x33/0x200 [ 39.452899] [<784f22e0>] ata_scsi_queuecmd+0x120/0x200 [ 39.458099] [<784ef380>] ata_scsi_rw_xlat+0x0/0x220 [ 39.463038] [<784c2490>] scsi_done+0x0/0x20 [ 39.467285] [<784c2d12>] scsi_dispatch_cmd+0x152/0x290 [ 39.472484] [<78135c67>] trace_hardirqs_on+0x67/0xb0 [ 39.477511] [<784c8c7e>] scsi_request_fn+0x1be/0x370 [ 39.482538] [<78408086>] blk_run_queue+0x36/0x80 [ 39.487217] [<784c7520>] scsi_next_command+0x30/0x50 [ 39.492243] [<784c76ab>] scsi_end_request+0xab/0xe0 [ 39.497183] [<784c83f9>] scsi_io_completion+0xa9/0x3d0 [ 39.502383] [<78135c67>] trace_hardirqs_on+0x67/0xb0 [ 39.507409] [<78405125>] blk_done_softirq+0x45/0x80 [ 39.512348] [<78405153>] blk_done_softirq+0x73/0x80 [ 39.517288] [<7811d4c3>] __do_softirq+0x53/0xb0 [ 39.521882] [<7811d588>] do_softirq+0x68/0x70 [ 39.526302] [<78105351>] do_IRQ+0x51/0x90 [ 39.530374] [<78770a54>] _spin_unlock+0x14/0x20 [ 39.534968] [<7810290f>] restore_nocheck+0x12/0x15 [ 39.539820] [<7810f2d0>] pgd_dtor+0x0/0x50 [ 39.543980] [<7810388e>] common_interrupt+0x2e/0x40 [ 39.548920] [<7810f2d0>] pgd_dtor+0x0/0x50 [ 39.553079] [<7815f3bd>] quicklist_trim+0x5d/0x90 [ 39.557846] [<7810f2cb>] check_pgt_cache+0x1b/0x20 [ 39.562698] [<78100c52>] cpu_idle+0x32/0x60 [ 39.566945] [<78a14b35>] start_kernel+0x265/0x300 [ 39.571712] [<78a14380>] unknown_bootoption+0x0/0x1e0 [ 39.576825] ======================= [ 39.580377] Code: 00 00 00 8b 45 34 a8 02 0f 84 ed 00 00 00 8b bd 88 00 00 00 31 db 89 3c 24 8b 75 3c 89 f8 c7 44 24 10 00 00 00 00 eb 1b 8d 76 00 <8b> 50 10 8d 48 10 f6 c2 01 0f 85 be 02 00 00 89 44 24 10 83 c3 [ 39.599183] EIP: [<784e9480>] ata_qc_issue+0x90/0x380 SS:ESP 0068:78a13e10 [ 39.606030] Kernel panic - not syncing: Fatal exception in interrupt - 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/