[dm-devel] [PATCH v6 3/4] dm-replicator: ringbuffer replication log handler
Busby
chaimvy at gmail.com
Mon Jul 18 09:44:09 UTC 2011
is there any bug in slink_fallbehind_update function?
I use the dm-repl module, while the oops came as:
localhost kernel: Oops: 0010 [#2] SMP
Message from syslogd@ at Thu Jul 21 06:42:27 2011 ...
localhost kernel: last sysfs file: /sys/module/scsi_transport_iscsi/version
Message from syslogd@ at Thu Jul 21 06:42:27 2011 ...
localhost kernel: Stack:
Message from syslogd@ at Thu Jul 21 06:42:27 2011 ...
localhost kernel: ffff88005f5019e0 0000000000000000 ffff8800574d58c0
0000000000000000
Message from syslogd@ at Thu Jul 21 06:42:27 2011 ...
localhost kernel: 0000000000000000 ffff8800be3e3800 ffffffffa0320d50
0000000000000000
Message from syslogd@ at Thu Jul 21 06:42:27 2011 ...
localhost kernel: Call Trace:
Message from syslogd@ at Thu Jul 21 06:42:27 2011 ...
localhost kernel: [<ffffffffa031ddb7>] ?
slink_fallbehind_update+0x1f7/0x30e [dm_repl_log_ringbuffer]
Message from syslogd@ at Thu Jul 21 06:42:27 2011 ...
localhost kernel: [<ffffffffa0320d50>] ? do_log+0xf07/0x12ab
[dm_repl_log_ringbuffer]
Message from syslogd@ at Thu Jul 21 06:42:27 2011 ...
localhost kernel: [<ffffffffa031c4aa>] ? data_endio+0x0/0x10
[dm_repl_log_ringbuffer]
Message from syslogd@ at Thu Jul 21 06:42:27 2011 ...
localhost kernel: [<ffffffffa031c4ba>] ? header_endio+0x0/0xd
[dm_repl_log_ringbuffer]
Message from syslogd@ at Thu Jul 21 06:42:27 2011 ...
localhost kernel: [<ffffffff8020c9ee>] ? apic_timer_interrupt+0xe/0x20
Message from syslogd@ at Thu Jul 21 06:42:27 2011 ...
localhost kernel: [<ffffffff8022e37c>] ? update_curr+0x6f/0xaa
Message from syslogd@ at Thu Jul 21 06:42:27 2011 ...
localhost kernel: [<ffffffff80236661>] ? dequeue_task_fair+0x93/0x105
Message from syslogd@ at Thu Jul 21 06:42:27 2011 ...
localhost kernel: [<ffffffff804aab5d>] ? thread_return+0x3d/0xb0
Message from syslogd@ at Thu Jul 21 06:42:27 2011 ...
localhost kernel: [<ffffffffa031fe49>] ? do_log+0x0/0x12ab
[dm_repl_log_ringbuffer]
Message from syslogd@ at Thu Jul 21 06:42:27 2011 ...
localhost kernel: [<ffffffff8024802c>] ? run_workqueue+0x7a/0x102
Message from syslogd@ at Thu Jul 21 06:42:27 2011 ...
localhost kernel: [<ffffffff8024894c>] ? worker_thread+0xd5/0xe0
Message from syslogd@ at Thu Jul 21 06:42:27 2011 ...
localhost kernel: [<ffffffff8024b2a6>] ? autoremove_wake_function+0x0/0x2e
Message from syslogd@ at Thu Jul 21 06:42:27 2011 ...
localhost kernel: [<ffffffff80248877>] ? worker_thread+0x0/0xe0
Message from syslogd@ at Thu Jul 21 06:42:27 2011 ...
localhost kernel: [<ffffffff8024b176>] ? kthread+0x47/0x75
it seems there is something wrong in this section:
list_for_each_entry(pos, L_SLINK_COPY_LIST(l),
lists.l[E_WRITE_OR_COPY]) {
struct slink_copy_context *cc;
list_for_each_entry(cc, E_COPY_CONTEXT_LIST(pos),
list) {
if (cc->slink->ops->slink_number(cc->slink) ==
slink_nr) {
ss->fb.head_jiffies = cc->start_jiffies;
break;
}
}
}
maybe "cc->slink->ops->slink_number(cc->slink)" return an err?
More information about the dm-devel
mailing list