-
Notifications
You must be signed in to change notification settings - Fork 396
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
fix(90kernel-modules): fix MMC and NVMe on kernels 6.0+ #2103
Conversation
maybe "fix(90kernel-modules): fixed MMC and NVMe....' ? |
ea16465
to
a885c9c
Compare
Done |
Please try to find a solution (it is me not doing this) - https://github.com/dracutdevs/dracut/actions/runs/3610891530/jobs/6084978300 Perhaps "correct" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You need to rephrase your commit message excluding the word fixed other than LGTM
Commit 6f8191fdf41 ("block: simplify disk shutdown") in Linux kernels 6.0 and above
renamed blk_cleanup_disk to blk_mq_destroy_queue. Adapt code to handle both cases.
Because of this the kernel module mmc_block.ko was not included into initrd on kernel 6.1:
dracut-install: No symbol or path match for '/lib/modules/6.1.0-generic-0.rc7.1rosa2021.1-x86_64//kernel/drivers/mmc/core/mmc_block.ko.zst
while on kernel 5.15 it was included:
dracut-install: Handling /lib/modules/5.15.79-generic-1rosa2021.1-x86_64//kernel/drivers/mmc/core/mmc_block.ko.zst
dracut-install: Module mmc_block: symbol blk_cleanup_queue matched inclusion filter
It made booting OS from root on /dev/mmcblk* impossible.
Just adding blk_mq_destroy_queue was not enough to make mmc_block.ko be included into initrd
(maybe because call of blk_cleanup_disk() was removed and call of blk_mq_destroy_queue() was not added).
So also adding blk_mq_alloc_request which is used from mmc_block.
Fixes: dracutdevs#2102
a885c9c
to
379f8ea
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
|
@LaszloGombos thanks for rephrasing the commit message |
|
Related: redhat-plumbers/dracut-rhel9#57 |
your commit message rephrased in the latest PR
@johannbg what's your opinion here? I'm a bit upset, things like this should never happen with RH and the worst thing is we are only getting silence and no justification. |
|
@aafeijoo-suse I can only assume the reason but how can you be upset? Any corporation or individual is free to submit patches upstream or not RH and or it's employees are not obliged to submit patches here upstream or owe upstream somekind of justification if they dont. |
|
Yeah, better forget about this. In another vein, maybe we should add that patch, because I think this PR does not cover the case of the |
|
@aafeijoo-suse yeah I dont see why not but I probably should mention he did not add his patch to fedora either ( which might raise some eyebrows in Raleigh, rarely is a fix limited to RHEL ) so there might be a catch 22 for doing that |
|
Also, it would be very nice to somehow clean up hackery like explicitly adding drivers/mmc on aarch64 only
|
Commit 6f8191fdf41 ("block: simplify disk shutdown") (torvalds/linux@6f8191f) in Linux kernels 6.0 and above renamed blk_cleanup_disk to blk_mq_destroy_queue. Adapt code to handle both cases.
Because of this the kernel module mmc_block.ko was not included into initrd on kernel 6.1:
dracut-install: No symbol or path match for '/lib/modules/6.1.0-generic-0.rc7.1rosa2021.1-x86_64//kernel/drivers/mmc/core/mmc_block.ko.zst
while on kernel 5.15 it was included:
dracut-install: Handling /lib/modules/5.15.79-generic-1rosa2021.1-x86_64//kernel/drivers/mmc/core/mmc_block.ko.zst
dracut-install: Module mmc_block: symbol blk_cleanup_queue matched inclusion filter
It made booting OS from root on /dev/mmcblk* impossible.
Just adding blk_mq_destroy_queue was not enough to make mmc_block.ko be included into initrd (maybe because call of blk_cleanup_disk() was removed and call of blk_mq_destroy_queue() was not added).
So also adding blk_mq_alloc_request which is used from mmc_block.
Fixes: #2102