Re: [PATCH 4/4] change sb_writers to use percpu_rw_semaphore
From: Oleg Nesterov
Date: Fri Aug 07 2015 - 15:56:19 EST
On 07/22, Oleg Nesterov wrote:
>
> +static void sb_freeze_unlock(struct super_block *sb)
> +{
> + int level;
> +
> + for (level = 0; level < SB_FREEZE_LEVELS; ++level)
> + percpu_up_write(sb->s_writers.rw_sem + level);
> }
OK, this is not exactly right, see the fix below.
Otherwise seems to work, but see another email I'll send in reply to 0/4.
Oleg.
--- a/fs/super.c
+++ b/fs/super.c
@@ -1237,7 +1237,7 @@ static void sb_freeze_unlock(struct super_block *sb)
{
int level;
- for (level = 0; level < SB_FREEZE_LEVELS; ++level)
+ for (level = SB_FREEZE_LEVELS; --level >= 0; )
percpu_up_write(sb->s_writers.rw_sem + level);
}
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/