kernel-aes67/block
OGAWA Hirofumi fba822722e [PATCH 1/2] iosched: fix typo and barrier()
On rmmod path, cfq/as waits to make sure all io-contexts was
freed. However, it's using complete(), not wait_for_completion().

I think barrier() is not enough in here. To avoid the following case,
this patch replaces barrier() with smb_wmb().

	cpu0			visibility			cpu1
	                [ioc_gnone=NULL,ioc_count=1]

ioc_gnone = &all_gone		NULL,ioc_count=1
atomic_read(&ioc_count)		NULL,ioc_count=1
wait_for_completion()		NULL,ioc_count=0	atomic_sub_and_test()
				NULL,ioc_count=0	if ( && ioc_gone)
						    [ioc_gone==NULL,
						    so doesn't call complete()]
			   &all_gone,ioc_count=0

Signed-off-by: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
Signed-off-by: Jens Axboe <axboe@suse.de>
2006-04-18 09:44:06 +02:00
..
as-iosched.c [PATCH 1/2] iosched: fix typo and barrier() 2006-04-18 09:44:06 +02:00
blktrace.c [PATCH] Block queue IO tracing support (blktrace) as of 2006-03-23 2006-03-23 20:00:26 +01:00
cfq-iosched.c [PATCH 1/2] iosched: fix typo and barrier() 2006-04-18 09:44:06 +02:00
deadline-iosched.c [PATCH] fix rmmod problems with elevator attributes, clean them up 2006-03-18 22:27:18 -05:00
elevator.c [PATCH] Don't pass boot parameters to argv_init[] 2006-03-31 12:18:53 -08:00
genhd.c [PATCH] Simplify proc/devices and fix early termination regression 2006-03-31 12:18:53 -08:00
ioctl.c [PATCH] Block queue IO tracing support (blktrace) as of 2006-03-23 2006-03-23 20:00:26 +01:00
Kconfig [PATCH] config: fix CONFIG_LFS option 2006-03-31 12:18:55 -08:00
Kconfig.iosched [BLOCK] iosched: fix setting of default io scheduler 2005-11-04 08:44:58 +01:00
ll_rw_blk.c Documentation: fix minor kernel-doc warnings 2006-04-02 13:59:55 +02:00
Makefile [PATCH] Block queue IO tracing support (blktrace) as of 2006-03-23 2006-03-23 20:00:26 +01:00
noop-iosched.c [BLOCK] noop-iosched: reimplementation of request dispatching 2005-11-12 10:56:52 +01:00
scsi_ioctl.c [SCSI] unify SCSI_IOCTL_SEND_COMMAND implementations 2006-04-13 10:13:15 -05:00