Open SoyBeanMilkx opened 1 month ago
这个demo就是如何获取以及使用用户输入的参数。 init是加载时的,ctl0是主动输入的,ctl1之前没有实装,不知道现在能不能用
这个demo就是如何获取以及使用用户输入的参数。 init是加载时的,ctl0是主动输入的,ctl1之前没有实装,不知道现在能不能用
好的好的,感谢大佬
这个demo就是如何获取以及使用用户输入的参数。 init是加载时的,ctl0是主动输入的,ctl1之前没有实装,不知道现在能不能用
您好佬,我在使用kmalloc函数时遇到了一些问题(char* paths = kmalloc(num_paths sizeof(char), GFP_KERNEL);),但是我导入这个头文件时#include <linux/gfp.h>,依然报错,我点进这个头文件看了一下,发现里面的内容都被注释了。
/ Plain integer GFP bitmasks. Do not use this directly. / // #define GFP_DMA 0x01u // #define __GFP_HIGHMEM 0x02u // #define GFP_DMA32 0x04u // #define GFP_MOVABLE 0x08u // #define __GFP_RECLAIMABLE 0x10u // #define GFP_HIGH 0x20u // #define GFP_IO 0x40u // #define __GFP_FS 0x80u // #define GFP_ZERO 0x100u // #define GFP_ATOMIC 0x200u // #define GFP_DIRECT_RECLAIM 0x400u // #define GFP_KSWAPD_RECLAIM 0x800u // #define __GFP_WRITE 0x1000u // #define GFP_NOWARN 0x2000u // #define GFP_RETRY_MAYFAIL 0x4000u // #define GFP_NOFAIL 0x8000u // #define GFP_NORETRY 0x10000u // #define __GFP_MEMALLOC 0x20000u // #define GFP_COMP 0x40000u // #define GFP_NOMEMALLOC 0x80000u // #define __GFP_HARDWALL 0x100000u // #define GFP_THISNODE 0x200000u // #define __GFP_ACCOUNT 0x400000u // #define __GFP_NOLOCKDEP 0x800000u
// static inline get_gfp_atomic() // { // if (kver >= VERSION(3, 18, 0)) return __GFP_HIGH;
// }
// #define GFP_RECLAIM ((__force gfp_t)(GFP_DIRECT_RECLAIM | __GFP_KSWAPD_RECLAIM))
// #define GFP_ATOMIC (GFP_HIGH | __GFP_ATOMIC | GFP_KSWAPD_RECLAIM) // #define GFP_KERNEL (GFP_RECLAIM | __GFP_IO | GFP_FS)
// #define GFP_KERNEL_ACCOUNT (GFP_KERNEL | GFP_ACCOUNT) // #define GFP_NOWAIT (GFP_KSWAPD_RECLAIM) // #define GFP_NOIO (GFP_RECLAIM) // #define GFP_NOFS (GFP_RECLAIM | GFP_IO) // #define GFP_USER (GFP_RECLAIM | GFP_IO | __GFP_FS | GFP_HARDWALL) // #define GFP_DMA GFP_DMA // #define GFP_DMA32 GFP_DMA32 // #define GFP_HIGHUSER (GFP_USER | GFP_HIGHMEM) // #define GFP_HIGHUSER_MOVABLE (GFP_HIGHUSER | GFP_MOVABLE) // #define GFP_TRANSHUGE_LIGHT ((GFP_HIGHUSER_MOVABLE | GFP_COMP | __GFP_NOMEMALLOC | GFP_NOWARN) & ~GFP_RECLAIM) // #define GFP_TRANSHUGE (GFP_TRANSHUGE_LIGHT | GFP_DIRECT_RECLAIM)
/ Convert GFP flags to their corresponding migrate type / // #define GFP_MOVABLE_MASK (__GFP_RECLAIMABLE | __GFP_MOVABLE) // #define GFP_MOVABLE_SHIFT 3
这个该如何解决呢,怎么使用kmalloc函数呀
如题