Thread (4 messages) 4 messages, 2 authors, 2012-10-01

Re: ABI change for setitimer(2) [in feature-removal-schedule.txt]

From: Michael Kerrisk <hidden>
Date: 2012-10-01 08:03:51
Also in: lkml

On Sun, Sep 30, 2012 at 7:51 PM, Linus Torvalds [off-list ref] wrote:
On Sat, Sep 29, 2012 at 11:30 PM, Michael Kerrisk
[off-list ref] wrote:
quoted
quoted
I think the whole "let's deprecate this six months into the future" is
unnecessary. Yes, it may well be worth doing for something with bigger
consequences, but I think that for something like this, it's just
overthinking the issue.
When it comes to ABIs, I think there *is* value in a lead time on the
change. This particular example is a good example of why.
No. This whole example is a good example of the fact that YOU SHOULD
NOT MAKE ABI CHANGES.

I don't understand why this seems to be so hard for people to understand.

There are exactly *zero* reasons to change the ABI for its own sake,
and this whole thread is a wonderful example of how F*CKING STUPID it
was to even consider it.
[...]
Quite frankly, our most common ABI change is that we don't even
realize that something changed. 
(Yes.)
And then people may or may not notice
it. And we've had cases where the same system call returned
*different* things for different subsystems, and we tried to make it
at least internally consistent.

But the "premeditated ABI change just for the reason of an ABI
change"? It's bullshit. And it's bullshit whether it shows up in
feature-removal or not.

(The whole feature-removal file is BS, for that matter, but that's a
different issue).

SO STOP DOING ABI CHANGES. WE DON'T DO THEM.

The absolute worst thing a kernel can do is "change the user-level
interfaces". It has to be done occasionally (see above), and sometimes
we do it by mistake, but anybody who does it on purpose "just because"
should not be involved in kernel development (or library development
for that matter).
Agreed. As I pointed out, the reason for this proposed change is 
dubious at best. There is no "spec" on this point. And though I 
didn't mention it (since it seemed obvious), no one has mentioned 
any user-space hardship because of current behavior.

Given the choice of (1) no change, (2) making the proposed dubious 
change, or (3) making a change to make Linux consistent with other 
systems, (1) is obviously the best in this case. The only thing that 
surprised me was that you and Thomas merged this proposal into 
feature-removal-schedule.txt, which seemed to indicate an agreed 
intent to change the ABI (i.e., discarding option (1)), and
if so, I wanted to point out that proposed direction was wrong.

Patch follows.

Thanks,

Michael
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help