Language Selection

English French German Italian Portuguese Spanish

Linux Plumbers Conference 2018 Coverage by LWN

Filed under
Linux
  • Bringing the Android kernel back to the mainline

    Android devices are based on the Linux kernel but, since the beginning, those devices have not run mainline kernels. The amount of out-of-tree code shipped on those devices has been seen as a problem for most of this time, and significant resources have been dedicated to reducing it. At the 2018 Linux Plumbers Conference, Sandeep Patil talked about this problem and what is being done to address it. The dream of running mainline kernels on Android devices has not yet been achieved, but it may be closer than many people think.

    Android kernels, he said, start their life as a long-term stable (LTS) release from the mainline; those releases are combined with core Android-specific code to make the Android Common Kernel releases. Vendors will pick a common kernel and add a bunch more out-of-tree code to create a kernel specific to a system-on-chip (SoC) and ship that to device manufacturers. Eventually one of those SoC kernels is frozen, perhaps with yet another pile of out-of-tree code tossed in, and used as the kernel for a specific device model. It now only takes a few weeks to merge an LTS release into the Android Common Kernel, but it's still a couple of years before that kernel shows up as a device kernel. That is why Android devices are always running ancient kernels.

  • A panel discussion on the kernel's code of conduct

    There has been a great deal of discussion around the kernel project's recently adopted code of conduct (CoC), but little of that has happened in an open setting. That changed to an extent when a panel discussion was held during the Kernel Summit track at the 2018 Linux Plumbers Conference. Panelists Mishi Choudhary, Olof Johansson, Greg Kroah-Hartman, and Chris Mason took on a number of issues surrounding the CoC in a generally calm and informative session.

    Kroah-Hartman began by apologizing for the process by which the code was adopted. Linus Torvalds wanted something quickly, Kroah-Hartman said, so the process was rushed and a lot of political capital was burned to get the code into the kernel. He has since been trying to make up for things by talking to a lot of people; while he apologized for how things happened, he also insisted that it was necessary to take that path. The "code of conflict" that preceded the current code was also pushed into the kernel over a period of about three weeks; "we have been here before", he said.

  • The kernel developer panel at LPC

    The closing event at the 2018 Linux Plumbers Conference (LPC) was a panel of kernel developers. The participants were Laura Abbott, Anna-Maria Gleixner, Shuah Khan, Julia Lawall, and Anna Schumaker; moderation was provided by Kate Stewart. This fast-moving discussion covered the challenges of kernel development, hardware vulnerabilities, scaling the kernel, and more.

    The initial topic was entry into kernel development, and the panelists' experience in particular. Khan, who got started around seven years ago, said that her early experience was quite positive; she named Tim Bird as a developer who gave her a lot of good advice at the beginning. Abbott started by tracking down a bug that was causing trouble internally; after getting some feedback, she was able to get that work merged into the mainline — an exciting event. Schumaker started with a relatively easy project at work. Lawall, instead, started by creating the Coccinelle project back around 2004. Her experience was initially somewhat painful, since the patches she was creating had to go through a lot of different maintainers.

    It had been a busy week at LPC, Stewart said, asking the panelists what stood out for them. Khan called out the networking track as a place where she learned a lot, but also said that the conference helped her to catch up with what is going on with the kernel as a whole, which is not an easy thing to do. She mentioned the sessions on the kernel's code of conduct and the creation of a maintainer's handbook.

  • Toward a kernel maintainer's guide

    "Who's on Team Xmas Tree?" asked Dan Williams at the beginning of his talk in the Kernel Summit track of the 2018 Linux Plumbers Conference. He was referring to a rule for the ordering of local variable declarations within functions that is enforced by a minority of kernel subsystem maintainers — one of many examples of "local customs" that can surprise developers when they submit patches to subsystems where they are not accustomed to working. Documenting these varying practices is a small part of Williams's project to create a kernel maintainer's manual, but it seems to be where the effort is likely to start.

    In theory, Williams said, kernel maintenance is a straightforward task. All it takes is accumulating patches and sending a pull request or two to Linus Torvalds during the merge window. In this ideal world, subsystems are the same and there is plenty of backup to provide continuity when a maintainer takes a vacation. In the real world, though, the merge window is a stressful time for maintainers. It involves a lot of work juggling topic branches, a lot of talking to people (which is an annoying distraction), and the fact that Torvalds can instinctively smell a patch that is not yet fully cooked. Maintenance practices vary between subsystems, and there is no backup for the maintainers in many of them. It is hard for a maintainer to take a break.

  • Updates on the KernelCI project

    The kernelci.org project develops and operates a distributed testing infrastructure for the kernel. It continuously builds, boots, and tests multiple kernel trees on various types of boards. Kevin Hilman and Gustavo Padovan led a session in the Testing & Fuzzing microconference at the 2018 Linux Plumbers Conference (LPC) to describe the project, its goals, and its future.

    KernelCI is a testing framework that is focused on actual hardware. Hilman is one of the developers of the project and he showed a picture of his shed where he has 80 different embedded boards all wired up as part of the framework. KernelCI came out of the embedded space and the Arm community; there are so many different hardware platforms, it became clear there was a need to ensure that the code being merged would actually work on all of them. Since then, it has expanded to more architectures.

  • Filesystems and case-insensitivity

    A recurring topic in filesystem-developer circles is on handling case-insensitive file names. Filesystems for other operating systems do so but, by and large, Linux filesystems do not. In the Kernel Summit track of the 2018 Linux Plumbers Conference (LPC), Gabriel Krisman Bertazi described his plans for making Linux filesystems encoding-aware as part of an effort to make ext4, and possibly other filesystems, interoperable with case-insensitivity in Android, Windows, and macOS.

    Case-insensitive file names for Linux have been discussed for a long time. The oldest reference he could find was from 2002, but it has come up at several Linux Storage, Filesystem, and Memory-Management Summits (LSFMM), including in 2016 and in Krisman's presentation this year. It has languished so long without a real solution because the problem has many corner cases and it is "tricky to get it right".

More in Tux Machines

ps_mem Shows Per-Program Memory Usage On Linux

Unlike many other tools that report memory usage per process, ps_mem reports the RAM usage of programs. For example it shows how much RAM is used by all Chromium processes combined. The program developer notes that the ps_mem name is used for backwards compatibility, but a more accurate name would be coremem. The displayed RAM is calculated by adding the sum of private RAM and the sum of shared RAM for a program processes. Running ps_mem with no arguments shows a list programs and their RAM usage in ascendant order (from the lowest RAM usage to the highest). For each program it shows the private, shared, and total used RAM, as well as the number of processes. Swap information for each program can be shown as well, by using the -S option (sudo ps_mem -S). Read more

Today in Techrights

Strawberry Released for Sparky Linux, feren OS 2019.04 in Review

OSS Leftovers

  • The State of Neural Machine Translation for Asian Languages
    Open source for Asian language NLP is getting more and more active, but it would be useful to have more projects that are both frequently updated and popular. Sometimes, code licensing plays a negative role, because many old projects are GPL (General Public License). Jieba, Rakuten MA, KoNLPy are some frequently-used libraries for CJK (Chinese-Japanese-Korean) NLP. (Lucy Park is a KoNLPy developer.)
  • Will your organization change itself to death?
    Organizations, open or otherwise, cannot spend every moment changing themselves. For one thing, doing so would mean abandoning whatever mission they purport to have. As the saying goes, "if you don't stand for something, you'll fall for anything." That adage, while most common in the context of political beliefs, is applicable here too.
  • Open source may be the future, but very few are writing it

    Open source may dominate the software we use to power the cloud, AI, and more, but a small percentage of developers do most of the coding. While it has long been true that for any given open source project, the vast majority of core contributions come from a cabal of committed developers, it seemed like the popularity of using open source would bleed into writing open source. Nope.

  • viewport and iphone reflow

    Something that’s annoyed me for some years is that all the web sites I build don’t work quite right with my iphone. Scroll down a page, visit a link, go back, and safari jumps back to the top of the page. Very annoying. Pretty much no other site I visit seems to have this problem, yet I couldn’t figure out what I was doing wrong since I’m barely doing anything at all. There are some support forum complaints about similar bugs, but mostly from several years ago, and mostly “solved: it works now” without explanation.

    Finally, figured out what seems to be the problem. The iphone introduces its own viewport meta tag, to define the screen dimensions, and control whether the user can zoom or not. A lot of sites abuse this to the point of unusability, so I very determinedly stayed clear. But without a viewport tag, safari is really dumb.

  • Categorizing OpenBSD Bugs

    I thought it would be interesting to see if something similar were true of OpenBSD bugs. I went through two years of OpenBSD errata for the most recent four releases (6.1, 6.2, 6.3 and 6.4) and categorized each bug.

  • Bug in French government’s WhatsApp replacement let anyone join Élysée chats

    Tchap is not intended to be a classified communications system—it runs on regular Android phones and uses the public Internet. But as the DINSIC, the French inter-ministry directorate for information systems that runs Tchap put it, Tchap "is an instant messenger allowing government employees to exchange real-time information on everyday professional issues, ensuring that the conversations remain hosted on the national territory." In other words, it's to keep official government business off of Facebook's and Telegram's servers outside France.

    Based on the Riot.im chat application from the open source project Matrix, Tchap is officially still in "beta," according to DINSIC. And that beta test is getting off to a rough start. Within two days, French security researcher Baptiste Robert—who goes by the Twitter handle @fs0c131y (aka Elliot Alderson)—had tapped into Tchap and subsequently viewed all of the internal "public" discussion channels hosted by the service.

  • Reset Email Account Passwords After a Website Malware Infection