git://scm.lunaixsky.com
/
lunaix-os.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
feat: disk read/write support for both ATA and ATAPI device
[lunaix-os.git]
/
lunaix-os
/
kernel
/
mm
/
valloc.c
diff --git
a/lunaix-os/kernel/mm/valloc.c
b/lunaix-os/kernel/mm/valloc.c
index 0c4d4d4020e2167cf85c7a5d304812f80abc144a..4ff4794fd3e0da1a9543f07efbbec432ddbb66c6 100644
(file)
--- a/
lunaix-os/kernel/mm/valloc.c
+++ b/
lunaix-os/kernel/mm/valloc.c
@@
-1,4
+1,6
@@
+#include <klibc/string.h>
#include <lunaix/mm/cake.h>
#include <lunaix/mm/cake.h>
+#include <lunaix/mm/valloc.h>
#define MAX_CLASS 6
#define MAX_CLASS 6
@@
-64,6
+66,14
@@
valloc(unsigned int size)
return __valloc(size, &piles);
}
return __valloc(size, &piles);
}
+void*
+vcalloc(unsigned int size)
+{
+ void* ptr = __valloc(size, &piles);
+ memset(ptr, 0, size);
+ return ptr;
+}
+
void
vfree(void* ptr)
{
void
vfree(void* ptr)
{
@@
-76,6
+86,14
@@
valloc_dma(unsigned int size)
return __valloc(size, &piles_dma);
}
return __valloc(size, &piles_dma);
}
+void*
+vcalloc_dma(unsigned int size)
+{
+ void* ptr = __valloc(size, &piles_dma);
+ memset(ptr, 0, size);
+ return ptr;
+}
+
void
vfree_dma(void* ptr)
{
void
vfree_dma(void* ptr)
{