0722

For minutes of previous meetings, please see FoundationsTeam.

Present

Apologies

Agenda

Outstanding actions from last meeting

Actions from this meeting

Activity reports

Colin Watson

Evan Dandrea

Ubiquity

  • Removed last-good-boot code.
  • Documented the release process in http://wiki.ubuntu.com/Installer/Development/Release

  • Fixed one of the hundred papercuts, bug 154506 (renaming "Install" to "Install $DISTRO $VERSION"), after clearing it with Jane. Looked over hundredpapercuts installer bugs, followed up to bug 380171.
  • Tracked down ubiquity contributors and kindly asked them to sign the contributor agreement. Made a plan with cjwatson to handle this better in the future. Started that by adding a note to http://wiki.ubuntu.com/Installer/Development asking potential contributors to sign it.

  • Continued discussions with Thomas Hailey on the scary "no-format" warning in partman-target.
  • Reviewed mterry's ubiquity plugins proposal. Made a few comments, but it largely looks good.
  • Fixed bug 401919 (the default hostname was always getting set to "ubuntu" instead of "$user-desktop").
  • Fixed the mess I created in casper in support of renaming the Install icon. Refined it further on a suggestion from Mario.
  • Fixed ubiquity trying to start the migration-assistant UI in Kubuntu.
  • Released two new versions of ubiquity.

Ubiquity Slideshow

  • Investigated modifications to the gettext code (merging all of the templates to avoid duplicate strings).
  • Discussed the slideshow code at length with Dylan and mpt.
  • Wrote a MIR for pywebkitgtk: https://wiki.ubuntu.com/MainInclusionReportWebkitGtk

  • Reviewed the slideshow code.
  • Wrote and merged code into ubiquity trunk to support the slideshow.

Windows usb-creator

  • Re-targeting to Monday, July 27th after a discussion with Robbie.
  • Created the wine-based test harness. No more developing inside Windows. Hooray.
  • Lots of work on the Windows frontend and backend code.
  • Lots of work on expanding winui to support the needed widgets, messages, notifications, constants, and so on.
  • Ran headfirst into Windows not supporting loop mounted devices (ISO files in this case) without a driver (VCdRom.sys) that I'm assuming we cannot redistribute. Suggestions welcome.
  • Code in lp:~usb-creator-hackers/usb-creator/cleanup.

James Westby

Distributed Development

  • > 50,000 branches imported.

  • Sent a progress update to ubuntu-devel answering some questions, and pointing to documentation so people can try it out.
  • Fixed some import failures.
  • Waiting on feedback on needed bzr features for karmic goals, not looking good to have them available.

Daily Builds

  • http://wiki.ubuntu.com/DailyBuilds

  • Fixed some outstanding issues in bzr-builder
  • Need another session fleshing out the above wiki page, then I can encourage others to try it out.

Kerneloops

  • Split out submission in to a separate binary so that apport can submit from a different machine from where the issue happens (something apport supports and kernel doesn't).
  • Need to clean that up and test for submission upstream.
  • Figured out kernel-crasher (thanks Jim) to get some real testing.
  • Looked a bit deeper in to the apport side. I have a better idea of what needs doing, but it may require more extensive changes than just modification of the hook It depends how much we want to show the user about what is going on.

Distro Tasks

  • Archive-admin "half-day" on Monday.
  • A little sponsor review.
  • Some REVU reviews.
  • Pushed a consolekit with a logrotate file so that it doesn't get huge and slow down GDM userlist. Still needs some work on GDM side, even with the suggested consolekit changes I have.

Lars Wirzenius

  • Computer Janitor UI improvements.
    • Came up with a neat trick to have automatic signal/callback bindings without having to specify method names in .glade.
  • Measured various approaches to using zsync or debdelta for downloading updates and Packages files. Reports in ubuntu-devel@.
  • Preparations for Debconf, sprint travels.

Michael Vogt

AppCenter

  • code cleanup in g-a-i
  • add (incomplete) CategoriesView widget based on GtkIconView

  • Work on AppCenters new layout (lp:~mvo/gnome-app-install/mpt-gui)

  • performance analysis on g-a-i and searching
  • experiment with CustomTreeModel and xapian to make the search faster (lp:~mvo/+junk/python-pkgview-gtk)

  • expand custromtreemodel to icons

kernel-crashdump

  • add patch to makedumpfile to support amd64/2.6.31
  • upload new kexec-tools that explicitely call update-grub (there is no trigger for grub2)
  • Debug why the crashkernel did not work, turned out be a bug in the kernel crash commandline parser
  • Add workaround to grub2 for the crashkernel commandline parser
  • update wiki: CradhdumpRecipe

  • final testing, set to beta available

synaptic

  • Fix search bug in synaptic with xapian
  • upload new version
  • add better support to view manual installed packages with synaptic

gdebi

  • Bug work (triage/fixing)
  • Ported gdebi to gtkbuilder (from glade)
  • Fix gdebi bug when resolving dependencies that are available both virtual and real (#373154)
  • Add GDEBI_DEBUG_LEVEL environment
  • Fix crash in gdebi (#355268)
  • Debug not set environment in gdebi, add workaround, report bug to vte upstream (LP: #367959)
  • Rework the way the button image is set in gdebi (LP: #345260 - I hope)
  • Debug strange gtkbuilder problem (GtkAboutDialog has get_name/set_name) and that causes havoc - fix SimpleGladeApp for good

  • upload new 0.5.0

apt/python-apt

  • Review/merge python-apt branch by "sp"
  • Move my python-apt devel branch to people.ubuntu.com (from people.c.c)
  • merge with the debian branch
  • apt branch review/merges from lp:~donkult/apt/sid, lp:~mvo/apt/mvo and the debian branch (that took a bit)
  • cleanup in apt.cron.daily

alpha3

  • Update command-not-found-data for alpha-3
  • Do not suggest apt-get in c-n-f it its not installed (#394842)
  • Apt ddtp package translations update
  • Review/update app-install-data-ubuntu (for alpha-3)
  • auto upgrade testing

misc

  • New ubuntu-system-service uploaded (polkit1 port)
  • Add patch for auto-rebooting with unattended-upgrades (#400018)
  • Analyize apt/dpkg failure in update-motd (#400462) with kirkland
  • Write dpkg patch that adds "--force-configure-bad" and send upstream (debian #537338)
  • Debug/fix software-properties problem when removing sources.list.d files (#399898)
  • Ensure software-properties creates files with 0644 (#399709)
  • Work on the people.u.c -> people.c.c transitio

  • Review UpdateIssues wiki page (DUX team)

  • fix update-manager ChangelogViewer parser for certain http:// style urls (#396393)

  • Work on update-on-shutdown spec and push to lp:~mvo/unattended-upgrades/gtk-ui

Mike Terry

Ubiquity

  • Looked into in-Ubiquity NetworkManager. No suitable candidates. Would have to split up network-manager-gnome or write our own. This probably won't get into Karmic

  • Fixed a last-minute OEM-config problem, with Mario's help. I had left a bug that affected oem-config-prepare workflows.
  • Fixed underlines on stock buttons.
  • Started working on plugin system, and converting standard pages to plugins. lp:~mterry/ubiquity/plugins

Muharem Hrnjadovic

Package sets and archive permissions

Distributed development

  • Analysis of scenarios where a debian packaging branch is to be merged into an Ubuntu packaging branch, but the upstream branches for these are not necessarily the same; resulting in upstream branch merges and potential conflicts that typically do not concern an Ubuntu developer. Exploring an idea of James' (http://pastebin.com/f7214e464).

Scott James Remnant

Upstart

  • Fixed a bug with runlevel returning "N N" instead of "unknown"
  • Fixed a bug with runlevel not prefixing errors like "No such file or
    • directory" with the utmp filename
  • Added missing Conflicts/Replaces/Provides for the upstart-job virtual
    • package
  • Upstart 0.6.1 released and uploaded to Ubuntu
  • Fixed assertion when stopping a job during its starting event
  • Fixed fork watching to not break on exec() prior to first fork()
  • Upstart 0.6.2 released and uploaded to Ubuntu

D-Bus

  • Updated to 1.2.16 release
  • Some major gardening of the bugs list
  • Debugged issues with D-Bus not building with its test cases for Colin
    • Walters, caused by our use of -Wl,--as-needed. Need to contribute feedback to him (libdbus-convenience.la needs $(DBUS_TEST_LIBS) in LIBADD)

util-linux

  • Updated Debian and Ubuntu packages to 2.16 release.
  • Merged in changes from the stable/v2.15 branch back to master
  • Added the libuuid and uuidd package information from e2fsprogs

e2fsprogs

  • Updated to 1.41.8 release
  • Disabled building of libuuid and uuidd packages now they're built
    • from util-linux
  • Sent patches upstream to disable building libblkid and libuuid by
    • default, and alternate patches to make it optional in the packaging
  • Reverted Ted's system clock workaround in the package, sent the patch
    • upstream
  • Some major gardening of the bugs list

module-init-tools

  • Updated to 3.10
  • Gardened the bugs list

Boot Performance

  • Received the HDD-based Dell Mini 10v (named "sam")
  • Installed jaunty release, then installed jaunty updates,
    • karmic alpha 2 and karmic 20090717 onto it
  • For each release created bootcharts and kernel bootgraphs, before and
    • after running "profile"
  • Results on the usual wiki page

sreadahead

  • Applied for VCS import of sreadahead SVN trunk
  • Reviewed the sreadahead issues/bugs and patches on SVN trunk that
    • haven't been part of a release yet
  • Rebased Ubuntu package onto new import
  • Ported the original kernel ftrace() patch for the open() syscall to
    • TRACE_EVENT, submitted to the kernel team
    • Not upstream because there's much better work to provide
      • tracepoints for all syscalls, which would likely supersede this patch
  • Fixed sreadahead to stop it compiling with -march=native all the time
  • Re-applied fix for man page section
  • Fixed sreadahead to stop profiling on receiving the TERM signal
    • instead of USR1
  • Re-applied and improved --no-fork patch
  • Investigatory work for using sreadahead on HDD-based machines
    • wrote a Python script to reorder the sreadahead pack based on
      • on-disk location rather than time order, also adjusting fragments as necessary
    • tried various combinations of pack; single pack file for boot and
      • desktop; separate pack files for rcS, rc2 and desktop; separate pack for file rcS, combined for rc2 and desktop; separate pack files for rcS and rc2 only; combined pack file for rcS and rc2 only

        Packs

        Time

        rcS + rc2 + desktop

        40s

        rcS, rc2, desktop

        43s

        rcS, rc2 + desktop

        41s

        rcS, rc2

        44s

        rcS + rc2

        47s

        The theoretical benefit of splitting the packs up is that sreadahead's profiler works by tracking open() syscalls and then using mincore() to see how much of the file is in the page cache when it finishes profiling Thus more packs means more checks in the page cache, so in theory more things loaded in advance The numbers suggest that there's no benefit here; the pack dumps also suggest the same amount of date is read in any case. The reason for the slowness of the separate desktop pack is that there's no way to perform this synchronously, so it happened in parallel with the desktop load and thus lost performance benefit
    • tried various patches to sreadahead; to make it stay in the
      • foreground while performing readahead; to perform the work in a single thread; increasing I/O priority while running.

        Variant

        sam

        wing-commander

        bg, multi-thread, SSD

        40s

        68s

        bg, multi-thread, HDD

        40s

        66s

        bg, single-thread, HDD

        40s

        68s

        fg, single-thread, SSD

        43s

        72s

        fg, multi-thread, HDD

        43s

        63s

        fg, single-thread, HDD

        40s

        60s

        The times didn't vary much for sam, but this isn't surprising because it's a fresh install and the drive is in pretty much the right order When tested on my laptop, the times get wider spread and shows that the "HDD optimised" pack and sreadahead code do make a difference when combined, but each optimisation on its own can be a bad thing ie. foreground with an SSD pack isn't worth it (makes sense, it's in time order so you're really just wasting time) ie. background with an HDD pack isn't worth it (makes sense, it's in on disk order so doing other things will ruin the effort) (For comparison, times with original readahead were 41s and 68s,
        • so sreadahead is at least as good - but with a *much* better profiler)
  • These results support switching to use sreadahead on HDD as well as
    • SDD, with a special HDD mode that changes the pack order.

Steve Langasek

FoundationsTeam/Meetings/2009/0722 (last edited 2009-07-24 18:31:07 by robbie.w)