diff options
author | Andy Whitcroft <apw@canonical.com> | 2010-07-29 16:48:21 +0100 |
---|---|---|
committer | John Rigby <john.rigby@linaro.org> | 2012-06-25 15:02:11 -0600 |
commit | 7d4674dd0cdf52b3ecaafa27398ef552830ad949 (patch) | |
tree | d1664f322c5075f016959f9438e91036a993fa09 /drivers/usb/storage/unusual_devs.h | |
parent | 4bbc929058546c5a9c0f39079457e6780c051c1f (diff) |
UBUNTU: SAUCE: drm -- stop early access to drm devices
When a drm driver is initialised we first allocate and initialise the
drm minor numbers including creating the sysfs files, then we trigger
the driver load method. The act of creating the sysfs files triggers the
uevent. This means udev may start programs which open /dev/dri/card0 and
other interfaces, this can occur before the load method has even started
and thus before the driver has fully initialised its data structures.
In the case of plymouthd this leads to it opening and closing (in disgust)
the interface, which in turn leads to a kernel panic as the mutexes are
yet to be initialised.
This patch delays the linking up of the drm devices minor numbers until
the driver is fully initialised. As it is possible for consumers of
these interfaces to reach them before they are fully initialised we
arrange for opens of these devices to return EAGAIN until the device is
fully initialised.
Signed-off-by: Andy Whitcroft <apw@canonical.com>
Acked-by: Stefan Bader <stefan.bader@canonical.com>
Signed-off-by: Leann Ogasawara <leann.ogasawara@canonical.com>
Diffstat (limited to 'drivers/usb/storage/unusual_devs.h')
0 files changed, 0 insertions, 0 deletions