FastLsbRelease

FIXME

  • Discuss the implementation approach with upstream.
  • Ubuntu desktop team: there's no need to call lsb_release during boot at all.
  • Instead of hard-wiring values during build, consider caching them.
  • Investigate possibilities of optimising the generic version, too.

Summary

"lsb_release -ir" can add a couple of seconds to boot time. Make it fast.

Release Note

This spec has no end-use impact.

Rationale

According to profiling of the Ubuntu boot process, running "lsb_release -ir" can add a couple of seconds to the total boot time. This is primarily because it is written in a way to be generic for all Debian and derivative systems. For example, it queries the system using apt-cache.

Since, in fact, lsb_release will always report the same results for a given release of a given operating system, the results could be hardwired, speeding things up a lot. However, since this requires special care from derivatives to not break lsb_release, the existing, generic behavior should be retained, too.

Design

Modify the lsb-release package to optionally determine as many output values as possible at build-time. Enable this in the Ubuntu version of the package. Additionally, add option --generic to force running the generic version.

Implementation

To be determined.

Test/Demo Plan

  • Build the modified version of lsb-release on every still-supported
    • release of Ubuntu and Debian.
  • Run lsb_release with and without the --generic option.
  • Verify that outputs match.


CategorySpec

FastLsbRelease (last edited 2008-08-06 16:24:44 by localhost)