Skip to content

UP2 with nocodec: oops on module remove/insert #259

Closed

Description

@plbossart

With the nocodec topology, the existing code generates an oops on insert. It looks like the cleanups are not done right with race conditions and sysfs entries inconsistent. The patch in #255 solves these issues by adding a second unregistration of the machine driver - which works but makes absolutely no sense... Clearly a timing issue that needs to be handled with a proper fix.

dmesg_before_remove.log
dmesg_after_remove.log
dmesg_after_insert.log

Activity

  1. plbossart commented on Nov 8, 2018

    @plbossart
    MemberAuthor

    Additional traces show the oops happens on insert - the machine driver is not created and the topology is freed before being created. So the root cause is why the machine driver is not created
    and the error w/ sysfs: cannot create duplicate filename '/bus/platform/devices/sof-nocodec'

  2. plbossart commented on Nov 8, 2018

    @plbossart
    MemberAuthor

    this is getting beyond my understanding. We are looking at a bad link in sysfs, likely because of a removal done in the wrong order

    lrwxrwxrwx 1 root root 0 Nov  8 20:08 /sys/bus/platform/devices/sof-nocodec -> ../../../devices/pci0000:00/0000:00:0e.0/sof-audio/sof-nocodec
    root@ubilinux4:~# 
    root@ubilinux4:~# 
    root@ubilinux4:~# ls /sys/bus/devices/pci0000:00/0000:00:0e.0/sof* 
    ls: cannot access '/sys/bus/devices/pci0000:00/0000:00:0e.0/sof*': No such file or directory
    
  3. plbossart commented on Nov 8, 2018

    @plbossart
    MemberAuthor

    Solved by unregistering the machine platform device from the SOF core, updated #255

  4. added a commit that references this issue on May 24, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions