• D
    drm: use anon-inode instead of relying on cdevs · 6796cb16
    David Herrmann 提交于
    DRM drivers share a common address_space across all character-devices of a
    single DRM device. This allows simple buffer eviction and mapping-control.
    However, DRM core currently waits for the first ->open() on any char-dev
    to mark the underlying inode as backing inode of the device. This delayed
    initialization causes ugly conditions all over the place:
      if (dev->dev_mapping)
        do_sth();
    
    To avoid delayed initialization and to stop reusing the inode of the
    char-dev, we allocate an anonymous inode for each DRM device and reset
    filp->f_mapping to it on ->open().
    Signed-off-by: NDavid Herrmann <dh.herrmann@gmail.com>
    6796cb16
drm_stub.c 16.8 KB