linux-image-2.6.31-14-server and linux-image-2.6.31-14-virtual don't list a conflict with each other, but both provide vmlinuz-server on amd64

Bug #454827 reported by Steve Beattie
This bug affects 4 people
Affects Status Importance Assigned to Milestone
linux (Ubuntu)
Fix Released
Tim Gardner
Fix Released
Tim Gardner
Fix Released
Tim Gardner

Bug Description

SRU Justification:

Impact: As the conflict statement can be generated incorrectly it is possibly to accidentally install both packages.

Fix: Change to build system to exclude both cases as they never could happen together anyway.


installing both packages results in:

dpkg: error processing /var/cache/apt/archives/linux-image-2.6.31-14-virtual_2.6.31-14.48_amd64.deb (--unpack):
 trying to overwrite '/boot/vmlinuz-2.6.31-14-server', which is also in package linux-image-2.6.31-14-server 0:2.6.31-14.48

In jaunty, the 2.6.28-virtual kernel had the following conflicts:

Conflicts: hotplug (<< 0.0.20040105-1), linux-image-2.6.28-15-server

but in karmic it's changed to:

Conflicts: hotplug (<< 0.0.20040105-1), linux-image-2.6.31-14-generic-pae

ProblemType: Bug
Architecture: amd64
 /dev/snd/controlC0: gdm 29006 F.... pulseaudio
CRDA: Error: [Errno 2] No such file or directory
 Card hw:0 'Intel'/'HDA Intel at 0xfdff4000 irq 22'
   Mixer name : 'Silicon Image SiI1392 HDMI'
   Components : 'HDA:10ec0888,12970888,00100001 HDA:10951392,ffffffff,00100000'
   Controls : 40
   Simple ctrls : 20
Date: Sun Oct 18 10:15:21 2009
Dependencies: linux-firmware 1.21
DistroRelease: Ubuntu 9.10
HibernationDevice: RESUME=UUID=dc63f523-507a-4f9d-aa30-a2e880199150
 lo no wireless extensions.

 eth0 no wireless extensions.

 vboxnet0 no wireless extensions.
MachineType: Shuttle Inc SG33
Package: linux-image-virtual
ProcCmdLine: BOOT_IMAGE=/boot/vmlinuz-2.6.31-12-server root=UUID=d30e91cf-3c43-41a9-a72d-c07d1be1d53e ro loop.max_loop=64 rootflags=data=ordered
 PATH=(custom, no user)
ProcVersionSignature: Ubuntu 2.6.31-12.41-server
RelatedPackageVersions: linux-firmware 1.21

SourcePackage: linux-meta
Uname: Linux 2.6.31-12-server x86_64

 (gnome-settings-daemon:25156): GLib-CRITICAL **: g_propagate_error: assertion `src != NULL' failed
 (gnome-settings-daemon:25156): GLib-CRITICAL **: g_propagate_error: assertion `src != NULL' failed
 (nautilus:25281): Eel-CRITICAL **: eel_preferences_get_boolean: assertion `preferences_is_initialized ()' failed
 (polkit-gnome-authentication-agent-1:25332): GLib-CRITICAL **: g_once_init_leave: assertion `initialization_value != 0' failed
 (nautilus:25281): Eel-WARNING **: "nautilus-directory.c: directories" hash table still has 2 elements at quit time 11/28/2007
dmi.bios.vendor: Phoenix Technologies, LTD
dmi.bios.version: 6.00 PG FG33
dmi.board.vendor: Shuttle Inc
dmi.board.version: V10
dmi.chassis.type: 3
dmi.chassis.vendor: Shuttle Inc
dmi.chassis.version: G5
dmi.modalias: dmi:bvnPhoenixTechnologies,LTD:bvr6.00PG:bd11/28/2007:svnShuttleInc:pnSG33:pvrV10:rvnShuttleInc:rnFG33:rvrV10:cvnShuttleInc:ct3:cvrG5: SG33
dmi.product.version: V10
dmi.sys.vendor: Shuttle Inc

Revision history for this message
Steve Beattie (sbeattie) wrote :
Steve Beattie (sbeattie)
summary: linux-image-2.6.31-14-server and linux-image-2.6.31-14-virtual don't
- conflict with each other, but both provide vmlinuz-server
+ list a conflict with each other, but both provide vmlinuz-server on
+ amd64
Changed in linux (Ubuntu Karmic):
status: New → Triaged
importance: Undecided → Medium
assignee: nobody → Canonical Kernel Team (canonical-kernel-team)
Revision history for this message
Tim Gardner (timg-tpi) wrote :

I guess I see that this _is_ a problem, but _why_ would you do this?

Revision history for this message
Steve Beattie (sbeattie) wrote :

For example, if someone installs from the ubuntu-server image but forgets to select (or doesn't know about) the minimal virtual machine option in the F4 boot menu, and then post install tries to convert over to using the -virtual kernel (this actually happened to me with a jaunty install, which is how I knew about the conflict that was present in that release's packages).

What I can't figure out is why the conflict isn't getting set to server;;a=blob;f=debian.master/sub-flavours/virtual.vars already contains:

   8 darch="`dpkg-architecture -qDEB_HOST_ARCH`"
   9 if [ "$darch" = "i386" ]
  10 then
  11 based_on="generic-pae"
  12 else
  13 based_on="server"
  14 fi
  15 # The provides and conflicts are REQUIRED
  16 provides="redhat-cluster-modules"
  17 conflicts="linux-image-PKGVER-ABINUM-${based_on}"

which ought to set the conflicts to server when the amd64 kernels are built, but as evidenced by the published packages, doesn't actually do so.

Tim Gardner (timg-tpi)
Changed in linux (Ubuntu Karmic):
assignee: Canonical Kernel Team (canonical-kernel-team) → Tim Gardner (timg-tpi)
milestone: none → karmic-updates
status: Triaged → In Progress
Revision history for this message
Bernhard Seibold (blubb8128) wrote :

Why does there have to be a conflict anyway? If the kernel in the virtual flavor was named vmlinuz-2.6.x-y-virtual, the packages could coexist.

Revision history for this message
Tessa (unit3) wrote :

Definitely agree with bse4711, this shouldn't even be a conflict. linux-image-virtual packages should have kernels and modules with a -virtual extension, not a -server one.

And just to agree to Steve's content, I ran into this after upgrading a VPS to karmic, which installed the upgraded -server kernel, and then wanting to move to the -virtual kernel. I don't have control over the install with my VPS host, so that seemed like the easiest way to get where I needed to be... only then I was foiled by this bug. ;)

Revision history for this message
Bernhard Seibold (blubb8128) wrote :

Any updates on this?

Stefan Bader (smb)
description: updated
Changed in linux (Ubuntu Karmic):
status: In Progress → Fix Committed
Revision history for this message
Launchpad Janitor (janitor) wrote :
Download full text (16.5 KiB)

This bug was fixed in the package linux - 2.6.32-17.26

linux (2.6.32-17.26) lucid; urgency=low

  [ Amit Kucheria ]

  * [Config] SECURITY_FILE_CAPABILITIES dissapeared in 2.6.33

  [ Andy Whitcroft ]

  * rules -- allow architecture configurations to be missing
  * SAUCE: cdrom -- default to not locking the tray when in use
    - LP: #397734
  * expose the kernel EXTRAVERSION in dmesg and /proc/version_signature
  * record the drm version in EXTRAVERSION
  * linux-tools -- pull out the perf binary into a binary package
  * [Config] enable MMIOTRACE for graphics debugging
  * [Config] enable BLK_DEV_BSG
  * debian -- fix builds when tools are disabled
  * allow us to build default configs for automated builds
  * config -- allow locally specified configuration overrides
  * [Config] de-modularise PATA disk controllers
  * [Config] de-modularise SATA disk controllers

  [ Stefan Bader ]

  * Revert "SAUCE: (pre-stable) netfilter: xt_recent: fix buffer overflow"
    - LP: #540231
  * Revert "SAUCE: (pre-stable) netfilter: xt_recent: fix false match"
    - LP: #540231
  * [Config] Update configs for
    - LP: #540231

  [ Tim Gardner ]

  * [Config] Add vmw_pvscsi and vmxnet3 to -virtual flavour
    - LP: #531017
  * SAUCE: igb: Supress an upstream compiler complaint
  * [Config] Fix sub-flavours package conflicts
    - LP: #454827

  [ Upstream Kernel Changes ]

  * Revert "tpm_tis: TPM_STS_DATA_EXPECT workaround"
    - LP: #540231
  * Revert "(pre-stable) sched: Fix SMT scheduler regression in
    - LP: #540231
  * (pre-stable) Bluetooth: Fix sleeping function in RFCOMM within invalid
    - LP: #534549
  * igb: remove unused temp variable from stats clearing path
  * igb: update comments for serdes config and update to handle duplex
  * igb: update the approach taken to acquiring and releasing the phy lock
  * igb: add locking to reads of the i2c interface
  * igb: add combined function for setting rar and pool bits
  * igb: make use of the uta to allow for promiscous mode filter
  * igb: add support for 82576NS SerDes adapter
  * igb: add function to handle mailbox lock
  * igb: fix a few items where weren't correctly setup for mbx timeout
  * igb: change how we handle alternate mac addresses
  * igb: remove microwire support from igb
  * igb: move the generic copper link setup code into e1000_phy.c
  * igb: add code to retry a phy read in the event of failure on link check
  * igb: add additional error handling to the phy code
  * igb: add flushes between RAR writes when setting mac address
  * igb: Use the instance of net_device_stats from net_device.
  * igb: Fix erroneous display of stats by ethtool -S
  * igb: add new data structure for handling interrupts and NAPI
  * igb: remove rx checksum good counter
  * igb: increase minimum rx buffer size to 1K
  * igb: move the tx and rx ring specific config into seperate functions
  * igb: remove rx_ps_hdr_len
  * igb: move SRRCTL register configuration into ring specific config
  * igb: change the head and tail offsets into pointers
  * igb: add pci device pointer to ring structure
  * igb: move rx_buffer_len into the ring structu...

Changed in linux (Ubuntu Lucid):
status: In Progress → Fix Released
Revision history for this message
Martin Pitt (pitti) wrote : Please test proposed package

Accepted linux into karmic-proposed, the package will build now and be available in a few hours. Please test and give feedback here. See for documentation how to enable and use -proposed. Thank you in advance!

tags: added: verification-needed
Revision history for this message
Steve Beattie (sbeattie) wrote :

I've reproduced the lacking conflict with the latest server and virtual kernels in karmic-updates, 2.6.31-20.58, and can confirm that the kernels in karmic-proposed, linux-image-2.6.31-21-{server,virtual} 2.6.31-21.59, correctly conflict on amd64. I also verified that the linux-image-2.6.31-21-{generic-pae,virtual} kernel packages continue to conflict with each other.

I also verified that none of the 2.6.31-20.58 kernels (generic, server, generic-pae for {i386,amd64}) introduce no regressions in the qa-regression-testing kernel tests. Marking verification-done.

The reason these packages need to conflict is that the linux virtual kernel is not separately built from the server/generic-pae kernel images. The same kernel image is used as both, it's just that the virtual kernel packages include fewer kernel modules. Re- architecting the kernel build process is out of scope for a karmic SRU as well as for lucid, given how late it is in its development cycle.

tags: added: verification-done
removed: verification-needed
Revision history for this message
Launchpad Janitor (janitor) wrote :
Download full text (5.1 KiB)

This bug was fixed in the package linux - 2.6.31-21.59

linux (2.6.31-21.59) karmic-proposed; urgency=low

  [ Andy Whitcroft ]

  * [Config] generic-pae switch to M586TSC
    - LP: #519448

  [ Chris Wilson ]

  * (pre-stable) drm/i915: Increase fb alignment to 64k
    - LP: #404064

  [ Colin Ian King ]

  * Input: i8042 - bypass AUX IRQ delivery test on laptops
    - LP: #534448

  [ Jerone Young ]

  * SAUCE: Fix volume hotkeys for Dell Studio 1557
    - LP: #465250

  [ Mirsal Ennaime ]

  * SAUCE: aufs: Fix header files inclusion in debug.h
    - LP: #517151

  [ Stefan Bader ]

  * [Config] Enable all CGROUP configuration options
    - LP: #480739

  [ Surbhi Palande ]

  * Revert "[Upstream] acerhdf: Limit modalias matching to supported
    - LP: #509730
  * [Config] ext3 defaults to ordered mode
    - LP: #510067

  [ Tim Gardner ]

  * [Config] Fix sub-flavours package conflicts
    - LP: #454827

  [ Upstream Kernel Changes ]

  * PCI/cardbus: Add a fixup hook and fix powerpc
    - LP: #455723
  * fnctl: f_modown should call write_lock_irqsave/restore
    - LP: #519436
  * ACPI: enable C2 and Turbo-mode on Nehalem notebooks on A/C
    - LP: #516325
  * tg3: Add 57788, remove 57720
    - LP: #515390
  * HID: ignore all recent SoundGraph iMON devices
    - LP: #488443
  * Input: ALPS - add interleaved protocol support (Dell E6x00 series)
    - LP: #296610
  * acerhdf: limit modalias matching to supported
    - LP: #509730
  * ASoC: Do not write to invalid registers on the wm9712.
    - LP: #509730
  * cifs: NULL out tcon, pSesInfo, and srvTcp pointers when chasing DFS
    - LP: #509730
  * clockevents: Prevent clockevent_devices list corruption on cpu hotplug
    - LP: #509730
  * dma: at_hdmac: correct incompatible type for argument 1 of
    - LP: #509730
  * drivers/net/usb: Correct code taking the size of a pointer
    - LP: #509730
  * Libertas: fix buffer overflow in lbs_get_essid()
    - LP: #509730
  * md: Fix unfortunate interaction with evms
    - LP: #509730
  * pata_cmd64x: fix overclocking of UDMA0-2 modes
    - LP: #509730
  * pata_hpt3x2n: fix clock turnaround
    - LP: #509730
  * SCSI: fc class: fix fc_transport_init error handling
    - LP: #509730
  * sound: sgio2audio/pdaudiocf/usb-audio: initialize PCM buffer
    - LP: #509730
  * USB: emi62: fix crash when trying to load EMI 6|2 firmware
    - LP: #509730
  * USB: Fix a bug on appledisplay.c regarding signedness
    - LP: #509730
  * USB: musb: gadget_ep0: avoid SetupEnd interrupt
    - LP: #509730
  * USB: option: support hi speed for modem Haier CE100
    - LP: #490068, #509730
  * x86, cpuid: Add "volatile" to asm in native_cpuid()
    - LP: #509730
  * e100: Use pci pool to work around GFP_ATOMIC order 5 memory allocation
    - LP: #509730
  * e100: Fix broken cbs accounting due to missing memset.
    - LP: #509730
  * hostap: Revert a toxic part of the conversion to net_device_ops
    - LP: #509730
  * hwmon: (fschmd) Fix check on unsigned in watchdog_write()
    - LP: #509730
  * hwmon: (sht15) Off-by-one error in array index + incorrect constants
    - LP: #509730
  * i2c/tsl2550: Fix...


Changed in linux (Ubuntu Karmic):
status: Fix Committed → Fix Released
Revision history for this message
agent 8131 (agent-8131) wrote :

I came across this bug as I was going to report a bug that the -server and -virtual kernels conflict in lucid. I can see that this conflict is still necessary as of 2.6.32-33:

I have noted that this was fixed in later releases (maverick, natty). So maybe that will help anyone who comes across this bug report down the road as I did.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.