AndyWhitcroft

Revision 41 as of 2012-04-10 18:03:46

Clear message

I am Andy Whitcroft a member of the Canonical Kernel Team. I help to maintain the Ubuntu kernels and related packages for all actively supported Ubuntu releases. I am involved with planning and delivering the Ubuntu kernels within the development releases, as well as handling bugs reported by the community.

Launchpad: http://launchpad.net/~apw

Ubuntu Contributions

Non-Kernel Packages Touched

  • grub2 (cjwatson/slangasek) -- rejigged support for the vt.handoff=N parameter to prevent passing it when it is not required
  • udev (slangasek) -- rewrote the exit handling to ensure we do not lose any outstanding firmware requests
  • casper (cjwatson) -- enable overlayfs to be used as the union filesystem
  • module-init-tools (maxb) -- resync'd with debian 3.16-1 fixing bzr branch history to reconnect to UDD branches [O]
  • lm-sensors-3 (mdeslaur) -- fixes for the fixes for kernel 3.0 versioning
  • nfs-utils (ev) -- fixes for kernel 3.0 versioning
  • ps-utils (cjwatson) -- fixes for kernel 3.0 versioning
  • kexec-tools (cjwatson) -- resync with debian upstream for oneiric
  • debian-installer (cjwatson) -- pushing kernel version changes into the installer
  • bcmwl (tseliot) -- fixed bug in multicast operators
  • apt-cacher-ng (mvo) -- added support for passing through DevelReleaseNotes to fix update-manager

Precise

  • initramfs-tools (cjwatson) -- added support for the hyper-v drivers to the default initramfs builds

Oneiric

  • module-init-tools (cjwatson) -- preliminary resync with debian upstream (we have been out of sync for some years), fixes for kernel 3.0

Natty

  • module-init-tools (slangasek) -- added mechanism to avoid loading vesafb when a drm framebuffer is detected, avoiding crashed triggered by attempts to use both

Karmic

  • pm-utils -- added support for detecting successful/failed suspend and hibernates
  • apport (pitti) -- added reporting side of suspend/hibernate fixes

Jaunty

  • module-init-tools (timg-tpi) -- switched firewire stacks used by default by switching blacklists
  • dkms -- ensured that the dkms directories were correctly cleaned out to ensure kernel removal would complete successfully
  • alsa-drivers -- reenabled OSS drivers to allow espeak to work
  • ifupdown -- followed changes to modprobe in the module-init-tools package to ensure the blacklists are correctly applied
  • update-manager -- fixed pathname issues in cdromupgrade scripting

Precise Development

  • Union Mounts -- maintaining the versions of overlayfs and aufs in the kernel. Working on various issues with overlayfs contributing fixes upstream.

  • Hyper-V -- working with upstream maintainers to get support for the hyper-v paravirtualised disk drivers working in both the CD images and installed images.

  • Configuration -- working on better visualisation for the kernel configurations, and then applying those results to clean up the kernel configuration.

Oneiric Development

  • Linux 3.0 -- handling packaging fallout caused by Linus' switch from v2.6.39 to 3.0 for the Oneiric kernel.

  • Overlayfs -- helping test and integrate overlayfs with aufs such that they could co-exist in the Ubuntu kernel, integration work with installer

Natty Development

  • Natty Kernel Release Manager -- for the Natty cycle I was the kernel release manager responsible for pulling together and delivering the Lucid kernel for each Milestone.

  • BIOS Boot Splash -- worked with Foundations to deliver graphical boot from grub through to the kernel, this included rebuilding the upstart jobs to avoid collisions between vesafb and KMS drivers which was triggering GPU hangs.

  • Overlayfs -- evaluating overlayfs as a possible replacement for aufs as out union mounts solution, preliminary integration of overlayfs support

Maverick Development

  • Debian Commonisation -- reviewed and further simplified the debian abstraction pulling back the common code to a shared code base. Rolled this out to the later releases.

  • Union Mounts Investigation -- reviewed the ongoing VFS Union Mounts progress and reviewed and evaluated the patches for Ubuntu.

  • Wiki Revamp -- worked with the Triage team to put together and drive a review of the kernel team wiki (Kernel).

  • Bug Triage Levels -- worked with the Triage team to specify the new Triage levels helping define the process and its implementation.

  • BIOS Boot Splash -- worked with Foundations on the project to maintain the BIOS boot splash through to when plymouth splash is ready to start, produced patch kits for the kernel to add a new VT mode for this.

Lucid Development

  • Lucid Kernel Release Manager -- for the Lucid cycle I was the kernel release manager responsible for pulling together and delivering the Lucid kernel for each Milestone.

  • Ubuntu Delta Review -- review of the current kernel delta, reporting on the delta and driving the review at UDS.

  • Ubuntu Configuration Review -- review of the current kernel configuration, and driving the review at UDS and implementing the changes.

  • KMS -- drove KMS adoption at the kernel level, including a full backport of the 2.6.33 DRM stack for the Lucid kernel.

  • Debian Abstraction -- reviewed, cleaned up and simplified the debian abstraction, implementing it across all of the lucid branches.

  • Kernel Uploader -- became a per-package uploader for the Ubuntu Kernel packages (AndyWhitcroft/KernelUploadsApplication)

Karmic Development

  • Ubuntu Delta Review -- review of the current kernel delta, reporting on the delta and driving the review at UDS.

  • Ubuntu Configuration Review -- review of the current kernel configuration, and driving the review at UDS and implementing the changes.

Jaunty Development

  • Mainline kernel packaging - I am involved in a Jaunty project to automatically package mainline kernels to simplify Ubuntu regression detection (see KernelMainlineBuilds),

  • suspend/resume stress testing - one of the Kernel Teams Jaunty goals is to improve suspend/resume fucntionality, I am involved developing the stress testing and the automated reporting harness which is now part of the checkbox test suite (see KernelTeam/SuspendResumeTesting), and

  • Kernel tree management review - I performed a review of our tree management proceedures to help document the current processes and see how they could be improved. (see KernelTeam/Specs/JauntyKernelTreeManagement)

Bugs

One of my secondary roles is to triage and fix bugs in the Ubuntu linux kernel and associated packages.

Packaging

  • checkbox

See also:

General Open Source Contributions

Upstream Maintainer

I have authored and continue to maintain the following open source projects:

  • checkpatch - I am the maintainer for the kernel source code automated style checker used to maintain code quality in a large part of the Linux kernel,

  • conmux - I am maintainer for the console multiplexor project, and

  • autotest - I am co-maintainer for the autotest project concentrating on the autotest client side harness.

Upstream Projects

I have previously contributed functionality to the following upstream projects:

  • Linux Kernel - memory management, large pages

  • git - svn interface fixes

Publications

Linux related publications:

  • The What, The Why and the Where To of Anti-Fragmentation, Mel Gorman and Andy Whitcroft, OLS 2008 (PDF)

  • Fully Automated Testing of the Linux Kernel, Martin Bligh and Andy Whitcroft, OLS 2006 (PDF)

  • Supporting the Allocation of Large Contiguous Regions of Memory, Mel Gorman, Andy Whitcroft, OLS 2007 (PDF)

Community Networking

Sponsors

I would like to thank the following people for sponsoring my uploads: