fbdev: allow apertures == NULL in remove_conflicting_framebuffers()
Interpret (otherwise-invalid) NULL apertures argument to mean all-memory range. This will allow to remove several duplicates of this code from drivers in following patches. Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl> Acked-by: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch> Link: https://patchwork.freedesktop.org/patch/msgid/b5fed539fe569035139c8594c23effd8c39f12ca.1535810304.git.mirq-linux@rere.qmqm.pl
This commit is contained in:
parent
fbc42d455a
commit
5fa793d366
|
@ -1797,11 +1797,25 @@ int remove_conflicting_framebuffers(struct apertures_struct *a,
|
|||
const char *name, bool primary)
|
||||
{
|
||||
int ret;
|
||||
bool do_free = false;
|
||||
|
||||
if (!a) {
|
||||
a = alloc_apertures(1);
|
||||
if (!a)
|
||||
return -ENOMEM;
|
||||
|
||||
a->ranges[0].base = 0;
|
||||
a->ranges[0].size = ~0;
|
||||
do_free = true;
|
||||
}
|
||||
|
||||
mutex_lock(®istration_lock);
|
||||
ret = do_remove_conflicting_framebuffers(a, name, primary);
|
||||
mutex_unlock(®istration_lock);
|
||||
|
||||
if (do_free)
|
||||
kfree(a);
|
||||
|
||||
return ret;
|
||||
}
|
||||
EXPORT_SYMBOL(remove_conflicting_framebuffers);
|
||||
|
|
Loading…
Reference in New Issue