KernelLucidReviewOfUbuntuDelta

Summary

Review of the current Ubuntu Kernel delta, that brought forward from Karmic. Looking at both patches to the core and the Ubuntu specific drivers. The aim is to record what we are carrying, and review the reasons for that component to be carried as well as recommending replacements, updates, cleanups, and upstreaming of those components.

Release Note

TBD

Rationale

All patches and drivers carried in the Ubuntu delta are not automatically synced witn the upstream kernel. This places a mainteance burden on the Ubuntu kernel team. These patches and drivers must be regularly reviewed to determine if they are still needed, if they need updating to a later version, or if they are now ready for upstream acceptance. The purpose of this blueprint is to facilitate and record this review for the Lucid cycle.

Ubuntu Delta

The Ubuntu delta is split into two distinct sections. The core patches and the Ubuntu drivers (those in the ubuntu/ directory).

Ubuntu Patches

Below is our review of the patches we are carrying in Lucid as of 2.6.32-4.5. They are split into some logical sections, those we are clearly keeping, those which clearly should be dropped, and those which require further study.

The following patches are our own patches which we are not pushing upstream and we expect to continue to carry:

  • 0002-UBUNTU-SAUCE-no-up-Enable-ubuntu-extra-subdirectory.patch
  • 0003-UBUNTU-SAUCE-no-up-ports-Build-drivers-in-ubuntu-sub.patch
    • ubuntu directory handling
  • 0042-UBUNTU-SAUCE-pm-Config-option-to-disable-handling-of.patch
    • allows us to control the console powermanagement
  • 0051-UBUNTU-SAUCE-no-up-Modularize-vesafb.patch
    • makes vesafb modularlisable
  • 0054-UBUNTU-SAUCE-no-up-version-Implement-version_signatu.patch
    • adds /proc/version_signature
  • 0064-UBUNTU-SAUCE-libata-Ignore-HPA-by-default.patch
  • 0065-UBUNTU-SAUCE-hostap-Change-initial-operation-mode-to.patch
  • 0067-UBUNTU-SAUCE-nbd-Change-default-partitions-per-devic.patch
    • patches to implement modules.conf parameter changes
  • 0074-UBUNTU-SAUCE-disable-adding-scsi-headers-to-linux-li.patch
    • packaging changes
  • 0116-UBUNTU-SAUCE-Raise-the-default-console-quiet-level-t.patch
    • quieten the console output before X starts
  • 0059-UBUNTU-SAUCE-toshiba_acpi-pull-in-current-dev-versio.patch
  • 0060-UBUNTU-SAUCE-toshiba_acpi-add-acpi-hotkey-kernel-thr.patch
    • updated toshiba_acpi driver (will review under the drivers review)
  • 0072-UBUNTU-SAUCE-x86-implement-cs-limit-nx-emulation-for.patch
  • 0133-UBUNTU-SAUCE-x86-fix-report-of-cs-limit-nx-emulation.patch
  • 0154-UBUNTU-SAUCE-Fix-nx_enable-reporting.patch
  • 0145-UBUNTU-SAUCE-trace-add-trace-events-for-open-exec-an.patch

The patches below all either are now upstream in some form or clearly no longer needed. These will be dropped:

  • 0034-UBUNTU-SAUCE-Lower-warning-level-of-some-PCI-message.patch
    • we are already dropping the default output level so this is
    • not needed
  • 0040-UBUNTU-SAUCE-tulip-Define-ULI-PCI-ID-s.patch
    • this is already upstream in another form
  • 0047-UBUNTU-SAUCE-Correctly-blacklist-Thinkpad-r40e-in-AC.patch
    • this appears to have gone upstream and then been removed once
    • it was fixed, this patch is also has been dammaged around the
    • karmic rebase and includes some code it should not for the
    • Medion 41700
  • 0050-UBUNTU-Add-Dell-Dimension-9200-reboot-quirk.patch
    • this is already upstream
  • 0053-mac80211-fix-two-issues-in-debugfs.patch
    • this claims to be fixed in 2.6.27
  • 0056-UBUNTU-SAUCE-Dell-laptop-digital-mic-does-not-work-P.patch
  • 0057-UBUNTU-SAUCE-Enable-HDMI-audio-codec-on-Studio-XPS-1.patch
    • these are backport of an upstream fix and should be not required
  • 0061-UBUNTU-SAUCE-LPIA-Reboot-fix-for-Intel-Crownbeach-de.patch
  • 0062-UBUNTU-SAUCE-LPIA-Logical-reset-of-USB-port-on-resum.patch
    • both lpia specific and therefore no longer enabled
  • 0063-UBUNTU-SAUCE-Link-acpi-cpufreq.o-first.patch
    • this is already linked first, and indeed the patch adds only a
    • blank line
  • 0068-UBUNTU-SAUCE-Dell-XPS710-reboot-quirk.patch
    • this is already upstream in another form
  • 0075-UBUNTU-SAUCE-default-ATI-Radeon-KMS-to-off-until-use.patch
    • we now want to enable Radeon by default

The next block all appear to be upstream material and should be pushed upstream, I include the owners to make this easier:

  • 0029-UBUNTU-SAUCE-PATCH-Add-extra-headers-to-linux-libc-d.patch
    • Ugh, seems like there was some drugs involved here. The patch description doesn't match the actual patch, nor does the patch really make sense. xt_quota.h is already in the headers list. The only unique addition to the list is xt_policy.h.
  • 0035-UBUNTU-SAUCE-Catch-nonsense-keycodes-and-silently-ig.patch
    • Looks like this one can be dropped. emulate_raw() now catches key codes of 0 and drops them.
  • 0048-UBUNTU-SAUCE-Enable-an-e1000e-Intel-Corporation-8256.patch
  • 0070-UBUNTU-Sony-laptop-Some-Sony-Vaia-laptops-do-not-ena.patch
  • 0110-UBUNTU-SAUCE-Created-MODULE_EXPORT-MODULE_IMPORT-mac.patch
  • 0111-UBUNTU-SAUCE-Use-MODULE_IMPORT-macro-to-tie-intel_ag.patch
  • 0113-UBUNTU-SAUCE-Fix-MODULE_IMPORT-MODULE_EXPORT.patch
  • 0031-UBUNTU-SAUCE-ata-blacklist-FUJITSU-MHW2160BH-PL.patch
  • 0033-UBUNTU-SAUCE-Enable-speedstep-for-sonoma-processors.patch
  • 0083-UBUNTU-SAUCE-wireless-hostap-fix-oops-due-to-early-p.patch
  • 0044-UBUNTU-SAUCE-drivers-Remove-some-duplicate-device-en.patch
  • 0049-UBUNTU-SAUCE-Adds-support-for-COMPAL-JHL90-webcam.patch
  • 0058-UBUNTU-Fix-webcam-having-USB-ID-0ac8-303b.patch
  • 0084-UBUNTU-SAUCE-ipw2200-Enable-LED-by-default.patch
  • 0085-UBUNTU-SAUCE-Added-quirk-to-recognize-GE0301-3G-mode.patch
  • 0069-UBUNTU-SAUCE-hotkey-quirks-for-various-Zeptro-Znote-.patch
  • 0156-UBUNTU-Upstream-add-local-prefix-to-oss-local-change.patch

The remainder need more review, for each I point out the original submitter in the hope they can help us understand whether these patches are still needed:

  • 0030-UBUNTU-SAUCE-make-fc-transport-removal-of-target-con.patch
  • 0032-UBUNTU-SAUCE-Restore-VT-fonts-on-switch.patch
    • Stefan Bader <stefan.bader@canonical.com>

    • Again this is very old, do we still have issues here? I suspect
    • with KMS in the mix it is no longer required.
    • StefanBader: Originally from Matthew Garret, so we might ask him. But I actually think I saw code in the vga console driver that saves and restores fonts, so I guess we should drop it and see what happens.

    • ColinWatson: this is very likely still in use, please can we keep it.

  • 0036-UBUNTU-SAUCE-input-mouse-alps-Do-not-call-psmouse_re.patch
    • Ben Collins <bcollins@ubuntu.com>

    • This one stops us reseting alps mice on resume. Again pretty
    • anchient, I would like to drop it to see if things break these
    • days.
  • 0037-UBUNTU-SAUCE-Guest-OS-does-not-recognize-a-lun-with-.patch
  • 0038-UBUNTU-SAUCE-r8169-disable-TSO-by-default-for-RTL811.patch
    • Phillip Lougher <phillip@ubuntu.com>

    • This claims to be a temporary work around for a problem, added
    • in Jun 2007. Is it still needed.
  • 0039-UBUNTU-SAUCE-tulip-Let-dmfe-handle-davicom-on-non-sp.patch
    • Ben Collins <bcollins@ubuntu.com>

    • This appears to pass some devices off to another driver. The tulip
    • driver doess seem to handle handing them off another way, though
    • its not clear its all devices or not. Is this still needed.
  • 0041-UBUNTU-SAUCE-hostap-send-events-on-data-interface-as.patch
    • Matthew Garrett <mjg59@srcf.ucam.org>

    • This duplicates packates on both sides of the hostap interface.
    • Seem incomplete following driver changes, and I think it was to
    • work round broken userspace. Is this still needed.
  • 0045-UBUNTU-SAUCE-fix-kernel-oops-in-VirtualBox-during-pa.patch

    • Colin Ian King <colin.king@canonical.com>

    • Its not clear that this additional locking is still needed.
    • Need to test without this patch.
    • ColinKing: I'd drop this for Lucid. I've tested Lucid kernel 2.6.32-5 inside of VirtualBox 3.0.08_OSE r53138 without the patch and it works fine.

  • 0046-Revert-Bluetooth-Eliminate-checks-for-impossible-con.patch
  • 0071-UBUNTU-SAUCE-Add-MODULE_ALIAS-for-Dell-WMI-module.patch
  • 0073-UBUNTU-Upstream-mmc-prevent-dangling-block-device-fr.patch
  • 0077-UBUNTU-SAUCE-Add-config-option-to-set-a-default-LSM.patch
  • 0079-UBUNTU-Upstream-PATCH-dell-laptop-Fix-rfkill-state-q.patch
  • 0080-UBUNTU-Upstream-drop-after-2.6.31-dell-laptop-don-t-.patch
  • 0081-UBUNTU-Upstream-drop-after-2.6.31-compal-laptop-Add-.patch
  • 0082-UBUNTU-Upstream-drop-after-2.6.31-compal-laptop-Repl.patch
  • 0114-UBUNTU-SAUCE-drop-after-2.6.31-input-Add-support-for.patch
  • 0115-UBUNTU-SAUCE-drop-after-2.6.31-dell-laptop-Trigger-r.patch
  • 0129-UBUNTU-SAUCE-dell-laptop-Store-the-HW-switch-status-.patch
  • 0130-UBUNTU-SAUCE-dell-laptop-Blacklist-machines-not-supp.patch
    • Mario Limonciello <Mario_Limonciello@Dell.com>

    • This lot seem to be dell related updates which claim to be
    • on their way upstream. Mario are they there yet?
  • 0091-UBUNTU-staging-android-disable.patch
  • 0094-UBUNTU-staging-comdi-disable.patch
  • 0095-UBUNTU-staging-go7007-disable.patch
  • 0119-UBUNTU-Upstream-acerhdf-Limit-modalias-matching-to-s.patch

Ubuntu Drivers

We would have to assess and decide what to do with the following drivers:

  • AppArmor security module

    • we are expecting this to merge upstream around the .33 mark
    • if it has not hit the version we base on we will take a complete drop from upstream
  • AUFS -- aufs2-30 20090727
    • we will be maintaining this as the union mount solution for lucid
    • needs updating to the latest upstream version
  • compcache -- version 0.5.3
  • dm-raid45 -- version 2009.04.24 (2.6.30-rc3)
  • drbd -- version 8.3.1
    • currently disabled, we believe server is using a DKMS module for this
  • iscsitarget -- SVN revision r214
    • currently disabled
  • lenovo-sl-laptop -- git tip (b19a08f81f)
  • LIRC -- version 0.8.6
  • fsam7400 -- sw kill switch driver
  • ndiswrapper -- version 1.55
  • rfkill drivers -- version 1.3
  • toshiba_acpi -- ???

Test/Demo Plan

TBD

Unresolved issues

TBD

BoF agenda and discussion

  • introduction
  • patches
  • drivers

Decisions

We decided to handle the review of the patch delta as an offline review, assigned to ~apw and ~stefan-bader-canonical. We decided that all the drivers other than drbd are still required and therefore should be updated to the latest versions. drbd needs confirmation that its main users are out of tree and likely dropped.

Actions

The full set of actions is captured on the blueprint whiteboard. For those actions which are complete there should be an entry below containing the commentry and resolution of that item.

Review of carried drivers

We decided that all the drivers other than drbd are still required and therefore should be updated to the latest versions. drbd needs confirmation that its main users are out of tree and likely dropped. This review occured in the meeting and is complete

Phase 1: drivers under ubuntu/

  • compcache: Current featured release is unstable, waiting on upstream patches to be merged into current release.
  • dm-raid45: Already at current version, no stable updates available at this time.
  • ndiswrapper: Already at current version, no stable updates available at this time.
  • rfkill: Already at current version, no stable updates available at this time.
  • LIRC: No new version available. Keeping current version.
  • fsam7400: updated to version 0.5.2 (2008 Nov 22)
  • iscsitarget: updated to 1.4.19
  • omnibook: Added omnibook from latest svn trunk. (2009 12 07)

Drivers that have no updates as of (12/07) will be revisited before alpha1 to make sure they are still current.

Phase 2: drivers under ubuntu/

  • drbd: confirmed that DRBD was no longer used, and as it is already disabled and has been for the whole of Lucid, it can be removed (19-feb-2010)

Review of core patches, reporting to kernel-team

The review has now been completed the results are above in the Ubuntu Patches section, and was also emailed out to the team. For each patch they were categories as needing to be kept or dropped, where this was not clear they were marked for review and input sought.

Phase 1: drop all patches in the 'to-drop' list

Dropped all of the following in v2.6.32-6.8:

  • 0034-UBUNTU-SAUCE-Lower-warning-level-of-some-PCI-message.patch
  • 0040-UBUNTU-SAUCE-tulip-Define-ULI-PCI-ID-s.patch
  • 0047-UBUNTU-SAUCE-Correctly-blacklist-Thinkpad-r40e-in-AC.patch
  • 0050-UBUNTU-Add-Dell-Dimension-9200-reboot-quirk.patch
  • 0053-mac80211-fix-two-issues-in-debugfs.patch
  • 0056-UBUNTU-SAUCE-Dell-laptop-digital-mic-does-not-work-P.patch
  • 0057-UBUNTU-SAUCE-Enable-HDMI-audio-codec-on-Studio-XPS-1.patch
  • 0061-UBUNTU-SAUCE-LPIA-Reboot-fix-for-Intel-Crownbeach-de.patch
  • 0062-UBUNTU-SAUCE-LPIA-Logical-reset-of-USB-port-on-resum.patch
  • 0063-UBUNTU-SAUCE-Link-acpi-cpufreq.o-first.patch
  • 0068-UBUNTU-SAUCE-Dell-XPS710-reboot-quirk.patch
  • 0075-UBUNTU-SAUCE-default-ATI-Radeon-KMS-to-off-until-use.patch

Phase 2: cleanup following discussions on remaining patches

Dropped all of the following following Ubuntu-2.6.32-12.17:

  • 0049-UBUNTU-SAUCE-Adds-support-for-COMPAL-JHL90-webcam.patch
    • reporter recommend dropping this
  • 0045-UBUNTU-SAUCE-fix-kernel-oops-in-VirtualBox-during-pa.patch

    • no longer required, reporter confirms testing
  • 0030-UBUNTU-SAUCE-make-fc-transport-removal-of-target-con.patch
  • 0046-Revert-Bluetooth-Eliminate-checks-for-impossible-con.patch
    • this should be fixed already via ac019360fe311dd6aa11b358a02eb3a61675882e upstream


CategorySpec

specs/KernelLucidReviewOfUbuntuDelta (last edited 2010-02-19 17:21:30 by apw)