kmalloc分配高端内存
kmalloc 如果带GFP_HIGHUSER 参数,那么将在高端内存区获取空间
我的疑问是
unsigned long * addr = kmalloc(size_order,GFP_HIGHUSER )
1) kmalloc返回的是一个什么地址?
2) 在高端页框分配到空间后,由于没有经过映射,所以不会有线性地址,故addr为0?
谢谢
我的疑问是
unsigned long * addr = kmalloc(size_order,GFP_HIGHUSER )
1) kmalloc返回的是一个什么地址?
2) 在高端页框分配到空间后,由于没有经过映射,所以不会有线性地址,故addr为0?
谢谢
作者: wilbur512 发布时间: 2011-01-07
本帖最后由 EZWORD 于 2011-01-07 20:25 编辑
若有高端内存时kmalloc会正确返回,一般情况下返回的不都是逻辑地址吗。
kmalloc()分配的内存处于3GB~high_memory之间,这一段内核空间与物理内存的映射。
你那应该是没有分配到吧,可以看下错误码。
若有高端内存时kmalloc会正确返回,一般情况下返回的不都是逻辑地址吗。
kmalloc()分配的内存处于3GB~high_memory之间,这一段内核空间与物理内存的映射。
你那应该是没有分配到吧,可以看下错误码。
作者: EZWORD 发布时间: 2011-01-07