linux内核o2,编译不带O2优化的linux内核

今天在Cygwin上编译了一个不带O2优化的linux内核,这样结合QEMU和CDT就很容易进行内核的代码单步跟踪和调试。把对内核的修改记录一下:

1.将内核主目录下的Makefile中所有的-O2删除掉。

sed -i s/-O2//g Makefile

2.在.config 中使能CONFIG_HIGHMEM=y

3.修改 arch/arm/mm/highmem.c 加上如下的dummy函数。

void *kmap_high_l1_vipt(struct page *page, pte_t *saved_pte)

{

}

void kunmap_high_l1_vipt(struct page *page, pte_t saved_pte)

{

}

4.注释文件arch/arm/kernel/Setup.c中的如下行。

//#ifdef MULTI_TLB

struct cpu_tlb_fns cpu_tlb;

//#endif

5.注释mm/slab.c中的如下行。

static __always_inline int index_of(const size_t size)

{

//      extern void __bad_size(void);

//      if (__builtin_constant_p(size)) {

int i = 0;

#define CACHE(x) \

if (size <=x) \

return i; \

else \

i++;

#include#undef CACHE

//              __bad_size();

//      } else

//              __bad_size();

return 0;

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值