Gentoo Archives: gentoo-amd64

From: Duncan <1i5t5.duncan@×××.net>
To: gentoo-amd64@l.g.o
Subject: [gentoo-amd64] Re: Boycott Systemd
Date: Mon, 22 Sep 2014 19:47:05
Message-Id: pan$67b64$6be00834$6527c356$d6f0ccba@cox.net
In Reply to: Re: [gentoo-amd64] Re: Boycott Systemd by Frank Peters
1 Frank Peters posted on Mon, 22 Sep 2014 12:21:42 -0400 as excerpted:
2
3 > On Mon, 22 Sep 2014 06:00:20 +0000 (UTC)
4 > Duncan <1i5t5.duncan@×××.net> wrote:
5 >
6 >
7 >> As for the loss of the usb static device nodes, did you (Frank) file a
8 >> bug about it breaking your userspace? That's one of Linus' most firm
9 >> kernel rules -- you do *NOT* change the userspace/kernelspace API/ABI
10 >> and break userspace. However, there's a known exception. Rather like
11 >> the old philosophical question as to whether if a tree falls in the
12 >> forest and nobody hears/sees it, did it actually fall at all, if nobody
13 >> notices the userspace/kernelspace ABI breaking, did it really break at
14 >> all?
15 >>
16 >>
17 > Bug reports won't be considered. The removal of the kernel scanner
18 > module was well-planned and deliberate. The new way is to use libusb to
19 > access the scanner from user space. If it affects me then it affects
20 > countless others (and there are many forum posts about this issue) but
21 > these changes will not be reversed.
22
23 Perhaps, but if nobody bugged it on the don't break userspace issue...
24
25 Even if the decision didn't change, such a discussion would have been
26 useful, as at minimum it would have helped delimit the boundaries of that
27 rule, and may well have encouraged being somewhat less bold in its
28 pronouncements, perhaps effecting a footnote or the like where
29 appropriate, etc.
30
31 FWIW, I have a similar personal parallel, which illustrates the work-
32 around concept rather nicely. I was running a first-gen AMD Opteron
33 machine for 8+ years, upgrading it to dual-cores and upping the memory
34 over time. Eventually the mobo died (bulging/bad capacitors), but well
35 before that, some kernel broke lm_sensors for some of its temp sensors,
36 etc.
37
38 Turns out there was a problem with that and other functionality claiming
39 the same I/O addresses that was common in hardware of that generation and
40 the kernel was updated to be stricter about that, disabling one or the
41 other so they didn't interfere. But either I didn't happen to use
42 whatever else was interfering, or whatever other claim on that IO space
43 there was wasn't actually used on my hardware, or something. Of course
44 that didn't change the fact that lm_sensors, a userspace program, was now
45 broken.
46
47 What *DID* change it was the fact that when they made that change, they
48 added a kernel command-line option to be less strict with those
49 reservations, effectively returning to the old functionality. When this
50 was pointed out on the bug I filed, I added that option to my kernel
51 commandline, and sure enough, lm_sensors functionality was back to
52 normal. =:^)
53
54 Other times they make it a kernel option, enabling deprecated procfs or
55 sysfs interfaces, for instance.
56
57
58 The point being, if userspace was broken because of the change and
59 somebody called them on exactly that, they'd have had to respond in
60 /some/ way or other, and very likely the functionality would have
61 remained available as a result, even if it took enabling some obscure
62 kconfig option or adding a kernel commandline option to get it back.
63
64 If not, then precedent would have been set and we'd have an established
65 line on the limits of that rule.
66
67 But someone would have had to file that bug in the first place, in
68 ordered for that to happen. Now it's likely too late, and the "if it
69 breaks and nobody reports it, did it actually break" clause, along with
70 the "other software now depends on the new behavior" clause, would likely
71 be invoked, and unless the software broken was rather high profile, it's
72 unlikely you'd get a change.
73
74 --
75 Duncan - List replies preferred. No HTML msgs.
76 "Every nonfree program has a lord, a master --
77 and if you use the program, he is your master." Richard Stallman