← Back to team overview

mythbuntu-bugs team mailing list archive

[Bug 778026] [NEW] lirc-modules-source breaks in-kernel lirc support

 

Public bug reported:

Binary package hint: lirc-modules-source

Ubuntu 11.04 is shipping with a 2.6.38 kernel, which has numerous lirc
device drivers from the staging tree enabled, as well as rc-core
infrastructure and several new rc-core device drivers. The rc-core
drivers and the in-kernel lirc device drivers rely on the lirc device
interface driver (lirc_dev.ko) provided by the kernel to provide the
lirc character device interface needed by lircd.

Also shipping is an lirc-modules-source package, based on lirc 0.8.7-era
out-of-tree lirc device driver code. When this package is installed and
dkms builds modules, they override the in-kernel ones, most troubling
being lirc_dev.ko:

# find /lib/modules/$(uname -r)/ -name lirc_dev.ko
/lib/modules/2.6.38-8-generic/kernel/drivers/media/rc/lirc_dev.ko
/lib/modules/2.6.38-8-generic/updates/dkms/lirc_dev.ko

Now when any of the in-kernel lirc drivers or an rc-core driver with
support for the ir-lirc-codec bridge driver tries to load, you get
something like the following:

# modprobe ir-lirc-codec
FATAL: Error inserting ir_lirc_codec (/lib/modules/2.6.38-8-generic/kernel/drivers/media/rc/ir-lirc-codec.ko): Unknown symbol in module, or unknown parameter (see dmesg)

# dmesg | grep ir_lirc_codec
[   13.439407] ir_lirc_codec: Unknown symbol lirc_dev_fop_poll (err 0)
[   13.439557] ir_lirc_codec: Unknown symbol lirc_dev_fop_open (err 0)
[   13.439622] ir_lirc_codec: disagrees about version of symbol lirc_get_pdata
[   13.439623] ir_lirc_codec: Unknown symbol lirc_get_pdata (err -22)
[   13.439706] ir_lirc_codec: Unknown symbol lirc_dev_fop_close (err 0)
[   13.439770] ir_lirc_codec: Unknown symbol lirc_dev_fop_read (err 0)
[   13.439824] ir_lirc_codec: disagrees about version of symbol lirc_register_driver
[   13.439826] ir_lirc_codec: Unknown symbol lirc_register_driver (err -22)
[   13.439960] ir_lirc_codec: Unknown symbol lirc_dev_fop_ioctl (err 0)

This completely breaks in-kernel drivers' lirc support.

Please either stop shipping lirc-modules-source, or properly update it
to build against the in-kernel lirc bits (and preferably, strip out the
entirely redundant drivers).

** Affects: lirc (Ubuntu)
     Importance: Critical
         Status: Triaged

-- 
You received this bug notification because you are a member of Mythbuntu
Bug Team, which is subscribed to lirc in Ubuntu.
https://bugs.launchpad.net/bugs/778026

Title:
  lirc-modules-source breaks in-kernel lirc support

Status in “lirc” package in Ubuntu:
  Triaged

Bug description:
  Binary package hint: lirc-modules-source

  Ubuntu 11.04 is shipping with a 2.6.38 kernel, which has numerous lirc
  device drivers from the staging tree enabled, as well as rc-core
  infrastructure and several new rc-core device drivers. The rc-core
  drivers and the in-kernel lirc device drivers rely on the lirc device
  interface driver (lirc_dev.ko) provided by the kernel to provide the
  lirc character device interface needed by lircd.

  Also shipping is an lirc-modules-source package, based on lirc
  0.8.7-era out-of-tree lirc device driver code. When this package is
  installed and dkms builds modules, they override the in-kernel ones,
  most troubling being lirc_dev.ko:

  # find /lib/modules/$(uname -r)/ -name lirc_dev.ko
  /lib/modules/2.6.38-8-generic/kernel/drivers/media/rc/lirc_dev.ko
  /lib/modules/2.6.38-8-generic/updates/dkms/lirc_dev.ko

  Now when any of the in-kernel lirc drivers or an rc-core driver with
  support for the ir-lirc-codec bridge driver tries to load, you get
  something like the following:

  # modprobe ir-lirc-codec
  FATAL: Error inserting ir_lirc_codec (/lib/modules/2.6.38-8-generic/kernel/drivers/media/rc/ir-lirc-codec.ko): Unknown symbol in module, or unknown parameter (see dmesg)

  # dmesg | grep ir_lirc_codec
  [   13.439407] ir_lirc_codec: Unknown symbol lirc_dev_fop_poll (err 0)
  [   13.439557] ir_lirc_codec: Unknown symbol lirc_dev_fop_open (err 0)
  [   13.439622] ir_lirc_codec: disagrees about version of symbol lirc_get_pdata
  [   13.439623] ir_lirc_codec: Unknown symbol lirc_get_pdata (err -22)
  [   13.439706] ir_lirc_codec: Unknown symbol lirc_dev_fop_close (err 0)
  [   13.439770] ir_lirc_codec: Unknown symbol lirc_dev_fop_read (err 0)
  [   13.439824] ir_lirc_codec: disagrees about version of symbol lirc_register_driver
  [   13.439826] ir_lirc_codec: Unknown symbol lirc_register_driver (err -22)
  [   13.439960] ir_lirc_codec: Unknown symbol lirc_dev_fop_ioctl (err 0)

  This completely breaks in-kernel drivers' lirc support.

  Please either stop shipping lirc-modules-source, or properly update it
  to build against the in-kernel lirc bits (and preferably, strip out
  the entirely redundant drivers).


Follow ups

References