Lines Matching refs:sl

749  * @sl: Pointer to the seqlock_t instance
751 #define seqlock_init(sl) \
753 spin_lock_init(&(sl)->lock); \
754 seqcount_spinlock_init(&(sl)->seqcount, &(sl)->lock); \
758 * DEFINE_SEQLOCK(sl) - Define a statically allocated seqlock_t
759 * @sl: Name of the seqlock_t instance
761 #define DEFINE_SEQLOCK(sl) \
762 seqlock_t sl = __SEQLOCK_UNLOCKED(sl)
766 * @sl: Pointer to seqlock_t
770 static inline unsigned read_seqbegin(const seqlock_t *sl)
772 unsigned ret = read_seqcount_begin(&sl->seqcount);
781 * @sl: Pointer to seqlock_t
790 static inline unsigned read_seqretry(const seqlock_t *sl, unsigned start)
798 return read_seqcount_retry(&sl->seqcount, start);
809 * @sl: Pointer to seqlock_t
820 static inline void write_seqlock(seqlock_t *sl)
822 spin_lock(&sl->lock);
823 do_write_seqcount_begin(&sl->seqcount.seqcount);
828 * @sl: Pointer to seqlock_t
833 static inline void write_sequnlock(seqlock_t *sl)
835 do_write_seqcount_end(&sl->seqcount.seqcount);
836 spin_unlock(&sl->lock);
841 * @sl: Pointer to seqlock_t
846 static inline void write_seqlock_bh(seqlock_t *sl)
848 spin_lock_bh(&sl->lock);
849 do_write_seqcount_begin(&sl->seqcount.seqcount);
854 * @sl: Pointer to seqlock_t
860 static inline void write_sequnlock_bh(seqlock_t *sl)
862 do_write_seqcount_end(&sl->seqcount.seqcount);
863 spin_unlock_bh(&sl->lock);
868 * @sl: Pointer to seqlock_t
873 static inline void write_seqlock_irq(seqlock_t *sl)
875 spin_lock_irq(&sl->lock);
876 do_write_seqcount_begin(&sl->seqcount.seqcount);
881 * @sl: Pointer to seqlock_t
886 static inline void write_sequnlock_irq(seqlock_t *sl)
888 do_write_seqcount_end(&sl->seqcount.seqcount);
889 spin_unlock_irq(&sl->lock);
892 static inline unsigned long __write_seqlock_irqsave(seqlock_t *sl)
896 spin_lock_irqsave(&sl->lock, flags);
897 do_write_seqcount_begin(&sl->seqcount.seqcount);
917 * @sl: Pointer to seqlock_t
924 write_sequnlock_irqrestore(seqlock_t *sl, unsigned long flags)
926 do_write_seqcount_end(&sl->seqcount.seqcount);
927 spin_unlock_irqrestore(&sl->lock, flags);
932 * @sl: Pointer to seqlock_t
946 static inline void read_seqlock_excl(seqlock_t *sl)
948 spin_lock(&sl->lock);
953 * @sl: Pointer to seqlock_t
955 static inline void read_sequnlock_excl(seqlock_t *sl)
957 spin_unlock(&sl->lock);
963 * @sl: Pointer to seqlock_t
969 static inline void read_seqlock_excl_bh(seqlock_t *sl)
971 spin_lock_bh(&sl->lock);
977 * @sl: Pointer to seqlock_t
979 static inline void read_sequnlock_excl_bh(seqlock_t *sl)
981 spin_unlock_bh(&sl->lock);
987 * @sl: Pointer to seqlock_t
993 static inline void read_seqlock_excl_irq(seqlock_t *sl)
995 spin_lock_irq(&sl->lock);
1001 * @sl: Pointer to seqlock_t
1003 static inline void read_sequnlock_excl_irq(seqlock_t *sl)
1005 spin_unlock_irq(&sl->lock);
1008 static inline unsigned long __read_seqlock_excl_irqsave(seqlock_t *sl)
1012 spin_lock_irqsave(&sl->lock, flags);
1033 * @sl: Pointer to seqlock_t
1037 read_sequnlock_excl_irqrestore(seqlock_t *sl, unsigned long flags)
1039 spin_unlock_irqrestore(&sl->lock, flags);