我有一个数组
我需要在每次调用此函数时扩展该数组。 注意:在Linux内核中无法使用realloc,我不知道它是否存在。
char* temp;
temp=kmalloc(3,GFP_KERNEL);
我需要在每次调用此函数时扩展该数组。 注意:在Linux内核中无法使用realloc,我不知道它是否存在。
char* temp;
temp=kmalloc(3,GFP_KERNEL);
自己编写realloc函数,但请注意,realloc是一个设计不良的函数接口。只需使用kmalloc分配一个新缓冲区,并将旧数据memcpy到新缓冲区中即可。 如果无法原地扩展缓冲区,则这基本上就是realloc所做的所有事情。
<linux/slab.h>
中有kmalloc()
对应的krealloc()
函数。这个函数是在2007年/内核2.6.22版本中添加的。