void init_swapping(void)有问题
来源:互联网 发布:魔兽大脚插件for mac 编辑:程序博客网 时间:2024/05/16 11:46
void init_swapping(void)
{
extern int *blk_size[];
int swap_size,i,j;
if (!SWAP_DEV)
return;
if (!blk_size[MAJOR(SWAP_DEV)]) {
printk("Unable to get size of swap device\n\r");
return;
}
swap_size = blk_size[MAJOR(SWAP_DEV)][MINOR(SWAP_DEV)];
if (!swap_size)
return;
if (swap_size < 100) {
printk("Swap device too small (%d blocks)\n\r",swap_size);
return;
}
swap_size >>= 2;
if (swap_size > SWAP_BITS)
swap_size = SWAP_BITS;
swap_bitmap = (char *) get_free_page();
if (!swap_bitmap) {
printk("Unable to start swapping: out of memory :-)\n\r");
return;
}
read_swap_page(0,swap_bitmap);
if (strncmp("SWAP-SPACE",swap_bitmap+4086,10)) {
printk("Unable to find swap-space signature\n\r");
free_page((long) swap_bitmap);
swap_bitmap = NULL;
return;
}
memset(swap_bitmap+4086,0,10);
for (i = 0 ; i < SWAP_BITS ; i++) {
if (i == 1)
i = swap_size;
if (bit(swap_bitmap,i)) {
printk("Bad swap-space bit-map\n\r");
free_page((long) swap_bitmap);
swap_bitmap = NULL;
return;
}
}
j = 0;
for (i = 1 ; i < swap_size ; i++)
if (bit(swap_bitmap,i))
j++;
if (!j) {
free_page((long) swap_bitmap);
swap_bitmap = NULL;
return;
}
printk("Swap device ok: %d pages (%d bytes) swap-space\n\r",j,j*4096);
这段代码应该是有问题的应该if(j){...............}才对
- void init_swapping(void)有问题
- void *
- void
- void
- void
- void
- void
- void*
- void
- void
- void
- void
- void
- void
- void
- (void**)&
- void *
- void
- Objective-C并不像看起来的那么难
- 23 Awesome Themes for Ubuntu Linux
- 如何真正自己编出完整程(序编程的最新体会)
- SLT HANA connection (Set HANA connection environment)
- glTexParameteri()
- void init_swapping(void)有问题
- PostgreSQL查询优化简介
- 计算机科学与技术专业2011级《数据结构》期中考试
- 涨工资了-读取写入文件
- 三层架构中使用实体类填充泛型集合代替DataTable解决方案(ASP.NET+C#)
- java作为客户端,对 .net服务 验证签名验证。
- DB2的日期和时间
- TPC头
- 重构--改善既有代码的设计:重构原则