Hello, On 09/01/2010 09:15 AM, Kiyoshi Ueda wrote: > I don't see any obvious problem on this patch. > However, I hit a NULL pointer dereference below when I use a mpath > device with barrier option of ext3. I'm investigating the cause now. > (Also I'm not sure the cause of the hang which Mike is hitting yet.) > > I tried on the commit 28dd53b26d362c16234249bad61db8cbd9222d0b of > git://git.kernel.org/pub/scm/linux/kernel/git/tj/misc.git flush-fua. > > # mke2fs -j /dev/mapper/mpatha > # mount -o barrier=1 /dev/mapper/mpatha /mnt/0 > # dd if=/dev/zero of=/mnt/0/a bs=512 count=1 > # sync Hmm... I'm trying to reproduce this problem but hasn't been successful yet. > BUG: unable to handle kernel NULL pointer dereference at 0000000000000078 > IP: [<ffffffffa0070ec3>] scsi_finish_command+0xa3/0x120 [scsi_mod] Can you please ask gdb which source line this is? > Also, I have one comment below on this patch. > >> @@ -2619,9 +2458,8 @@ int dm_suspend(struct mapped_device *md, >> up_write(&md->io_lock); >> >> /* >> - * Request-based dm uses md->wq for barrier (dm_rq_barrier_work) which >> - * can be kicked until md->queue is stopped. So stop md->queue before >> - * flushing md->wq. >> + * Stop md->queue before flushing md->wq in case request-based >> + * dm defers requests to md->wq from md->queue. >> */ >> if (dm_request_based(md)) >> stop_queue(md->queue); > > Request-based dm doesn't use md->wq now, so you can just remove > the comment above. I sure can remove it but md->wq already has most stuff necessary to process deferred requests and when someone starts using it, having the comment there about the rather delicate ordering would definitely be helpful, so I suggest keeping the comment. Thanks. -- tejun -- To unsubscribe from this list: send the line "unsubscribe linux-raid" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html