我想知道分配给 BIO 的内存是如何免费获得特定于 RHEL 7 的。
我认为,在 RHEL 7 中, bio->destructor 字段已从 bio 结构中删除。
那么,究竟如何释放内存呢?
提前致谢。!
我想知道分配给 BIO 的内存是如何免费获得特定于 RHEL 7 的。
我认为,在 RHEL 7 中, bio->destructor 字段已从 bio 结构中删除。
那么,究竟如何释放内存呢?
提前致谢。!
了解为什么在 linux 内核中进行特定更改的最佳方法是在 Linux 内核源代码中搜索 git 日志:
git log -S bio_destructor_t -- include/linux/blk_types.h
这发现提交:
块:杀死bi_destructor
现在我们已经有了从生物池中释放生物的通用代码,这不再需要了。
这个补丁还使 bio_free() 成为静态的,因为没有 bi_destructor 就不需要在其他任何地方调用它。
bio_free
有关在 bio 中释放内存的信息,请参见函数的实现。