diff --git a/kmod/src/seg.c b/kmod/src/seg.c index 4c125f1c..d4eeb32f 100644 --- a/kmod/src/seg.c +++ b/kmod/src/seg.c @@ -232,6 +232,9 @@ int scoutfs_seg_alloc(struct super_block *sb, struct scoutfs_segment **seg_ret) goto out; } + /* reads shouldn't wait for this */ + set_bit(SF_END_IO, &seg->flags); + /* XXX always remove existing segs, is that necessary? */ spin_lock_irqsave(&cac->lock, flags); atomic_inc(&seg->refcount);