Date: Sat, 16 Mar 2019 14:28:27 +0100 From: Maxime Villard <m...@m00nbsd.net> Message-ID: <17ba7752-793d-d352-09ef-c43676d2f...@m00nbsd.net>
| Ok. So you believe that dead wood should hold back all of the development | process? No, but only if it truly is dead. Just because you don't see the utility does not make it so. | I believe you misread, You're right, I did, I just skimmed the patch you made, and did not look carefully enough. But the point is unchanged. There was a bug. When it was reported it was fixed. That's what's supposed to happen, and isn't evidence of anything being wrong. | As I said, this is one example among others. Yes, so you keep saying. But those others are in one of three groups. Either they're like this one, and have now been fixed, in which case they're irrelevant. Or they have been reported, and no-one is fixing them (which can happen for many reasons) in which case you should just supply the PR numbers for all of these problems, that might stir some activity around some of them, or it might not. Or you know of bugs that no-one else knows about, and you're just sitting on. That would be all on you. | And yes, this bug was introduced because the API was being replaced, | and yes, the person who committed this code likely did all he could | to make sure no bug was introduced, and yes, he did still add a bug | because a certain number of these compat layers are dead wood that | can't be tested, not even by those who claim they are so important. But this one (the one above) is in code that is apparently not dead wood, and that people do use. But that people use code does not mean that every bug is going to be encountered - bugs often stay undetected for a very long time, just because no-one happens to do whatever it takes to trigger them. | In fact, all of your "rules" were respected, yet the bug still inevitably | came in. Why is that? Because bugs happen. ALways have, always will. The only way to avoid bugs in NetBSD would be to shut it down. Delete everything. Then it would have no remaining bugs. It wouldn't be useful though. But it would end this discussion! | This is what happens with dead wood, you just don't want to face it. But, apparently, COMPAT_ULTRIX isn't dead woood, and people still use it. And that's what the one bug (now fixed bug) you have cited, that I have seen, was in. | And I'm not even speaking for myself, you just have to see the answers to | "does anyone use compat_xxx". You can even try as hard as I did, with | COMPAT_SVR4, ask on several different mailing lists, repeatedly, over and | over. No one ever answers. And most likely no-one ever will. You cannot get answers that way, the people on our mailing lists mostly only care about this week's (or this year's anyway) code, and wouldn't consider running anything that didn't come from available sources. But NetBSD (and all the other systems) are used by more people that that. I know of several NetBSD users who would never go anywhere near any of our mailing lists ... the closest they ever come is looking at the web site from time to time to see if there's been a new release. The only way to find out whether something is being used is to remove it from the default config, but leave it relatively easy to turn back on again (and ideally ask - where it is to be enabled - for anyone who needs it, and enables it, to send e-mail to x...@netbsd.org) That was done with the removal of the ISA graphics card support (I mean, who uses ancient PCs, new ones are cheap, and much better...) but then it turned out that someone still did. | If UVM was of questionable utility, Everything is of questionable utility. We used to not have UVM so we know it is possible to survive without it. Note I am not questioning keeping that, just your certainty that you know everything that is required, and useful, and that everything else is "dead wood" and should be deleted. | I stated my point clearly and logically, about why certain things have | legitimate reasons to go away, Sorry, I must have missed that. All I ever seem to see is that xxx is unmaintained and full of unspecified bugs, and that obviously no-one cares, and so we should delete it. That's not an argument for anything. Also note I am not arguing for keeping anything in particular, just against your reasons for deleting it. If some functionality really is of no further use (and some of the drivers that were recently removed seem to be in that category) then by all means, we should remove it. But that you don't use it, and no-one on the mailing lists admits to using it, does not mean no-one uses it. You need to move much more slowly. I'd suggest perhaps for something that we believe might be of no further use, then if it is userland, we just unlink it from the build, but leave the sources in the tree, with a mk.conf option to cause it to be included, and if it is kernel (like most of what you're concerned with) then we just remove it from the default kernel config. And we do that for -9 (whatever is the next release after the issue is raised). Then if by the time we're getting ready to release -11 (nb: not -10, not everyone updates to every new release, and in fact waiting for -12 might be safer) - that is, 2 or 3 major releases after that first step, if no-one has complained, or asked why it isn't (seemingly) available any more, we might delete the old code. If there are questions/complaints, then we perhaps (in addition to telling people how to restore the omitted functionality) restore it in the next point release(s). Yes, this makes it a long slow, and tedious process (involving a bunch of additional work) to delete something - but so it should be. Someone spent a lot of time making the thing you want to discard work in the first place. kre