Page MenuHomeFreeBSD

Remove 12.x ABI compat for kernel dump ioctls
ClosedPublic

Authored by mhorne on Apr 14 2022, 5:06 PM.
Tags
None
Referenced Files
Unknown Object (File)
Mar 7 2024, 11:56 AM
Unknown Object (File)
Feb 18 2024, 8:23 AM
Unknown Object (File)
Feb 9 2024, 3:10 PM
Unknown Object (File)
Jan 14 2024, 8:37 AM
Unknown Object (File)
Jan 5 2024, 4:25 AM
Unknown Object (File)
Jan 5 2024, 4:25 AM
Unknown Object (File)
Jan 5 2024, 4:25 AM
Unknown Object (File)
Jan 3 2024, 4:27 PM

Details

Summary

This code has been marked gone_in(14), so it can now be removed.

MFC after: never

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

This too can be removed...
(1) They aren't part of a long-term standard ABI, but a rather specialized FreeBSD tool and the kernel
(2) they don't need to work in a jail because this ioctl doesn't make sense from jail.
(3) There's no upgrade / failed-upgrade scenarios we need to worry about with this.

There's just barely a scenario to keep these, and it likely isn't worth supporting: If I ran a 12 userland with a 14 kernel, I wouldn't be able to capture panics with this. However, one can selectively copy over a statically linked dumpon(8) to work around this should even that unlikely scenario arise. And I'm not sure how well the other administrative tools would cope anyway, so maybe that's no longer possible...

In D34914#791369, @imp wrote:

This too can be removed...
(1) They aren't part of a long-term standard ABI, but a rather specialized FreeBSD tool and the kernel
(2) they don't need to work in a jail because this ioctl doesn't make sense from jail.
(3) There's no upgrade / failed-upgrade scenarios we need to worry about with this.

There's just barely a scenario to keep these, and it likely isn't worth supporting: If I ran a 12 userland with a 14 kernel, I wouldn't be able to capture panics with this. However, one can selectively copy over a statically linked dumpon(8) to work around this should even that unlikely scenario arise. And I'm not sure how well the other administrative tools would cope anyway, so maybe that's no longer possible...

Precisely. I assume this is why the gone_in() annotations were added, for all these reasons; the commit message will better reflect this.

You would need at least an updated libkvm if not more in order to read a minidump produced by a 14 kernel, so yeah, I bet one would encounter more glaring issues first with such a setup.

This revision is now accepted and ready to land.Apr 14 2022, 6:48 PM
This revision was automatically updated to reflect the committed changes.