PreciseKernelDeltaReview

Summary

Release Note

Review of the current Ubuntu Kernel patch delta from upstream. This session will look at the current delta comprised of both patches to the core and the ubuntu specific drivers. The aim is to record what we are carrying, review the reasons for that component(s) to be carried, and recommend replacements, updates, cleanups, upstreaming etc of those components.

Rationale

All patches and drivers carried in the Ubuntu delta are not automatically sync'd with the upstream kernel for various reasons. This places a maintenance 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 P cycle.

This original review which took place at UDS-P was based on the the 3.1.0-2.2 Precise kernel (which was rebased onto the upstream mainline v3.1 Linux kernel). The delta at that point in time was as follows:

# patches

comment

346

patches on top of the v3.1 kernel

107

SAUCE patches

131

debian commits (configuration updates and build machinary)

76

ubuntu/ driver patches

32

patches added then reverted (eg. 16 applied, then reverted)

Updated stats as of the 3.2.0-21.34 Precise kernel (which was rebased onto the upstream stable v3.2.13 Linux kernel) are as follows:

# patches

comment

845

patches on top of the v3.2.13 upstream stable Linux kernel

308

SAUCE patches

403

debian commits (configuration updates and build machinary)

58

ubuntu/ driver patches

76

patches added then reverted (eg. 38 applied, then reverted)

Ubuntu Delta

Ubuntu Drivers

  1. AUFS -- union mount support
    1. UBUNTU: ubuntu: aufs -- Temporarily disable due to build failure
    2. UBUNTU: ubuntu: AUFS -- update to 0e2bafab74f0d1463383faeb93f9fc5eb8c2c54e
    3. UBUNTU: ubuntu: AUFS -- documentation on updating aufs2
    4. UBUNTU: ubuntu: AUFS -- clean up the aufs updater and BOM
    5. UBUNTU: ubuntu: AUFS -- update to c6b76974311efc5bf3eddf921cd015b6aae46935
    6. UBUNTU: ubuntu: AUFS -- aufs2-standalone.patch aufs2.1-39
    7. UBUNTU: ubuntu: AUFS -- aufs2-base.patch aufs2.1-39
    8. UBUNTU: ubuntu: AUFS -- update to 65835da20b77c98fb538c9114fc31f5de1328230
    9. UBUNTU: ubuntu: AUFS -- update to b1cee06249dfa0ab30951e7f06490a75c155b620
    10. UBUNTU: ubuntu: AUFS -- suppress benign plink warning messages
    11. UBUNTU: ubuntu: AUFS -- update to 806051bcbeec27748aae2b7957726a4e63ff308e
    12. UBUNTU: ubuntu: AUFS -- update to c5021514085a5d96364e096dbd34cadb2251abfd
    13. UBUNTU: ubuntu: AUFS -- update aufs-update to track new locations of headers
    14. UBUNTU: ubuntu: AUFS -- include the aufs_types.h file in linux-libc-headers
    15. UBUNTU: ubuntu: AUFS -- update to 097bf62d6f49619359d34bf17f242df38562489a
    16. UBUNTU: ubuntu: AUFS -- track changes to llseek in v2.6.37-rc1
    17. UBUNTU: ubuntu: AUFS -- track changes to work queue initialisation
    18. UBUNTU: ubuntu: AUFS -- update to aufs2.1-36-UNRELEASED-20101103
    19. UBUNTU: ubuntu: AUFS -- add BOM and automated update script
    20. UBUNTU: ubuntu: AUFS -- aufs2 base patch for linux-2.6.34
    21. Comments: We've enabled overlayfs. Keep for Precise?

  2. dm-raid4-5 - software raid support
    1. UBUNTU: ubuntu: dm-raid4-5 fix up build failure
    2. UBUNTU: ubuntu: dm-raid4-5 -- follow changes to bio flags
    3. UBUNTU: ubuntu: dm-raid4-5 -- update to compile with 2.6.34-rc4
    4. UBUNTU: ubuntu: dm-raid4-5 -- update to compile with 2.6.34-rc2
    5. UBUNTU: ubuntu: dm-raid4-5 -- update to compile with 2.6.33
    6. UBUNTU: ubuntu: dm-raid4-5: Depend on XOR_BLOCKS
    7. UBUNTU: ubuntu: dm-raid-45 -- update to compile with 2.6.32
    8. UBUNTU: ubuntu: dm-raid45 -- version 2009.04.24 (2.6.30-rc3)
    9. UBUNTU: ubuntu: dm-raid4-5 -- (no-up) Export dm_disk function of device-mapper
    10. Comments: Per the oneiric review, The module is needed to activate RAID4 and RAID5 configurations with dmraid (package). This reads the meta-data created by BIOS supported soft-RAID implementations and creates device-mapper targets. Upstream indicated that the dm-raid45 module is seen as deprecated and dm-raid (a RAID 4/5/6 target) would be the replacement. However currently available versions of the user-space application do not support this. The difference between both targets is substantial from the point of table formats. This means to create a mapping with the new target the user-space side has to change substantially. So currently we will need to go with the old module.

  3. fsam7400 - SW RF kill switch for Fujitsu Siemens Amilo M 7400 / Maxdata 7000DX and compatible hardware.
    1. UBUNTU: ubuntu: fsam7400: Depend on CHECK_SIGNATURE
    2. UBUNTU: ubuntu: fsam7400 -- Cleanup Makefile
    3. UBUNTU: UBUNTU: ubuntu: fsam7400 -- kill switch for Fujitsu Siemens Amilo M 7400
    4. Comments: Keep per request 876030

  4. iscsitarget - internet connected disk connectivity support
    1. UBUNTU: ubuntu: iscsitarget: Remove driver from the kernel
    2. UBUNTU: ubuntu: iscsitarget -- follow changes to open_bdev_exclusive
    3. UBUNTU: ubuntu: iscsitarget -- convert NIPQUAD to %pI4
    4. UBUNTU: ubuntu: iscsitarget -- follow changes to semaphore initialisation
    5. UBUNTU: ubuntu: iscsitarget -- re-instate copy_io_context
    6. UBUNTU: ubuntu: iscsitarget -- version 1.4.20.2
    7. UBUNTU: ubuntu: iscsitarget -- version 1.4.20.1
    8. UBUNTU: ubuntu: iscsitarget -- rename daddr inet_sock field
    9. UBUNTU: ubuntu: iscsitarget --- version 1.4.19
    10. Comments: We dropped support for this in Oneiric, we should rebase this out of existence at the next rebase.

  5. ndiswrapper - windows network driver support
    1. Title: UBUNTU: ubuntu: ndiswrapper -- remove netdev_priv macro
    2. Title: UBUNTU: ubuntu: ndiswrapper -- fix interaction between packed and packed

    3. Title: UBUNTU: ubuntu: ndiswrapper -- follow removal of the BKL and locked ioctl
    4. Title: UBUNTU: ubuntu: ndiswrapper -- update BOM to match actual version
    5. Title: UBUNTU: ubuntu: make ndiswrapper available on X86 only
    6. Title: UBUNTU: ubuntu: ndiswrapper: convert multicast list to list_head
    7. Title: UBUNTU: ubuntu: ndiswrapper: rename usb_buffer_alloc() and usb_buffer_free()
    8. Title: UBUNTU: ubuntu: Updated ndiswrapper to 1.56
    9. Title: UBUNTU: ubuntu: ndiswrapper -- version 1.55
    10. Comments: No new updates since Feb 2010 (v1.56)

  6. NX emulation
    1. UBUNTU: ubuntu: nx-emu - i386: mmap randomization for executable mappings
    2. UBUNTU: ubuntu: nx-emu - i386: NX emulation
  7. omnibook - HP OmniBook support module

    1. UBUNTU: ubuntu: omnibook disable driver
    2. UBUNTU: ubuntu: omnibook: fix source file newline
    3. UBUNTU: ubuntu: omnibook -- update BOM
    4. UBUNTU: ubuntu: onmibook -- Added missing BOM file
    5. UBUNTU: ubuntu: omnibook -- support Toshiba (HP) netbooks
    6. Comments: We disabled this in Oneiric and no one screamed. We should consider dropping for Precise.

  8. overlayfs
    1. UBUNTU: ubuntu: overlayfs -- vfs: introduce clone_private_mount()
    2. UBUNTU: ubuntu: overlayfs -- vfs: export do_splice_direct() to modules
    3. UBUNTU: ubuntu: overlayfs -- vfs: add i_op->open()

    4. overlayfs: add statfs support
  9. rfkill - various rfkill drivers
    1. UBUNTU: ubuntu: rfkill disable driver
    2. UBUNTU: ubuntu: rfkill drivers -- version 1.3
    3. Comments: No new updates since March 2008 (v1.3)

  10. rtl8192se - realtek network controller
    1. UBUNTU: ubuntu: Remove ubuntu/rtl8192se
    2. UBUNTU: ubuntu: enable rfkill for rtl8192se driver
    3. UBUNTU: ubuntu: rtl8192se: fix source file newline
    4. UBUNTU: ubuntu: rtl8192se: fix source file perms
    5. UBUNTU: ubuntu: rtl8192se: Force a build for a 2.6/3.0 kernel
    6. UBUNTU: ubuntu: rtl8192se -- update to version 0017.0507.2010
    7. UBUNTU: ubuntu: rtl8192se -- update to version 0015.0127.2010
    8. UBUNTU: ubuntu: rtl8192se -- version 2010-0115,0014
    9. Comments: This is upstream - drivers/net/wireless/rtlwifi/rtl8192se. We removed this driver in Oneiric, we should rebase this out of existence.

  11. Yama - linux security module
    1. UBUNTU: ubuntu: Yama - update calls to generic_permission() and inode->i_op->permission()

    2. UBUNTU: ubuntu: Yama: if an underlying filesystem provides a permissions op use it
    3. UBUNTU: ubuntu: Yama - unconditionally chain to Yama LSM
    4. UBUNTU: ubuntu: Yama - add ptrace relationship tracking interface
    5. UBUNTU: ubuntu: Yama - create task_free security callback
    6. UBUNTU: ubuntu: Yama - LSM hooks

Ubuntu Patches (not for upstream)

  1. UBUNTU: SAUCE: (no-up) Input: elantech - Add v3 hardware support
  2. UBUNTU: SAUCE: (no-up) Input: ALPS - Enable Intellimouse mode for Lenovo Zhaoyang E47
  3. UBUNTU: SAUCE: (no-up) Add support for Intellimouse Mode in ALPS touchpad on Dell E2 series Laptops
  4. UBUNTU: SAUCE: (no-up) vfs: Add a trace point in the mark_inode_dirty function
  5. UBUNTU: SAUCE: (no-up) add tracing for user initiated readahead requests
  6. UBUNTU: (no-up) add support for installed header files to ubuntu directory
  7. UBUNTU: (no-up): document the new ## scheme
  8. UBUNTU: (no-up) [Config] Note dropped SAUCE patches from 2.6.36 to 2.6.37
  9. UBUNTU: (no-up) more dropped patches
  10. UBUNTU: (no-up) Added dropped patch list
  11. UBUNTU: SAUCE: (no-up) ARM: Resetting power_mode to its original value.
  12. UBUNTU: SAUCE: (no-up) Modularize vesafb -- fix initialisation
  13. UBUNTU: SAUCE: (no-up) Stop ARM boards crashing when CUPS is loaded
  14. UBUNTU: SAUCE: (no-up) dma-mapping: Remove WARN_ON in dma_free_coherent
  15. UBUNTU: SAUCE: (no-up) cdrom -- default to not locking the tray when in use
  16. UBUNTU: SAUCE: (no-up) PM report driver and device suspend/resume times.
  17. UBUNTU: (no-up) arm -- enable ubuntu/ directory
  18. UBUNTU: SAUCE: (no-up) set /proc/acpi/video/*/DOS to 4 by default
  19. UBUNTU: SAUCE: (no-up) trace: add trace events for open(), exec() and uselib()
  20. UBUNTU: SAUCE: (no-up) raise the default console 'quiet' level to 2
  21. UBUNTU: SAUCE: (no-up) disable adding scsi headers to linux-libc-dev
  22. UBUNTU: SAUCE: (no-up) Sony laptop: Some Sony Vaia laptops do not enable wwan power by default.
  23. UBUNTU: SAUCE: (no-up) nbd: Change default partitions per device to 15
  24. UBUNTU: SAUCE: (no-up) swap: Add notify_swap_entry_free callback for compcache
  25. UBUNTU: SAUCE: (no-up) hostap: Change initial operation mode to managed (infra)
  26. UBUNTU: SAUCE: (no-up) version: Implement version_signature proc file.
  27. UBUNTU: SAUCE: (no-up) Modularize vesafb
  28. UBUNTU: ubuntu: dm-raid4-5 -- (no-up) Export dm_disk function of device-mapper
  29. UBUNTU: (no-up) fold down debian for ubuntu-oneiric v3.1-rc1 rebase

Ubuntu Patches (for review)

  1. Andy Whitcroft
    1. x86, mce: Make xeon75xx memory driver dependent on PCI
    2. x86, mce: Xeon75xx specific interface to get corrected memory error information
    3. x86, mce: Rename cpu_specific_poll to mce_cpu_specific_poll
      • These three were never upstreamed after a huge fight with long-term rewites of perf, edac, and mce required. Should be brought up with Intel and reviewed for Q.
      • KEEP

    4. sched: tg->se->load should be initialised to tg->shares

      • did not end up up stream, should be dropped so we are as close to vanilla as possible
      • DROPPED (rtg)

    5. UBUNTU: SAUCE: vesafb: enable mtrr WC by default
    6. UBUNTU: SAUCE: vesafb: mtrr module parameter is uint, not bool
      • these should be upstreamable, the first probabally should be a CONFIG_ option for the default
    7. UBUNTU: SAUCE: headers_install: fix #include "..." usage for userspace
      • this should be upstreamable either as is or as fixes to the includes
    8. UBUNTU: SAUCE: vt -- allow grub to request automatic vt_handoff
    9. UBUNTU: SAUCE: vt -- maintain bootloader screen mode and content until vt switch
      • should be upstremable
    10. UBUNTU: SAUCE: drm -- stop early access to drm devices
      • should be upstreamable
    11. UBUNTU: SAUCE: add option to hand off all kernel parameters to init
      • should be upstreamable
    12. UBUNTU: SAUCE: khubd -- switch USB product/manufacturer/serial handling to RCU
      • needs testing again and if still valid pushing upstream
    13. UBUNTU: SAUCE: ensure root is ready before running usermodehelpers in it
    14. UBUNTU: SAUCE: acpi battery -- move first lookup asynchronous
    15. UBUNTU: SAUCE: async_populate_rootfs: move rootfs init earlier
    16. UBUNTU: SAUCE: isapnp_init: make isa PNP scans occur async
    17. UBUNTU: SAUCE: Make populate_rootfs asynchronous
      • need performance testing again and pushing upstream
    18. UBUNTU: SAUCE: hotkey quirks for various Zeptro Znote and Fujitsu Amilo laptops
      • already converted to udev rules, drop
      • DROPPED (apw)

    19. Revert "mmc: fix all hangs related to mmc/sd card insert/removal during suspend/resume"
      • just a dropped patch, ignore.
  2. Chase Douglas
    1. UBUNTU: SAUCE: HID: add MacBookAir4, 2 to hid_have_special_driver[]

    2. UBUNTU: SAUCE: HID: add support for MacBookAir4,2 keyboard.

      • Comments: Both patches are now upstream

  3. Colin Ian King
    1. UBUNTU: SAUCE: S3 early resume debug via keyboard LEDs
  4. Eric Miao
    1. UBUNTU: SAUCE: Make CONFIG_{OMNIBOOK, AVERATEC_5100P, PACKARDBELL_E5} depend on X86
      • Comments: Mark as "no-up", only affects ubuntu/ drivers

  5. Henrik Rydberg
    1. UBUNTU: SAUCE: HID: ntrig: fix suspend/resume on recent models
    2. UBUNTU: SAUCE: HID: hid-ntrig: add support for 1b96:0006 model
    3. hid: ntrig: Mask pen switch events
    4. hid: ntrig: Support single-touch devices
    5. UBUNTU: SAUCE: hid: ntrig: New ghost-filtering event logic
    6. UBUNTU: SAUCE: hid: ntrig: Setup input filtering manually
    7. UBUNTU: SAUCE: hid: ntrig: remove sysfs nodes
    8. UBUNTU: SAUCE: hid: ntrig: zero-initialize ntrig struct
    9. UBUNTU: SAUCE: hid: ntrig: Correct logic for quirks
    10. UBUNTU: SAUCE: hid: ntrig: Remove unused device ids
      • Comments: Drop above ntrig patches per the request of Chase Douglas. Testing shows these are no longer needed.

  6. Herton Ronaldo Krzesinski
    1. UBUNTU: SAUCE: Revert "Bluetooth: Add new PID for Atheros 3011"
  7. Ike Pan
    1. UBUNTU: SAUCE: (drop after 3.0) ideapad: Check if acpi already handle backlight power in 'ideapad_backlight_notify_power' to avoid a page fault
  8. Jesse Sung
    1. UBUNTU: SAUCE: Unregister input device only if it is registered
      • Comments: Appears to have been dropped from Precise

  9. John Johansen
    1. UBUNTU: SAUCE: Fix aufs calling of security_path_mknod
      • Comments: Dropped from Precise

    2. UBUNTU: SAUCE: AppArmor: Fix unpack of network tables.

      • Comments: Keep for Precise

    3. AppArmor: compatibility patch for v5 interface

      • Comments: Keep for Precise

    4. AppArmor: compatibility patch for v5 network controll

      • Comments: Keep for Precise

    5. UBUNTU: SAUCE: Improve Amazon EBS performance for EC2
      • Comments: Keep for Precise

    6. UBUNTU: SAUCE: fix pv-ops for legacy Xen
      • Comments: Keep for Precise

    7. UBUNTU: SAUCE: AppArmor: Allow dfa backward compatibility with broken userspace

      • Comments: Keep for Precise

  10. Keng-Yu Lin
    1. UBUNTU: SAUCE: staging: rts5139: add vmalloc.h to some files to fix the build.
    2. UBUNTU: SAUCE: staging: fix rts5139 depends & build

    3. UBUNTU: SAUCE: Staging: add driver for Realtek RTS5139 cardreader
    4. Comments: Already upstream, no need to carry as SAUCE

  11. Leann Ogasawara
    1. overlay: overlay filesystem documentation
    2. overlayfs: implement show_options
    3. fs: limit filesystem stacking depth
    4. overlay filesystem
      • Comments: Keep overlayfs patches

    5. UBUNTU: SAUCE: x86: reboot: Make Dell Latitude E6220 use reboot=pci
    6. UBUNTU: SAUCE: x86: reboot: Make Dell Optiplex 990 use reboot=pci
    7. UBUNTU: SAUCE: x86: reboot: Make Dell Optiplex 790 use reboot=pci
    8. UBUNTU: SAUCE: x86: reboot: Make Dell Latitude E6520 use reboot=pci
      • Comments: Marked above reboot quirks as "no-up"

    9. UBUNTU: fix ERROR: devcgroup_inode_permission undefined

      • Comments: Drop, no longer needed since we've disabled aufs.

    10. UBUNTU: SAUCE: [arm] fixup aeabi_uldivmod undefined build error

      • Comments: Looks to have already dropped out of existence.

    11. UBUNTU: Update dropped.txt for Oneiric
      • Comments: Marked as "no-up"

    12. UBUNTU: olpc_dcon_xo_1_5 needs delay.h
      • Comments: Drop, fixed upstream

    13. UBUNTU: olpc_dcon_xo_1 needs delay.h
      • Comments: Drop, fixed upstream

  12. Manoj Iyer
    1. UBUNTU: SAUCE: Added quirk to recognize GE0301 3G modem as an interface.
      • Comments: Keep for now

  13. Mathieu J. Poirier
    1. UBUNTU: ARM: Adding regulator supply for vdds_sdi.
      • Comments: Dropped from Precise

  14. Ming Lei
    1. UBUNTU: SAUCE: ata_piix: make DVD Drive recognisable on systems with Intel Sandybridge chipsets(v2)
      • Comments: Patch now upstream

    2. UBUNTU: SAUCE: fireware: add NO_MSI quirks for o2micro controller
      • Comments: Keep as SAUCE for now

    3. UBUNTU: SAUCE: fix yama_ptracer_del lockdep warning
      • Comments: Keep as SAUCE for now

  15. Ricardo Salveti de Araujo
    1. UBUNTU: SAUCE: omap3: beaglexm: fix DVI initialization
    2. UBUNTU: SAUCE: omap3: beagle: if rev unknown, assume xM revision C
    3. UBUNTU: SAUCE: omap3: beagle: detect new xM revision B
      • Comments: Drooped (eg reverted) from Precise - 912199

  16. Seth Forshee
    1. UBUNTU: SAUCE: (drop after 3.1) usb_storage: Don't freeze in usb-stor-scan
      • Comments: This is upstream as of 3.2 and appears to have already been rebased out of existance.

  17. Stefan Bader
    1. UBUNTU: SAUCE: xen: Do not use pv spinlocks on HVM
      • Comments: Can be dropped (upstream f10cd522c5fbfec9ae3cc01967868c9c2401ed23).

        • The upstream change removes the xen_init_spinlocks() call. The xen_init_lock_cpu(0) probably does not matter, but I will test after the SAUCE patch got dropped.
    2. UBUNTU: SAUCE: Convert dm-raid45 to new block plugging
      • Comments: Need to keep this. There is no visible development going on in the project this driver

        • was taken from. But it still seems to be the only way to work with the dmraid user-space tool (which allows to use BIOS provided fake-RAIDs.
  18. Tim Gardner
    1. UBUNTU: SAUCE: (drop during 3.2 merge) xHCI: AMD isoc link TRB chain bit quirk
    2. UBUNTU: SAUCE: usb/core/devio.c: Check for printer class specific request
      • Comments: above two are upstream and no longer carried as SAUCE

    3. UBUNTU: SAUCE: Add a new entry (413c:8197) to Bluetooth USB device ID table
      • Comments: dropped, failed SRU verification

    4. UBUNTU: SAUCE: fix build error with CONFIG_BLK_DEV_INITRD=n
      • Comments: Keep for now

  19. Will Drewry
    1. UBUNTU: SAUCE: seccomp_filter: add HAVE_SECCOMP_FILTER and seccomp_execve
    2. UBUNTU: SAUCE: seccomp_filter: Document what seccomp_filter is and how it works.
    3. UBUNTU: SAUCE: seccomp_filter: add process state reporting
    4. UBUNTU: SAUCE: seccomp_filter: new mode with configurable syscall filters

BoF agenda and discussion

Welcome to Ubuntu Developer Summit!

#uds-p #track #topic
put your session notes here
 
 
 -- Actions --
 
[leannogasawara] Add work items for individual devs patch reviews
[leannogasawara] Rebase iscsitarget out of existence
[leannogasawara] Rebase rtl8192se out of existence
[stefan-bader-canonical] Review dmraid45
[leannogasawara] disable aufs and see who scream
[leannogasawara] drop UBUNTU: SAUCE: (no-up) Input: elantech - Add v3 hardware support
[sforshee] investigate if we can drop the alps intelimouse no-up patches
[canonical-security] investigate mk-sbuild to use overlayfs (man schroot.conf, "union-type")
[diwic] hdmi audio disabled in the radeon driver by default?  investigate why?
[leannogasawara] drop UBUNTU: SAUCE: Revert "Bluetooth: Add new PID for Atheros 3011"
[leannogasawara] should be in 3.2 -> UBUNTU: SAUCE: (drop after 3.0) ideapad: Check if acpi already handle backlight power in 'ideapad_backlight_notify_power' to avoid a page fault


CategorySpec

KernelTeam/Specs/PreciseKernelDeltaReview (last edited 2012-04-03 10:49:54 by apw)