diff options
author | Wolfram Sang <wsa@kernel.org> | 2021-10-11 08:15:48 +0200 |
---|---|---|
committer | Wolfram Sang <wsa@kernel.org> | 2021-10-11 08:15:48 +0200 |
commit | c5c34f5793f384ed2895584c6e2350b059c3f161 (patch) | |
tree | 14a73568207fb3d38d7aa43439493ac8bc906bde /fs/buffer.c | |
parent | 669b2e4aa1a869def4dc207ea084fdd77366d646 (diff) | |
parent | 64570fbc14f8d7cb3fe3995f20e26bc25ce4b2cc (diff) |
Merge branch 'i2c/for-current' into i2c/for-mergewindow
Diffstat (limited to 'fs/buffer.c')
-rw-r--r-- | fs/buffer.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/fs/buffer.c b/fs/buffer.c index ab7573d72dd7..c615387aedca 100644 --- a/fs/buffer.c +++ b/fs/buffer.c @@ -1425,12 +1425,16 @@ void invalidate_bh_lrus(void) } EXPORT_SYMBOL_GPL(invalidate_bh_lrus); -void invalidate_bh_lrus_cpu(int cpu) +/* + * It's called from workqueue context so we need a bh_lru_lock to close + * the race with preemption/irq. + */ +void invalidate_bh_lrus_cpu(void) { struct bh_lru *b; bh_lru_lock(); - b = per_cpu_ptr(&bh_lrus, cpu); + b = this_cpu_ptr(&bh_lrus); __invalidate_bh_lrus(b); bh_lru_unlock(); } |