oracle / linux-uek

Oracle Linux UEK: Unbreakable Enterprise Kernel
https://blogs.oracle.com/linuxkernel
311 stars 69 forks source link

problem with q->make_request_fn() in upstream lk 5.9+. #11

Closed SergeiShtepa closed 10 months ago

SergeiShtepa commented 3 years ago

Hello. I would like to draw your attention to the innovations of the upstream kernel and discuss the problem of intercepting the make_request_fn () function. I am concerned about a kernel 5.9 issue where intercepting the q->make_request_fn() function became impossible.

The problem is that several out-of-tree kernel modules can't run on it (only with a trick with x64_CR0_WP). First of all, this applies to backup tools. Many of them use their kernel modules to create snapshots of block devices. ASMFD will also not be able to connect to the block layer.

I have studied your kernel and see that these block layer changes are not present in your kernel. Not yet. But after some time, you will probably make a synchronization with the upstream kernel and the problem will appear to you.

I am trying to develop and offer to upstream kernel a solution to this problem https://github.com/SergeiShtepa/linux/tree/blk-filter-v0 . I believe that you may be interested in this issue and want to discuss it. I am sure that the Generic Block Device Filter module can be useful for Oracle.

tvierling commented 10 months ago

I'm sorry this issue report was overlooked.

OL's first post-5.9 kernel is UEK7 (based on 5.15). If you have issues with this code path on UEK7, please reopen this issue with context on how it isn't functioning properly for you.