UbixOS V2 2.0

Functions
spinlock.c File Reference
`#include <ubixos/spinlock.h>`
`#include <ubixos/sched.h>`
Include dependency graph for spinlock.c:

Go to the source code of this file.

## Functions
void | spinLock (spinLock_t *lock)
void | spinLock_scheduler (spinLock_t *lock)
void | spinLockInit (spinLock_t *lock)
int | spinLockLocked (spinLock_t *lock)
int | spinTryLock (spinLock_t *lock)
void | spinUnlock (spinLock_t *lock)

## Function Documentation

## ◆ spinLock()

void spinLock | ( | spinLock_t * | lock | ) |

Definition at line 55 of file spinlock.c.

References sched_yield(), and spinTryLock().

Referenced by adjustCowCounter(), cpuInfo(), devfs_makeNode(), device_add(), device_find(), fclose(), fdcRead(), freePage(), kernel_function(), kmalloc(), ne2kAllocBuffer(), schedNewTask(), smpInit(), sys_thread_new(), tty_print(), ubixfs_cacheAdd(), vmm_copyVirtualSpace(), vmm_findFreePage(), vmm_freeProcessPages(), vmm_getFreeKernelPage(), vmm_getFreePage(), vmm_getFreeVirtualPage(), vmm_pageFault(), and vmm_remapPage().

Here is the call graph for this function:

## ◆ spinLock_scheduler()

void spinLock_scheduler | ( | spinLock_t * | lock | ) |

Definition at line 63 of file spinlock.c.

References spinTryLock().

Here is the call graph for this function:

## ◆ spinLockInit()

void spinLockInit | ( | spinLock_t * | lock | ) |

Definition at line 32 of file spinlock.c.

References SPIN_LOCK_INITIALIZER.

Referenced by vitals_init().

## ◆ spinLockLocked()

int spinLockLocked | ( | spinLock_t * | lock | ) |

Definition at line 69 of file spinlock.c.

Referenced by c_ap_boot().

## ◆ spinTryLock()

int spinTryLock | ( | spinLock_t * | lock | ) |

Definition at line 47 of file spinlock.c.

Referenced by keyboardHandler(), sched(), spinLock(), and spinLock_scheduler().

## ◆ spinUnlock()

void spinUnlock | ( | spinLock_t * | lock | ) |

Definition at line 36 of file spinlock.c.

Referenced by fopen(), and vmm_getFreeKernelPage().