diff options
author | Kent Overstreet <kent.overstreet@linux.dev> | 2024-08-23 15:38:12 -0400 |
---|---|---|
committer | Kent Overstreet <kent.overstreet@linux.dev> | 2024-08-23 19:34:30 -0400 |
commit | b422b19f636329e1a082bcacd3ac6b485d7a5b3e (patch) | |
tree | ee9979640d17b982ed92581557634a6df57b2fc8 /include/linux/srcu.h | |
parent | 6f938e0399ce04699682459408b090387c73adb3 (diff) |
Update bcachefs sources to 22fa8fc32e6a bcachefs: rcu_pending now works in userspace
Diffstat (limited to 'include/linux/srcu.h')
-rw-r--r-- | include/linux/srcu.h | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/include/linux/srcu.h b/include/linux/srcu.h index 1c816804..12719eb5 100644 --- a/include/linux/srcu.h +++ b/include/linux/srcu.h @@ -1,6 +1,12 @@ #ifndef __TOOLS_LINUX_SRCU_H #define __TOOLS_LINUX_SRCU_H +#include <linux/rcupdate.h> + +#define NUM_ACTIVE_RCU_POLL_OLDSTATE 2 + +typedef void (*rcu_callback_t)(struct rcu_head *head); + struct srcu_struct { }; @@ -26,10 +32,35 @@ static inline unsigned long get_state_synchronize_srcu(struct srcu_struct *ssp) return 0; } +#undef poll_state_synchronize_rcu +static inline bool poll_state_synchronize_rcu(unsigned long cookie) +{ + return false; +} + +#undef start_poll_synchronize_rcu +static inline unsigned long start_poll_synchronize_rcu() +{ + return 0; +} + +static inline unsigned long get_state_synchronize_rcu() +{ + return 0; +} + static inline void synchronize_srcu_expedited(struct srcu_struct *ssp) {} +static inline void srcu_barrier(struct srcu_struct *ssp) {} + static inline void cleanup_srcu_struct(struct srcu_struct *ssp) {} +static inline void call_srcu(struct srcu_struct *ssp, struct rcu_head *rhp, + rcu_callback_t func) +{ + func(rhp); +} + static inline int init_srcu_struct(struct srcu_struct *ssp) { return 0; |