about summary refs log tree commit diff stats
path: root/kernel.soso/sharedmemory.c
diff options
context:
space:
mode:
Diffstat (limited to 'kernel.soso/sharedmemory.c')
-rw-r--r--kernel.soso/sharedmemory.c84
1 files changed, 28 insertions, 56 deletions
diff --git a/kernel.soso/sharedmemory.c b/kernel.soso/sharedmemory.c
index 8a4e635a..8082d2a4 100644
--- a/kernel.soso/sharedmemory.c
+++ b/kernel.soso/sharedmemory.c
@@ -17,53 +17,45 @@ static BOOL sharedmemorydir_open(File *file, uint32 flags);
 static FileSystemDirent *sharedmemorydir_readdir(FileSystemNode *node, uint32 index);
 static FileSystemNode *sharedmemorydir_finddir(FileSystemNode *node, char *name);
 
-typedef struct SharedMemory
-{
+typedef struct SharedMemory {
     FileSystemNode* node;
     List* physicalAddressList;
     Spinlock physicalAddressListLock;
     //TODO: permissions
 } SharedMemory;
 
-void initializeSharedMemory()
-{
+void initializeSharedMemory() {
     Spinlock_Init(&gShmListLock);
 
     gShmList = List_Create();
 
     gShmRoot = getFileSystemNode("/system/shm");
 
-    if (NULL == gShmRoot)
-    {
+    if (NULL == gShmRoot) {
         WARNING("/system/shm not found!!");
     }
-    else
-    {
+    else {
         gShmRoot->open = sharedmemorydir_open;
         gShmRoot->finddir = sharedmemorydir_finddir;
         gShmRoot->readdir = sharedmemorydir_readdir;
     }
 }
 
-static BOOL sharedmemorydir_open(File *file, uint32 flags)
-{
+static BOOL sharedmemorydir_open(File *file, uint32 flags) {
     return TRUE;
 }
 
-static FileSystemDirent *sharedmemorydir_readdir(FileSystemNode *node, uint32 index)
-{
+static FileSystemDirent *sharedmemorydir_readdir(FileSystemNode *node, uint32 index) {
     FileSystemDirent* result = NULL;
 
     int counter = 0;
 
     Spinlock_Lock(&gShmListLock);
 
-    List_Foreach (n, gShmList)
-    {
+    List_Foreach (n, gShmList) {
         SharedMemory* p = (SharedMemory*)n->data;
 
-        if (counter == index)
-        {
+        if (counter == index) {
             strcpy(gDirent.name, p->node->name);
             gDirent.fileType = p->node->nodeType;
 
@@ -79,18 +71,15 @@ static FileSystemDirent *sharedmemorydir_readdir(FileSystemNode *node, uint32 in
     return result;
 }
 
-static FileSystemNode *sharedmemorydir_finddir(FileSystemNode *node, char *name)
-{
+static FileSystemNode *sharedmemorydir_finddir(FileSystemNode *node, char *name) {
     FileSystemNode* result = NULL;
 
     Spinlock_Lock(&gShmListLock);
 
-    List_Foreach (n, gShmList)
-    {
+    List_Foreach (n, gShmList) {
         SharedMemory* p = (SharedMemory*)n->data;
 
-        if (strcmp(name, p->node->name) == 0)
-        {
+        if (strcmp(name, p->node->name) == 0) {
             result = p->node;
             break;
         }
@@ -101,27 +90,22 @@ static FileSystemNode *sharedmemorydir_finddir(FileSystemNode *node, char *name)
     return result;
 }
 
-static BOOL sharedmemory_open(File *file, uint32 flags)
-{
+static BOOL sharedmemory_open(File *file, uint32 flags) {
     return TRUE;
 }
 
-static void sharedmemory_unlink(File *file)
-{
+static void sharedmemory_unlink(File *file) {
     destroySharedMemory(file->node->name);
 }
 
-static int32 sharedmemory_ftruncate(File *file, int32 length)
-{
-    if (length <= 0)
-    {
+static int32 sharedmemory_ftruncate(File *file, int32 length) {
+    if (length <= 0) {
         return -1;
     }
 
     SharedMemory* sharedMem = (SharedMemory*)file->node->privateNodeData;
 
-    if (0 != file->node->length)
-    {
+    if (0 != file->node->length) {
         //already set
         return -1;
     }
@@ -130,8 +114,7 @@ static int32 sharedmemory_ftruncate(File *file, int32 length)
 
     Spinlock_Lock(&sharedMem->physicalAddressListLock);
 
-    for (int i = 0; i < pageCount; ++i)
-    {
+    for (int i = 0; i < pageCount; ++i) {
         char* pAddress = getPageFrame4M();
 
         List_Append(sharedMem->physicalAddressList, pAddress);
@@ -144,16 +127,14 @@ static int32 sharedmemory_ftruncate(File *file, int32 length)
     return 0;
 }
 
-static void* sharedmemory_mmap(File* file, uint32 size, uint32 offset, uint32 flags)
-{
+static void* sharedmemory_mmap(File* file, uint32 size, uint32 offset, uint32 flags) {
     void* result = NULL;
 
     SharedMemory* sharedMem = (SharedMemory*)file->node->privateNodeData;
 
     Spinlock_Lock(&sharedMem->physicalAddressListLock);
 
-    if (List_GetCount(sharedMem->physicalAddressList) > 0)
-    {
+    if (List_GetCount(sharedMem->physicalAddressList) > 0) {
         result = mapMemory(file->thread->owner, size, 0, sharedMem->physicalAddressList);
     }
 
@@ -162,18 +143,15 @@ static void* sharedmemory_mmap(File* file, uint32 size, uint32 offset, uint32 fl
     return result;
 }
 
-FileSystemNode* getSharedMemoryNode(const char* name)
-{
+FileSystemNode* getSharedMemoryNode(const char* name) {
     FileSystemNode* result = NULL;
 
     Spinlock_Lock(&gShmListLock);
 
-    List_Foreach (n, gShmList)
-    {
+    List_Foreach (n, gShmList) {
         SharedMemory* p = (SharedMemory*)n->data;
 
-        if (strcmp(name, p->node->name) == 0)
-        {
+        if (strcmp(name, p->node->name) == 0) {
             result = p->node;
             break;
         }
@@ -184,10 +162,8 @@ FileSystemNode* getSharedMemoryNode(const char* name)
     return result;
 }
 
-FileSystemNode* createSharedMemory(const char* name)
-{
-    if (getSharedMemoryNode(name) != NULL)
-    {
+FileSystemNode* createSharedMemory(const char* name) {
+    if (getSharedMemoryNode(name) != NULL) {
         return NULL;
     }
 
@@ -216,25 +192,21 @@ FileSystemNode* createSharedMemory(const char* name)
     return node;
 }
 
-void destroySharedMemory(const char* name)
-{
+void destroySharedMemory(const char* name) {
     SharedMemory* sharedMem = NULL;
 
     Spinlock_Lock(&gShmListLock);
 
-    List_Foreach (n, gShmList)
-    {
+    List_Foreach (n, gShmList) {
         SharedMemory* p = (SharedMemory*)n->data;
 
-        if (strcmp(name, p->node->name) == 0)
-        {
+        if (strcmp(name, p->node->name) == 0) {
             sharedMem = (SharedMemory*)p;
             break;
         }
     }
 
-    if (sharedMem)
-    {
+    if (sharedMem) {
         Spinlock_Lock(&sharedMem->physicalAddressListLock);
 
         kfree(sharedMem->node);