xref: /openbmc/linux/arch/um/drivers/cow_sys.h (revision b2441318)
1b2441318SGreg Kroah-Hartman /* SPDX-License-Identifier: GPL-2.0 */
21da177e4SLinus Torvalds #ifndef __COW_SYS_H__
31da177e4SLinus Torvalds #define __COW_SYS_H__
41da177e4SLinus Torvalds 
537185b33SAl Viro #include <kern_util.h>
637185b33SAl Viro #include <os.h>
737185b33SAl Viro #include <um_malloc.h>
81da177e4SLinus Torvalds 
cow_malloc(int size)91da177e4SLinus Torvalds static inline void *cow_malloc(int size)
101da177e4SLinus Torvalds {
1143f5b308SJeff Dike 	return uml_kmalloc(size, UM_GFP_KERNEL);
121da177e4SLinus Torvalds }
131da177e4SLinus Torvalds 
cow_free(void * ptr)141da177e4SLinus Torvalds static inline void cow_free(void *ptr)
151da177e4SLinus Torvalds {
161da177e4SLinus Torvalds 	kfree(ptr);
171da177e4SLinus Torvalds }
181da177e4SLinus Torvalds 
191da177e4SLinus Torvalds #define cow_printf printk
201da177e4SLinus Torvalds 
cow_strdup(char * str)211da177e4SLinus Torvalds static inline char *cow_strdup(char *str)
221da177e4SLinus Torvalds {
23dc764e50SJeff Dike 	return uml_strdup(str);
241da177e4SLinus Torvalds }
251da177e4SLinus Torvalds 
cow_seek_file(int fd,__u64 offset)26fe1db50cSPaolo 'Blaisorblade' Giarrusso static inline int cow_seek_file(int fd, __u64 offset)
271da177e4SLinus Torvalds {
28dc764e50SJeff Dike 	return os_seek_file(fd, offset);
291da177e4SLinus Torvalds }
301da177e4SLinus Torvalds 
cow_file_size(char * file,unsigned long long * size_out)3152c73782SPaolo 'Blaisorblade' Giarrusso static inline int cow_file_size(char *file, unsigned long long *size_out)
321da177e4SLinus Torvalds {
33dc764e50SJeff Dike 	return os_file_size(file, size_out);
341da177e4SLinus Torvalds }
351da177e4SLinus Torvalds 
cow_write_file(int fd,void * buf,int size)3631bc5a33SPaolo 'Blaisorblade' Giarrusso static inline int cow_write_file(int fd, void *buf, int size)
371da177e4SLinus Torvalds {
38a6ea4cceSJeff Dike 	return os_write_file(fd, buf, size);
391da177e4SLinus Torvalds }
401da177e4SLinus Torvalds 
411da177e4SLinus Torvalds #endif
42