21 lines
491 B
C
21 lines
491 B
C
/* SPDX-License-Identifier: GPL-2.0 */
|
|
#ifndef _BCACHEFS_NOCOW_LOCKING_TYPES_H
|
|
#define _BCACHEFS_NOCOW_LOCKING_TYPES_H
|
|
|
|
#define BUCKET_NOCOW_LOCKS_BITS 10
|
|
#define BUCKET_NOCOW_LOCKS (1U << BUCKET_NOCOW_LOCKS_BITS)
|
|
|
|
struct nocow_lock_bucket {
|
|
struct closure_waitlist wait;
|
|
spinlock_t lock;
|
|
u64 b[4];
|
|
atomic_t l[4];
|
|
} __aligned(SMP_CACHE_BYTES);
|
|
|
|
struct bucket_nocow_lock_table {
|
|
struct nocow_lock_bucket l[BUCKET_NOCOW_LOCKS];
|
|
};
|
|
|
|
#endif /* _BCACHEFS_NOCOW_LOCKING_TYPES_H */
|
|
|