Revision 1d9e2ae949411c2f329f30e01ea0355cd02c4296 authored by Chris Mason on 16 January 2009, 16:58:19 UTC, committed by Chris Mason on 16 January 2009, 16:58:19 UTC
Btrfs maintains a queue of async bio submissions so the checksumming threads don't have to wait on get_request_wait. In order to avoid extra wakeups, this code has a running_pending flag that is used to tell new submissions they don't need to wake the thread. When the threads notice congestion on a single device, they may decide to requeue the job and move on to other devices. This makes sure the running_pending flag is cleared before the job is requeued. It should help avoid IO stalls by making sure the task is woken up when new submissions come in. Signed-off-by: Chris Mason <chris.mason@oracle.com>
1 parent e293e97
File | Mode | Size |
---|---|---|
Kconfig | -rw-r--r-- | 29.1 KB |
Makefile | -rw-r--r-- | 1.1 KB |
calibrate.c | -rw-r--r-- | 5.0 KB |
do_mounts.c | -rw-r--r-- | 8.9 KB |
do_mounts.h | -rw-r--r-- | 1.3 KB |
do_mounts_initrd.c | -rw-r--r-- | 3.2 KB |
do_mounts_md.c | -rw-r--r-- | 7.9 KB |
do_mounts_rd.c | -rw-r--r-- | 9.4 KB |
initramfs.c | -rw-r--r-- | 12.7 KB |
main.c | -rw-r--r-- | 21.1 KB |
noinitramfs.c | -rw-r--r-- | 1.4 KB |
version.c | -rw-r--r-- | 1.1 KB |
Computing file changes ...