<div dir="auto"><div><br><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Wed, Mar 4, 2020, 13:23 Mike Snitzer <<a href="mailto:snitzer@redhat.com">snitzer@redhat.com</a>> wrote:</div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
These versions are for userspace's benefit (be it lvm2, cryptsetup,<br>
multipath-tools, etc). But yes, these versions are bogus even for<br>
that -- primarily because it requires userspace to know when a<br>
particular feature/fix it cares about was introduced. In addition: if<br>
fixes, that also bump version, are marked for stable@ then we're quickly<br>
in versioning hell -- which is why I always try to decouple version<br>
bumps from fixes.<br></blockquote></div></div><div dir="auto"><br></div><div dir="auto">Yeah, I think the drm people used to have a version number too, and it's not just fixes getting backported to stable - it's distro kernels taking changes for new hardware without taking other parts etc.</div><div dir="auto"><br></div><div dir="auto">So the versioning ends up not ever working reliably anyway - the same way that you can't use the kernel version number to determine what system calls are available.</div><div dir="auto"><br></div><div dir="auto">So versions can not ever be anything more than informational, and it's usually just very confusing to have multiple different version numbers (ie "I'm running kernel v5.4, and my driver abc version is 1.4.2a" is *not* in the least helpful).</div><div dir="auto"><br></div><div dir="auto"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Others have suggested setting feature flags. I expect you'd hate those<br>
too. I suspect I quickly would too given flag bits are finite and<br>
really tedious to deal with.<br></blockquote></div></div><div dir="auto"><br></div><div dir="auto">It also leads to some people then thinking it's ok to remove features (perhaps to reimplement them differently) if they only clear the feature bit.</div><div dir="auto"><br></div><div dir="auto">And no, it's not how kernel interfaces work. We keep the interfaces even if the internals change. </div><div dir="auto"><br></div><div dir="auto">So I've been suggesting that people just freeze the version, or remove the interface entirely is possible.</div><div dir="auto"><br></div><div dir="auto">Because otherwise it's just a source of problems, where user space might refuse to do something that the kernel supports because of some silly version check...</div><div dir="auto"><br></div><div dir="auto"> Linus</div><div dir="auto"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
</blockquote></div></div></div>