1 /* SPDX-License-Identifier: GPL-2.0 */
2 #ifndef __COW_SYS_H__
3 #define __COW_SYS_H__
4
5 #include <kern_util.h>
6 #include <os.h>
7 #include <um_malloc.h>
8
cow_malloc(int size)9 static inline void *cow_malloc(int size)
10 {
11 return uml_kmalloc(size, UM_GFP_KERNEL);
12 }
13
cow_free(void * ptr)14 static inline void cow_free(void *ptr)
15 {
16 kfree(ptr);
17 }
18
19 #define cow_printf printk
20
cow_strdup(char * str)21 static inline char *cow_strdup(char *str)
22 {
23 return uml_strdup(str);
24 }
25
cow_seek_file(int fd,__u64 offset)26 static inline int cow_seek_file(int fd, __u64 offset)
27 {
28 return os_seek_file(fd, offset);
29 }
30
cow_file_size(char * file,unsigned long long * size_out)31 static inline int cow_file_size(char *file, unsigned long long *size_out)
32 {
33 return os_file_size(file, size_out);
34 }
35
cow_write_file(int fd,void * buf,int size)36 static inline int cow_write_file(int fd, void *buf, int size)
37 {
38 return os_write_file(fd, buf, size);
39 }
40
41 #endif
42