|
|
Subscribe / Log in / New account

A plan for the kernel Bugzilla

By Jake Edge
October 11, 2022

The kernel's Bugzilla instance is largely unloved and ignored, at least as a bug-reporting tool for the bulk of the upstream kernel. At the recent Maintainers Summit, Bugzilla was discussed during the regression-handling session led by Thorsten Leemhuis. In a followup to that discussion, Leemhuis posted some ideas for improving the state of bugzilla.kernel.org to the ksummit-discuss mailing list recently; the resulting discussion helped clarify a number of problem areas for it—and for the Bugzilla tool itself.

In his post, Leemhuis noted that those present at the summit expressed a fair amount of dissatisfaction with the kernel Bugzilla, so his goal was to propose a few different fixes to make things better. The main complaints during that session were effectively that bug reports via email work better for most kernel developers; there was also concern expressed that the Bugzilla project is unmaintained at this point. Part of his Kernel Summit session (YouTube video) on regression tracking was another place where many of the same problems with Bugzilla were raised. But there are kernel developers (and kernel subsystems) that use and rely on Bugzilla, so the ultimate "solution"—dropping the bug-reporting tool—is not really a viable option even though it is a popular sentiment.

Leemhuis's suggested path is to make it clear that most of the kernel does not use or pay attention to what gets submitted to Bugzilla. There are only 20 of around 2500 entries in the kernel MAINTAINERS file that specify Bugzilla as the place to post bugs; the rest either point to email addresses for mailing lists and maintainers, or to external bug trackers. Part of the problem from the user side is that there are "lots of bug and regression reports (even good ones!)" that never get a reply from a developer, as his analysis back in April showed. His goal is to redirect most of these reports to the proper places, or at least to make it clear to reporters that their bug may well be ignored.

He tries to shepherd bugs that look like regressions to the proper places and, he noted: "Artem S. Tashkinov also looks into some (all?) reports and tries to help reporters." But Tashkinov seems to have a rather different view of the path forward—one that did not sit well with many of the commenters in the thread. He suggested that instead of minimizing the use of Bugzilla, it should be expanded. Perhaps the most controversial piece was the idea that subsystem maintainers would be required to participate or, at least, that bugs reported for a subsystem be automatically sent to the appropriate mailing list(s). Furthermore:

Kernel bugzilla must be opt-out, not opt-in. To be honest I'd [automatically] add everyone who's [committed] to the kernel in the past 6 months and of course if new developers commit to the kernel, I'll add them as well. Only if they _hate_ getting bugzilla emails, they are free to unsubscribe.

Tashkinov noted that the Bugzilla instance is run by the Linux Foundation (LF), which is a well-funded organization; "The fact that no one is seriously working on it [the kernel Bugzilla] looks shameful and sad." But Konstantin Ryabitsev, who works for the LF on infrastructure for Bugzilla and the rest of kernel.org, pointed out that the Bugzilla software is old and unmaintained at this point; the infrastructure team is keeping it limping along, but that may not last forever. There is the possibility of the LF funding work in this area, he said, but there needs to be agreement within the kernel community on what it should look like, "otherwise we'll just be replacing an old and rusty dumpster on fire with a new and shiny dumpster on fire".

Herding bugs

The underlying problem, according to Ryabitsev, is the lack of someone to ride herd on the bug reports, but that is difficult to solve:

Being a bugmaster is a thankless job that leads to burnout, regardless of how well you are paid. Everyone is constantly irate at you from both ends -- the users are annoyed because their stuff doesn't work, and the maintainers are annoyed because you keep yanking them to work on dull problems that require a ton of back-and-forth with people who aren't capable of applying patches and booting custom kernels.

That led Tashkinov to recommend a wholesale shift to GitLab, which he sees as solving most of the problems that both he and Ryabitsev identified. But Greg Kroah-Hartman said that switch is not really an option either:

That's a non-starter for a wide range of reasons, not the least being you are trying to solve a "we have no one who wants to wrangle bugs in bugzilla" problem with "move all of our code hosting infrastructure to a totally different thing that can't even provide the basic things that we have today".

Sorry, not going to happen, gitlab is not the solution here.

Ryabitsev concurred: "you will still have all the exact same problems as long as nobody is in charge of handling incoming bugs". He also mentioned the danger of turning over a community resource to a for-profit company that might shift gears after "being swallowed by some $ENTITY_NOBODY_LIKES". Tashkinov replied with some cogent complaints about using email versus Bugzilla for tracking bugs; email is harder to search for existing bug reports, harder to generate reports of open bugs from, and not really suitable for large attachments (log files, configuration information, etc.) that are often needed as part of a bug report or discussion. Ryabitsev acknowledged those problems but said that the approach that is being taken is one that does not require a wholesale shift in workflows:

We've recognized this a while ago, which is why our efforts have been targeted at query-based message feeds. Hence, tools like lore.kernel.org and lei. It's a work in progress, for sure, but it doesn't require any "everyone must switch workflows today" kind of coordination, and avoids introducing single points of failure by making it easy to replicate everything to mirrored systems.

The current tooling is not adequate for tracking bugs, Laurent Pinchart said, though email is not terrible for bug reports themselves. But the tools are a side issue because it is the process that needs work: "it's quite pointless to improve the tooling if we don't first improve the process, and find a way to allocate people and time to handling bug reports". Once the process is established, the tooling will come, "be it through bugzilla or something else".

In another part of the thread, Pinchart noted that while the email standards might be sufficient to use for bug tracking, today's email clients are not up to the task. Meanwhile, a better bug tracker does not actually solve the underlying problems:

The huge elephant in the room is that most maintainers are overworked. Whether a bug report arrives in my mailbox as an e-mail straight from the reporter or from a bug tracker will make very little difference if I don't have time to look into it (I would even argue that bug trackers are even worse there: if I'm really short of time, I'm more likely to prioritize replying to e-mails instead of having to open a link in a web browser).

There certainly can be problems figuring out where to send bug reports, as Tashkinov complained about. Leemhuis acknowledged the problem, but pointed to the "Reporting issues" document as part of the solution; in the end, users should make their best guess following those guidelines and post the report there, which will hopefully lead to suggestions of where else it could be reported. Tashkinov said that users will not read the document, nor will they be able to follow its suggestions if they did. The current system is not perfect, clearly, but, as Ted Ts'o pointed out, it is volunteers who are trying to address these bugs; for those who need it, there are other options available:

Artem, it seems to me that you are hoping that volunteers will provide a commercial level of support --- and that's just never going to happen.

The users vastly outnumber us developers by orders of magnitude, and if someone needs a huge amount of hand-holding, maybe they should be paying for a support contract with Red Hat, or Suse or Canonical, or CIQ.

But Tashkinov renewed his call for adding developers to Bugzilla in order to turn that bug tracker into an opt-out tool, rather than its current opt-in nature. That was not a popular suggestion, as might be guessed. Kroah-Hartman called it "a sure way to get lots of people instantly mad at you and have them add the address to their filters". Ryabitsev said that asking "senior engineers to do first-line QA" is the wrong way to go about it; while Tashkinov maintains that it is easy for people to unsubscribe from Bugzilla, Ryabitsev said that there is an even easier path:

Please listen to the actual maintainers telling you that this won't work and will just lead to bugzilla being added to everyone's block list (that's even faster than logging in to bugzilla, finding where to change the default assignee], etc).

Tashkinov reported that there are around two dozen bugs reported in Bugzilla each week, but claimed that reporting bugs to the various mailing lists is far less effective. Geert Uytterhoeven pointed out that more than 40 bugs are getting fixed per day in the mainline (based on "Fixes:" tags), almost all of which followed the mailing-list path rather than being reported on Bugzilla.

At least twice in the thread, Tashkinov pointed to a specific kernel Bugzilla entry as an example of a bug that could not be tracked and fixed via the mailing lists. It took over two years and more than 250 messages to resolve it, which would be quite hard to manage via email. However, that bug report is hardly a model of collegial collaboration either. The tracking may well have worked better, but some of the participants certainly did not feel all that well-treated along the way.

A way forward

These are hard problems to solve, but some kind of bug-triage person (or better yet, team) would seem to be the biggest hole at the moment, at least for some commenters. Leemhuis expressed some interest in doing more of that (he already does it for regressions), though he, like many others, is lacking for time to do so; Slade Watkins has also volunteered to help. Leemhuis is not convinced that a bug liaison is necessarily highest on the priority list as he thinks that more should be done to help guide bug reporters through the process of creating good reports and getting them to the right places.

Setting the expectations of Bugzilla reporters, as Leemhuis suggested in his initial mail, would also help. That is only "some band-aids" being applied to the problems, though, he said. Ryabitsev posted a rather more ambitious plan that revolves around a triage team and a lot more automation. It was met with general agreement, though Leemhuis wondered about relying on Bugzilla going forward:

Your plan would afaics mean that we invest further into a software abandoned by its upstream and already becoming more and more of a maintenance burden. That investment would also further increase our dependency on that software by establishing workflows that rely on it. Is that really wise at this point? Wouldn't it be better to spend that time and effort to build something better that is more future proof?

But Ryabitsev said that keeping Bugzilla alive for kernel work might actually help to revive the project more generally since it is used by others: "Red Hat uses bugzilla, and so does OpenSuse, so there's a pretty good core of well-funded companies that would be in a position to help keep bugzilla going if it's looking like the platform is still alive". But meanwhile, he wants to try to ensure future-proofing by keeping it largely independent of the web application itself:

I'm hoping that by keeping the bulk of this exchange relying on established decentralized end-to-end messaging, we won't be painting ourselves into the corner quite as much as with a tool that requires all interaction to happen strictly via the web interface.

The alternative is to hire the folks behind patchwork to write "bugwork".

There are several steps to Ryabitsev's plan, but "the hard part will be keeping a team of people who are willing to do the bug triage work". There are a few people interested in helping out, so that is a starting point. No one has really complained about that path and Tashkinov said that it "looks fabulous". It will take some time to get there, but there does seem to be a plan to rework the kernel Bugzilla in a way that will hopefully improve it—perhaps to the point where some of the current skeptics will engage with it down the road.



to post comments

There are no silver bullets here

Posted Oct 11, 2022 22:50 UTC (Tue) by pizza (subscriber, #46) [Link]

Instead, it's going to take a lot of lead:

https://techcrunch.com/2011/10/25/lead-bullets/

As the TFA says, it's not a problem of tooling:

> "it's quite pointless to improve the tooling if we don't first improve the process, and find a way to allocate people and time to handling bug reports"

Absent a considerable boost in the resources to allocate to wrangling the bugs on an ongoing basis, nothing will change.

A plan for the kernel Bugzilla

Posted Oct 11, 2022 23:49 UTC (Tue) by Wol (subscriber, #4433) [Link] (4 responses)

Wouldn't adding maintainers wholesale to bugzilla be a pretty serious GDPR violation? Dunno quite what could be done about it, but if bugzilla is owned by the LF, it's quite likely they could be forced to take the whole lot down.

Certainly it's a pretty blatant case of spamming. Even as a volunteer (nothing to do with Linux), we very recently went through our mailing list (e- and snail-) cleaning it up and making sure we only had people on it who wanted it to be. This was precisely to avoid any GDPR problems.

Cheers,
Wol

A plan for the kernel Bugzilla

Posted Oct 12, 2022 10:18 UTC (Wed) by smurf (subscriber, #17840) [Link] (3 responses)

The GDPR is like a large shiny hammer. Please don't use it on screws whose threads need fixing.

A plan for the kernel Bugzilla

Posted Oct 12, 2022 10:31 UTC (Wed) by Wol (subscriber, #4433) [Link] (2 responses)

Yes. But scraping email addresses and adding them to some sort of mailing list is a large rusty nail that needs dealing with. A large shiny hammer is an extremely useful tool for that!

(Don't get me wrong, if people WANT to be on the list, great. Just don't add them without getting permission because you think they should be getting all this junk mail ...)

Cheers,
Wol

A plan for the kernel Bugzilla

Posted Oct 19, 2022 15:59 UTC (Wed) by harisphnx (subscriber, #139363) [Link] (1 responses)

I am guessing having your name in the maintainers list grants some permission to. random individuals and the Linux kernel community to spam you with issues. Whether this would also apply to this mass addition, I am unsure.

A plan for the kernel Bugzilla

Posted Oct 19, 2022 17:50 UTC (Wed) by Wol (subscriber, #4433) [Link]

I think it very clearly doesn't.

Even scraping the addresses and sending a "subscribe" request which the maintainer needs to acknowledge is extremely dodgy.

As a "business" entity, bugzilla needs MY permission if they want to send me emails. And it's opt IN, not opt out.

If you give them permission, on my behalf, without my knowledge, you are dropping them in it; and if they find out you did it, they will have every reason to sue you to oblivion to pay for the mess.

And stuff the legalities, it is just plain unsociable to make work FOR OTHER PEOPLE without paying any consideration to whether they are even capable of undertaking that work! The only reason spam isn't a bigger problem than it is is that most of it is deleted on sight by ISPs - do you really want bugzilla to be classified as a spammer and denied even to the people who want it?

Cheers,
Wol

A plan for the kernel Bugzilla

Posted Oct 12, 2022 1:15 UTC (Wed) by jhoblitt (subscriber, #77733) [Link] (6 responses)

I would be willing to wager that the vast majority of professional kernel devs are using a company bug tracker to organize their task lists. I do not understand the kernel community's insistentance that bug reporting and code review via email is superior to using tooling designed specifically for those tasks.

A plan for the kernel Bugzilla

Posted Oct 12, 2022 8:32 UTC (Wed) by LtWorf (subscriber, #124958) [Link] (3 responses)

Those tools are designed for managers, not for developers.

A plan for the kernel Bugzilla

Posted Oct 17, 2022 23:13 UTC (Mon) by edeloget (subscriber, #88392) [Link] (1 responses)

> Those tools are designed for managers, not for developers.

I beg to differ ; a good ticketing/reporting tool is extremely valuable for the developpers - I would even argue that it's more important to developpers than to managers. That's even the reason why some commercial systems were able to be so prevalent in the area: they spoke to developpers, not to managers.

Unfortunately, the state of affair in the open source world is quite depressing in that regard and the fact that we still rely on Bugzilla in quite telling.

A plan for the kernel Bugzilla

Posted Oct 18, 2022 12:41 UTC (Tue) by pizza (subscriber, #46) [Link]

>> Those tools are designed for managers, not for developers.
> I beg to differ ; a good ticketing/reporting tool is extremely valuable for the developpers

These two statements are not in conflict.

I think it's fair to say that the tools that tend to get deployed are done so for the managers' benefit, and the features/customizations are to benefit said managers.

A plan for the kernel Bugzilla

Posted Oct 18, 2022 17:10 UTC (Tue) by marcH (subscriber, #57642) [Link]

> Those tools are designed for managers, not for developers.

They're of course meant to be a place where both meet, which is why some developers avoid them.

The most common usage conflict between these two groups is not really a design issue but about "wontfix" and the mere definition of what is an "open" bug. For managers, an "open" bug is usually something to get done; otherwise it's closed as "wontfix". For developers, an "open" bug is more frequently something that can still be reproduced and that can stay "open" forever.

A plan for the kernel Bugzilla

Posted Oct 12, 2022 8:48 UTC (Wed) by neilbrown (subscriber, #359) [Link] (1 responses)

> I would be willing to wager that the vast majority of professional kernel devs are using a company bug tracker to organize their task lists.

Only because we are required to. I use a file called "todo" to organise most of my stuff, including which bug-tracker issues I still need to look at, though I also have an email saved-search for outstanding issues.
I would much rather get an email that I can reply to via email. Actually one of our support team does tend to just send me email. He usually gets a quick response... It is so nice not having to use the lame editor embedded in the web browser..... if only I could reply to lwn via email....

> I do not understand the kernel community's insistentance that bug reporting and code review via email is superior to using tooling designed specifically for those tasks.

Because those tools are designed for how someone else performs those tasks, not for how I perform them. We are all different.
Email is free-form, so we can each use it how we please. Good email clients are programmable so we can add short cuts for the tasks we personally want to automate. (My email client is embedded in a general purpose editor - where it should be).

A plan for the kernel Bugzilla

Posted Oct 12, 2022 14:24 UTC (Wed) by claude.bing (subscriber, #127877) [Link]

> Email is free-form, so we can each use it how we please.

One of the benefits of using some sort of bug tracker is keeping data points consistent over time. Digging through many e-mails to find the historical context of a bug is time consuming and things can get missed. Of course, this requires diligence on the part of the bug reporter to provide correct data.

We use both approaches at my company, they each have their drawbacks but overall I think the tracker approach is better for bug research.

A plan for the kernel Bugzilla

Posted Oct 12, 2022 2:36 UTC (Wed) by flussence (guest, #85566) [Link] (1 responses)

The status quo has a knock on effect: people get ghosted on the kernel BZ, give up and take their problems to their distro bug tracker (in the best case - other outcomes include getting buried on StackOverflow and adding to the corpus of "12 year old unanswered forum threads").

And then in the long term, you end up with distro patchsets filling up with general bugfixes which everyone ought to have that take an extra few release cycles to go upstream. It's not doing anyone a service.

A plan for the kernel Bugzilla

Posted Oct 12, 2022 16:23 UTC (Wed) by mfuzzey (subscriber, #57966) [Link]

Yes but surely people who run distro kernels (the majority of Linux users) *should* be reporting any problems to their distro rather than the upstream kernel, same as for any package really.

That way the distro maintainers do the prefiltering, hand holding, helping to obtain logs etc and, if necessary, pass the problem upstream (probably by e-mail to the appropriate subsystem maintainer + mailing list). This has the advantage that the upstream kernel gets better quality bug reports written by more experienced distro kernel maintainers who should do a better job of describing the problem than most users and also provides the distro users with a bug tracker in the "preferred format" for that distro - a user who wants to report a bug shouldn't need to navigate between multiple different bug trackers depending on the component. Indeed the component involved may not always be obvious initially.

Of course, people who are building their own kernels still need to go directly to upstream but that's probably fairly rare these days, most people who do that are probably also kernel developers themselves in some capacity (not necessarilly uptstream but most embedded Linux uses custom built kernels for example) so should at least be capable of writing decent bug reports.

Yes the bugfixes do need to go upstream eventually not languish in disto specific patches but I would say that's a a part of the distro maintainers job.

A plan for the kernel Bugzilla

Posted Oct 12, 2022 2:50 UTC (Wed) by luzy (subscriber, #90204) [Link]

If people want email bug reports, all BZ reports and comments should just be CCed to the mailing lists.

The best way to report a bug

Posted Oct 12, 2022 4:14 UTC (Wed) by alison (subscriber, #63752) [Link] (1 responses)

Humans like to help others, but they love correcting one another.. The best way to induce knowledgeable contributors to fix a bug is to post a description of the problem to a mailing list along with patch that implements an inadequate, brute-force solution. Reading the mostly working but ugly or inadequate code will tremendously irritate someone who knows the correct solution, who will then respond by posting a proper bug fix. I have been successful with this approach just this summer.

The best way to report a bug

Posted Oct 12, 2022 10:27 UTC (Wed) by alanjwylie (subscriber, #4794) [Link]

https://meta.wikimedia.org/wiki/Cunningham%27s_Law
"the best way to get the right answer on the internet is not to ask a question; it's to post the wrong answer."

A plan for the kernel Bugzilla

Posted Oct 12, 2022 4:59 UTC (Wed) by IanKelling (subscriber, #89418) [Link]

Bugzilla mailing lists post: Upcoming Bugzilla Releases, and Immediate Help Wanted

https://lists.bugzilla.org/pipermail/developers/2022-Augu...

A plan for the kernel Bugzilla

Posted Oct 12, 2022 7:05 UTC (Wed) by KaiRo (subscriber, #1987) [Link]

I'm a bit perplexed why nobody in the discussions seems to have mentioned that Mozilla is also using Bugzilla, has quite some activity and at least some kind of maintenance on their instance.

FreeBSD is also using bugzilla...

Posted Oct 12, 2022 8:27 UTC (Wed) by opsec (subscriber, #119360) [Link]

and I think it's quite useful.

A plan for the kernel Bugzilla

Posted Oct 12, 2022 9:07 UTC (Wed) by nim-nim (subscriber, #34454) [Link] (3 responses)

Devs may hate such trackers but from a user POW they are a godsend. You get a stable URL where you can attach all the traces and logs someone requested to diagnose the bug, instead of multi-month mail attachment hell where every dev expects you to dig in your mail history to resend the same files again and again.

A plan for the kernel Bugzilla

Posted Oct 12, 2022 9:35 UTC (Wed) by neilbrown (subscriber, #359) [Link] (2 responses)

Having a place to collect these attachments is certainly a good idea.
Using that place to host the conversation about the attachments is not necessarily so good.

The place could scan attachments for particular patterns and suggest email lists that might be relevant.

If you create an "issue", upload your details, get an issue number, then send an email to $MAILLIST with [issue-42] in the subject, then all emails with that in the subject could be collected with your attachments. All that could be quite useful.

You can add anyone on a cc of your emails, new people could join the conversation easily - and that is all done via email.

Possibly the email-list-server could add the "See also: URL" to any email with an [issue-XXX] subject.

There is certainly room for useful automation. Trying to squeeze everything into a single closed-system tool is not necessary.

A plan for the kernel Bugzilla

Posted Oct 13, 2022 1:12 UTC (Thu) by jhoblitt (subscriber, #77733) [Link]

And if the system then sent the email to the list for you... You would have a modern ticketing system and this is how Jira is used at my $day_job.

A plan for the kernel Bugzilla

Posted Oct 25, 2022 7:59 UTC (Tue) by fest3er (guest, #60379) [Link]

Years ago, I reported an oddity I observed, and later reported a minor 'defect' in how the kernel handles file descriptors and suggested a way to improve certain FD 'operations'. I don't know if I could even find them any more.

There should be two places. One suitable place to keep track of bugs and a different suitable place to triage and discuss bugs.

A bug tracker should really contain only a few things, such as:
- what was reported, and who done did the reporting
- a way to initiate an email discussion
- what the problem turned out to be after triage, and its classification(s)
- what the solution was, and who solved it
- final resolution

Bug discussions should take place in email, a medium designed for conversations and discussions.

Bugs should be tracked in a proper bug tracker, that is, a system designed to facilitate managing bugs (developers are just as responsible for managing individual bugs as managers are for managing collections of bugs).

Trying to squeeze everything into a single closed-system tool is counter-productive.

Soooo, about Red Hat and Bugzilla...

Posted Oct 12, 2022 14:45 UTC (Wed) by mattdm (subscriber, #18) [Link]

As part of our continued 3 year major Red Hat Enterprise Linux release cadence, RHEL 9 development is starting to wrap up with the spring 2022 release coming soon. That means planning for the next release will start in earnest in the very near future. As some of you may know, Red Hat has been using both Bugzilla and Jira via issues.redhat.com for RHEL development for several years. Our intention is to move to using issues.redhat.com only for the major RHEL releases after RHEL 9.

From "RHEL moving to issues.redhat.com only long term" on Fedora's devel mailing list.

And I wrote a followup with some of my thoughts: The Future of Bugzilla in Fedora. Tl;dr: many similar issues as in the above conversation. Triage is a big deal. "Bugs" aren't really the best place to start -- it's better to send people to a help forum first, file bugs second. GitLab might be an option for some things (for us, having bugs alongside package repos would be great), but problematic on the open-core thing. Not really sure what to do.

OK if none of the targets 'likes' it, why keep it running?

Posted Oct 12, 2022 15:46 UTC (Wed) by smoogen (subscriber, #97) [Link] (2 responses)

What if the kernel bugzilla was turned off on January 1st 2023. What would happen to kernel development? Would developers start getting more burned out because people are directly emailing every developer listed in git? Would development improve because there is one less burning hatred they have for the outside world :)?

OK if none of the targets 'likes' it, why keep it running?

Posted Oct 13, 2022 7:28 UTC (Thu) by nevets (subscriber, #11875) [Link] (1 responses)

Turning off Bugzilla would piss off those of us that still use it, but to your point about too many emails, the Linux kernel mailing list gets over 1000 emails a day. I personally get over 100 kernel specific emails a day, so your answer is "No".

OK if none of the targets 'likes' it, why keep it running?

Posted Oct 13, 2022 7:37 UTC (Thu) by nevets (subscriber, #11875) [Link]

I forgot to add that if all current Bugzilla submissions were to go to the mailing lists and maintainers today, it would still be within the noise of the flow of current emails.

A plan for the kernel Bugzilla

Posted Oct 12, 2022 17:00 UTC (Wed) by iabervon (subscriber, #722) [Link]

My thought is that Lore ought to have a page which shows an email discussion of a bug like Bugzilla (or Jira or something modern) shows bugs. Lore is the system that tracks discussions that happen in email for the benefit of people who aren't using their custom email setup that optimizes their workflow; it ought to present these particular sorts of discussion in a way that's as useful as possible to the audience who would use it.

A plan for the kernel Bugzilla

Posted Oct 13, 2022 2:16 UTC (Thu) by pabs (subscriber, #43278) [Link] (1 responses)

I'm reminded that Debian's debbugs is based on email.

A plan for the kernel Bugzilla

Posted Oct 13, 2022 23:51 UTC (Thu) by xtifr (guest, #143) [Link]

And is used by the FSF as well. Which is why Debian's "reportbug" tool and Emacs's "M-x report-emacs-bug" command have so much in common. :)

A plan for the kernel Bugzilla

Posted Oct 17, 2022 13:52 UTC (Mon) by taladar (subscriber, #68407) [Link] (8 responses)

I wonder how many of the developers are overworked because of the email workflow.

Emails are useful for many things but keeping information about one topic separate from information about another so you can still easily find it in the future is certainly not one of them.

Email also is far from ideal for remembering which tasks you still have to work on or for assigning tasks to one of a group of people.

To be honest the whole discussion always feels like the entire kernel development community is just very stuck in their ways and unwilling to attempt changes. And I say that as someone who also largely lives in the terminal for my workflows.

There might also be some fear involved that making the process more accessible will lead to more bug reports.

An off-the-shelf issue tracker might not exactly fit their needs but for such a large community it should be possible to design a software that fits their requirements the way Linus did with git back in the day, e.g. have something with an API that can be used from various automation tools and also with a web interface to use manually and with email notifications for the mailing lists including exactly the information the members of that mailing list need.

A plan for the kernel Bugzilla

Posted Oct 17, 2022 15:21 UTC (Mon) by Wol (subscriber, #4433) [Link]

> I wonder how many of the developers are overworked because of the email workflow.

> Emails are useful for many things but keeping information about one topic separate from information about another so you can still easily find it in the future is certainly not one of them.

> Email also is far from ideal for remembering which tasks you still have to work on or for assigning tasks to one of a group of people.

And what sort of replacement can you think of? If you can't visualise a solution, then you're somewhat up a gum tree.

I've always worked for end-user type setups, despite spending my career as a database programmer. My only (short) stint in a software house brought me to the brink of suicide ...

And even though I'm now not officially anything to do with programming/software etc (my job title is Business Analyst) I'm still the goto guy for programming and databases (and I love it). But I don't think there is ANY tool that can reduce the overload when there's just too much work, and not enough time.

The nice thing about my company is, although they want stuff done (don't they all), they recognise that there's only so much you can do, and I have free reign to cherry-pick the projects I want and ignore the rest (mostly :-) It helps, of course, that I tend to cherry pick projects that embody my philosophy of "if the computer can do it, then let it get on with it!" When my projects come off, they reduce everybody else's workload ... (only for different stuff to replace it :-)

So for me, email is ideal. I just lose the projects I don't want in the flood :-)

Cheers,
Wol

A plan for the kernel Bugzilla

Posted Oct 18, 2022 9:10 UTC (Tue) by marcH (subscriber, #57642) [Link] (6 responses)

> Emails are useful for many things but keeping information about one topic separate from information about another so you can still easily find it in the future is certainly not one of them.

> e.g. have something with an API that can be used from various automation tools and also with a web interface to use manually and with email notifications for the mailing lists including exactly the information the members of that mailing list need

You mean something like a... bug tracker?

Unfortunately the kernel community has proven to be permanently allergic to anything relying on a database - which they typically call a "web-based tool". While less known, this allergy could be even stronger than the addiction to email - which they use like the entire rest of the world uses a database.

"When all you have is a hammer, everything looks a nail". It's very funny to observe what happens when you apply this to... database people: you end up with version control implemented by a database... of course!
https://www.fossil-scm.org/home/doc/trunk/www/fossil-v-gi...

The "development by email community": a more accurate name than the "kernel community" :-)

A plan for the kernel Bugzilla

Posted Oct 18, 2022 10:17 UTC (Tue) by Wol (subscriber, #4433) [Link] (5 responses)

Coming from the Pick world, I look at git and think "it's a database". It's a key:value store, which is certainly the internal abstract model of Oracle, and probably most other relational databases ...

The problem is, imnsho, that too many people don't internalise that an RDBMS is only a small subset of the assorted DBMSs out there, pretty much any of which would be a much better fit to the problem space than an RDBMS.

(After all, isn't a file system just a sort of hierarchical database, etc etc.)

It shouldn't be TOO hard for someone to write an issue tracker that uses git as its back end. In fact, I seem to remember hearing its been done ... it just needs someone with the mindset "not all databases are RDBMSs".

Cheers,
Wol

A plan for the kernel Bugzilla

Posted Oct 18, 2022 11:18 UTC (Tue) by rschroev (subscriber, #4164) [Link] (1 responses)

Git is not just any key:value store though: the key is a hash of the value. Git is a form of content-addressable storage. That makes it pretty well suited for source code control, but much less suited as a general purpose database. Though I guess it can be used as one of you try hard enough to work around the limitations.

A plan for the kernel Bugzilla

Posted Oct 18, 2022 12:47 UTC (Tue) by mathstuf (subscriber, #69389) [Link]

The `refs/` hierarchy works well as an arbitrary key into the content store. Given the perf attention that it's gotten lately, it works pretty well. Our robot has something like 680k refs into over 110 repositories it watches, 600k of which are stored in `packed-refs`. Something could definitely be built through that lens.

A plan for the kernel Bugzilla

Posted Oct 18, 2022 12:50 UTC (Tue) by mathstuf (subscriber, #69389) [Link] (2 responses)

It's been plenty of times before. The problem usually comes down to how to allow arbitrary issue submission, commenting, notification tracking, etc. in a way that doesn't invite spam, have massive GDPR/privacy issues, and handles embargoes or otherwise "secret" issue submissions.

While Git might be a fine storage for such things, it is a terrible *interface* for them.

A plan for the kernel Bugzilla

Posted Oct 18, 2022 14:57 UTC (Tue) by Wol (subscriber, #4433) [Link] (1 responses)

I've just been reading a bit about Google BigCloud. It sounds HORRIBLE as a database. It's key-value WITH NO INDICES. As soon as you add indices on arbitrary fields within it (is that what git /refs does?) it becomes *much* more tractable.

Looking at FOSSIL I'd say sqlite makes a terrible bug tracker. But with FOSSIL as the interface it's probably very good. All we need is the FOSSIL interface using git as the datastore instead of sqlite :-)

(And isn't "pure" git rubbish as a source code management system? It's all the - is it called "porcelain"? - on top of the key:value store that makes it great.)

Cheers,
Wol

A plan for the kernel Bugzilla

Posted Oct 19, 2022 11:31 UTC (Wed) by mathstuf (subscriber, #69389) [Link]

> is that what git /refs does?

`git refs` lets you give names to specific objects. If you make a commit while the `HEAD` ref points to one (called a "symbolic ref") under the `refs/heads/` "special prefix", it will be updated to the new commit. I'm not sure I would call them indexes though. `tree` objects might work?

A plan for the kernel Bugzilla

Posted Oct 18, 2022 17:27 UTC (Tue) by marcH (subscriber, #57642) [Link] (1 responses)

> Being a bugmaster is a thankless job that leads to burnout, regardless of how well you are paid. Everyone is constantly irate at you from both ends -- the users are annoyed because their stuff doesn't work, and the maintainers are annoyed because you keep yanking them to work on dull problems that require a ton of back-and-forth with people who aren't capable of applying patches and booting custom kernels.

> you will still have all the exact same problems as long as nobody is in charge of handling incoming bugs

The choice of the tool does not matter compared to this. For open-source projects it's actually much much worse considering many (most?) reporters do NOT directly pay the corresponding code owner. As soon as you have some kind of business relationship then you automatically have something like a bug tracker because you can't afford to have important information with business impact scattered across random emails. Managers also need some metrics. Often very imperfect metrics but still more acceptable than a complete void. So yes: the lack of a bug/issue/feature tracker happens only when and where developers don't have to answer ("evil"?) managers.

For open-source projects, what matters much more than how you communicate and keep track of bugs is reproduction or in other words: TESTS. If you can communicate a simple sequence of steps that fail then this will almost always get prioritized by someone you don't pay directly over figuring out how to install and configure a complex workload - assuming you can even get access to it in the first place. How that sequence of steps is communicated plays a very secondary role. Note the test can be rejected as "don't do this, works as intended" but even in this case the "bug" will be handled promptly.

Tests and use cases define what a software project is, not bugs (and not paper requirements either). Developers consider their work "done" when the tests are passing.

Granted, some developers don't even test at all but those don't spend time looking at bugs either :-)

A plan for the kernel Bugzilla

Posted Oct 21, 2022 6:40 UTC (Fri) by AdamW (subscriber, #48457) [Link]

I would say the choice of tool still does matter.

It felt kinda odd reading the summary of this discussion, honestly. I don't think I've ever met a software project that doesn't have the "too many bugs, not enough time" problem. Very few of them have a comprehensive triage process. Yet almost all of them aside from the kernel community use a bug tracker, and use it to good effect.

It seems like kernel folks think that having a bug tracker somehow means you have to care about All The Bugs. Well...no. Every (other) major F/OSS project has a bug tracker just brimming with bugs nobody cares about. The thing is, this is *fine*. Of course it'd be great if every bug was cared for, but even if it isn't, that doesn't mean the bug tracker is useless.

A bug tracker - any bug tracker - is so much better than a mailing list for multiple people to collaborate on a problem. As the Fedora QA team lead I do a lot of poking around upstreams trying to figure out whether some bug has been reported, is being worked on, has already been fixed, what the fix was, where it's landed. All of this works *so* much better with projects that have sensible bug trackers, i.e. frickin' all of them except the kernel. I groan every time I have to try and do this for a kernel bug. Of course I'm not going to be subscribed to every single frickin' kernel development mailing list. I'm not a kernel developer. My mail client would explode. But this means if I want to try and find if some issue has been discussed/resolved, I'm left trolling through awful mailing list archive web frontends with useless search functions, usually to no great effect. Even if I can find a discussion, it's way harder to figure out what actually happened in the end on a mailing list than it is on a bug tracker.

The point of a bug tracker isn't to make you fix every single bug. It's to provide some convenient tools and conventions and generally bring some order to the bugs you *do* work on, and help everyone who isn't constantly following the development process find out what's going on if they need to.

A plan for the kernel Bugzilla

Posted Dec 9, 2022 13:43 UTC (Fri) by andy_shev (subscriber, #75870) [Link]

There are two points why BZ is still needed:
1) there are a few links to the bugs in the Linux kernel source tree (and maybe other projects referred to it as well);
2) there is a place to put some useful (for bug tracking or debugging purposes) files, which are not suitable for other sites on kernel.org infrastructure.


Copyright © 2022, Eklektix, Inc.
This article may be redistributed under the terms of the Creative Commons CC BY-SA 4.0 license
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds