-
Notifications
You must be signed in to change notification settings - Fork 1.8k
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
Linux 6.9 compatibility #16033
Linux 6.9 compatibility #16033
Conversation
Don't existing GitHub Actions already run the test suite? If so it would be a matter of adding an additional step to add the kernel ppa in the docker container build file to automate the process for the future. |
@darkbasic they do, but against specific a specific set of distributions. I don't know much about how they're set up. I suspect what you're suggesting is not outrageously complicated, but not flipping a switch either. Support for this would likely be very welcome! |
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.
I can confirm that master
does not build against the 6.9 Ubuntu nightly kernel, but it does build with this PR.
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.
Looks good. But I agree it'd be good to get a full test run with the latest kernel.
On Monday I will try to update the CI to add a manual trigger for development kernels. |
bdev_open_by_path() is replaced by bdev_file_open_by_path(), which returns a plain old struct file*. Release function is gone entirely; the regular file release function fput() will take care of the bdev specifics. Signed-off-by: Rob Norris <[email protected]> Sponsored-by: https://despairlabs.com/sponsor/ Closes openzfs#16027
There's an extra nullable arg for queue limits. Detect it, and set it to NULL. Similar change for blk_mq_alloc_disk(), now three args, same treatment. Error return now has error encoded in the return, so detect with IS_ERR() and explicitly NULL our own return. Signed-off-by: Rob Norris <[email protected]> Sponsored-by: https://despairlabs.com/sponsor/ Closes openzfs#16027
I gave it a try, starting by forking the repo and setting up ci on my fork. I've noticed that https://github.com/darkbasic/zfs/actions/runs/8492015289/job/23264864791 Restarting the failed job sometimes fix it, it's a roulette at this point. Do you have any idea why this happens? Does it happen on this repo as well? It's a bit hard to work on if I can't get the existing infrastructure to work consistently to begin with. |
I've seen bouts of this before where there are transient issues with some repos. It's annoying, but outside our control. Usually it doesn't last too long. You may see a couple of spurious CI test failures but they shouldn't fail reliably. The failures in this PR are for know issues. This looks good to me so I've gone ahead and merged it. |
There's an extra nullable arg for queue limits. Detect it, and set it to NULL. Similar change for blk_mq_alloc_disk(), now three args, same treatment. Error return now has error encoded in the return, so detect with IS_ERR() and explicitly NULL our own return. Reviewed-by: Tony Hutter <[email protected]> Reviewed-by: Brian Behlendorf <[email protected]> Signed-off-by: Rob Norris <[email protected]> Sponsored-by: https://despairlabs.com/sponsor/ Closes #16027 Closes #16033
@behlendorf thanks. I'm getting a usable any-kernel-I-want ZTS runner vm up over here, so I'm hoping to have a full test run on 6.9 by the weekend. If anything shakes out you'll hear from me! |
bdev_open_by_path() is replaced by bdev_file_open_by_path(), which returns a plain old struct file*. Release function is gone entirely; the regular file release function fput() will take care of the bdev specifics. Reviewed-by: Tony Hutter <[email protected]> Reviewed-by: Brian Behlendorf <[email protected]> Signed-off-by: Rob Norris <[email protected]> Sponsored-by: https://despairlabs.com/sponsor/ Closes #16027 Closes #16033
There's an extra nullable arg for queue limits. Detect it, and set it to NULL. Similar change for blk_mq_alloc_disk(), now three args, same treatment. Error return now has error encoded in the return, so detect with IS_ERR() and explicitly NULL our own return. Reviewed-by: Tony Hutter <[email protected]> Reviewed-by: Brian Behlendorf <[email protected]> Signed-off-by: Rob Norris <[email protected]> Sponsored-by: https://despairlabs.com/sponsor/ Closes #16027 Closes #16033
bdev_open_by_path() is replaced by bdev_file_open_by_path(), which returns a plain old struct file*. Release function is gone entirely; the regular file release function fput() will take care of the bdev specifics. Reviewed-by: Tony Hutter <[email protected]> Reviewed-by: Brian Behlendorf <[email protected]> Signed-off-by: Rob Norris <[email protected]> Sponsored-by: https://despairlabs.com/sponsor/ Closes openzfs#16027 Closes openzfs#16033
There's an extra nullable arg for queue limits. Detect it, and set it to NULL. Similar change for blk_mq_alloc_disk(), now three args, same treatment. Error return now has error encoded in the return, so detect with IS_ERR() and explicitly NULL our own return. Reviewed-by: Tony Hutter <[email protected]> Reviewed-by: Brian Behlendorf <[email protected]> Signed-off-by: Rob Norris <[email protected]> Sponsored-by: https://despairlabs.com/sponsor/ Closes openzfs#16027 Closes openzfs#16033
bdev_open_by_path() is replaced by bdev_file_open_by_path(), which returns a plain old struct file*. Release function is gone entirely; the regular file release function fput() will take care of the bdev specifics. Reviewed-by: Tony Hutter <[email protected]> Reviewed-by: Brian Behlendorf <[email protected]> Signed-off-by: Rob Norris <[email protected]> Sponsored-by: https://despairlabs.com/sponsor/ Closes #16027 Closes #16033
Motivation and Context
Typical churn, thankfully a little smaller than most releases.
Closes #16027.
Description
See individual commits.
How Has This Been Tested?
For each of the following kernels:
Follwing tests succeded:
zvol
zpool_create
zpool_reopen
block_cloning
Given that that the original 6.8 patch series fell short in a way we could have caught (#15931), and since people apparently can't help but run unsupported combinations of Linux+OpenZFS (#15986), I'd at least like to get a full ZTS run against this PR before merge. However right now I don't have anything that can run the whole test suite and also can easily accommodate a sufficiently recent kernel. If someone else can run it, that would be fantastic, otherwise I'll try and get something going in the next week or two.
Types of changes
Checklist:
Signed-off-by
.