RemixVSL / iomemory-vsl4

Updated Fusion-io iomemory VSL4 Linux (version 4.3.7) driver for recent kernels.
55 stars 9 forks source link

Update to build against kernel 6.10.6. #55

Closed whirlyknurly closed 4 hours ago

whirlyknurly commented 1 month ago

A few queue helper functions were removed in: https://github.com/torvalds/linux/commit/ec84ca4025c0b90c6b7173a230f78ec00cad44f5

blk_limits_io_opt is still available but looks like something that might be cut in the future, since it's a single line assignment like the blk_queuemax* functions.

snuf commented 1 month ago

@whirlyknurly thanks, appreciate the effort!

There is a bug#135 filed for iomemory-vsl which contains this fix, which will get backported once "ok". The rq->limits.max_discard_sectors from there is probably also advisable.

As mentioned in the comments there the 6.10 kernel thunks when loading and unloading. It's a matter of adding some gcc options, doing so however generates a warning for objtool, which needs further looking into as mentioned there. To be fair my guess is that the kfio_ routine that is mentioned in the objtool warnings is the reason the 6.10 kernel throws a RIP/thunk.

snuf commented 2 days ago

To get rid of the thunk on load -mfunction-return=keep needs to be added to the Makefile as here