Blame view

lib/linux_compat.c 716 Bytes
0c06db598   Heiko Schocher   lib, linux: move ...
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
  
  #include <common.h>
  #include <linux/compat.h>
  
  struct p_current cur = {
  	.pid = 1,
  };
  __maybe_unused struct p_current *current = &cur;
  
  unsigned long copy_from_user(void *dest, const void *src,
  		     unsigned long count)
  {
  	memcpy((void *)dest, (void *)src, count);
  	return 0;
  }
  
  void *kmalloc(size_t size, int flags)
  {
6b9f9eadf   Masahiro Yamada   linux_compat: han...
19
  	void *p;
0c06db598   Heiko Schocher   lib, linux: move ...
20

6b9f9eadf   Masahiro Yamada   linux_compat: han...
21
22
23
24
25
  	p = memalign(ARCH_DMA_MINALIGN, size);
  	if (flags & __GFP_ZERO)
  		memset(p, 0, size);
  
  	return p;
0c06db598   Heiko Schocher   lib, linux: move ...
26
  }
0c06db598   Heiko Schocher   lib, linux: move ...
27
28
29
30
31
32
33
34
35
36
37
38
39
40
  struct kmem_cache *get_mem(int element_sz)
  {
  	struct kmem_cache *ret;
  
  	ret = memalign(ARCH_DMA_MINALIGN, sizeof(struct kmem_cache));
  	ret->sz = element_sz;
  
  	return ret;
  }
  
  void *kmem_cache_alloc(struct kmem_cache *obj, int flag)
  {
  	return memalign(ARCH_DMA_MINALIGN, obj->sz);
  }