cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

spinlock.h (822B)


      1/*
      2 * This file is subject to the terms and conditions of the GNU General Public
      3 * License.  See the file "COPYING" in the main directory of this archive
      4 * for more details.
      5 *
      6 * Copyright (C) 1999, 2000, 06 Ralf Baechle (ralf@linux-mips.org)
      7 * Copyright (C) 1999, 2000 Silicon Graphics, Inc.
      8 */
      9#ifndef _ASM_SPINLOCK_H
     10#define _ASM_SPINLOCK_H
     11
     12#include <asm/processor.h>
     13
     14#include <asm-generic/qspinlock_types.h>
     15
     16#define	queued_spin_unlock queued_spin_unlock
     17/**
     18 * queued_spin_unlock - release a queued spinlock
     19 * @lock : Pointer to queued spinlock structure
     20 */
     21static inline void queued_spin_unlock(struct qspinlock *lock)
     22{
     23	/* This could be optimised with ARCH_HAS_MMIOWB */
     24	mmiowb();
     25	smp_store_release(&lock->locked, 0);
     26}
     27
     28#include <asm/qspinlock.h>
     29#include <asm/qrwlock.h>
     30
     31#endif /* _ASM_SPINLOCK_H */