From: Jesse Barnes <jbarnes@virtuousgeek.org>
To: Daniel Vetter <daniel@ffwll.ch>
Cc: intel-gfx@lists.freedesktop.org
Subject: Re: [PATCH 2/6] drm/i915: retrieve current fb config into new plane_config structure at init
Date: Tue, 17 Dec 2013 13:04:04 -0800 [thread overview]
Message-ID: <20131217130404.435cbc66@jbarnes-desktop> (raw)
In-Reply-To: <20131217083836.GK9804@phenom.ffwll.local>
On Tue, 17 Dec 2013 09:38:36 +0100
Daniel Vetter <daniel@ffwll.ch> wrote:
> On Mon, Dec 16, 2013 at 04:01:41PM -0800, Jesse Barnes wrote:
> > On Sat, 14 Dec 2013 12:01:47 +0100
> > Daniel Vetter <daniel@ffwll.ch> wrote:
> > > But I still think the fb lifetime management is a bit broken here and we
> > > need a few small changes:
> > >
> > > 1. Right here in this loop we need to assign the fb from the plane_config
> > > ot the crtc->fb pointer and grab an fb reference for that.
> > >
> > > If we don't do that we'll fall over for CONFIG_FB=n
> > >
> > > A side-effect of that is that plane_config is now fairly redundant and we
> > > have the problem of cleaning up the fb referenced in there somehow
> > > (especially for CONFIG_FB=n). That's kinda the reason why I don't like it
> > > very much ...
> > >
> > > The below points are for the next patch, just noting them here for the
> > > full picture. I haven't read carefully through that patch yet, so might
> > > all be correct already.
> > >
> > > 2. We need to clean up fb reference in the plane config. Iirc your current
> > > patch 3 fails that for CONFIG_FB=n
> >
> > Hm yeah the ownership is less clear in the CONFIG_FB=n case. I think
> > the driver will own the buffer, and it'll get dropped on the first mode
> > set with a new buffer. But even then there will be no process to deref
> > the object finally, so it'll stick around. Hm... maybe just disable it
> > if CONFIG_FB=n is the right answer for now.
>
> If you switch the fbdev code to look at crtc->fb instead of
> crtc->plane_config.fb and just drop the plane_config.fb pointer (and it's
> reference) it should pan out. Then the only reference+pointers we have are
> the ones in crtc->fb, and the drm core will take care of those.
How can I switch to looking at crtc->fb? Or do you mean
get_plane_config should stuff a full fb into crtc->fb instead of the
plane_config struct?
> fbdev then needs to grab an additional reference for ifbdev->fb, but it
> needs to do that anyway. Your current code seems to just steal the initial
> reference from creating the framebuffer in ->get_plane_config.
Right.
--
Jesse Barnes, Intel Open Source Technology Center
next prev parent reply other threads:[~2013-12-17 21:02 UTC|newest]
Thread overview: 36+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-12-12 20:41 [PATCH 1/6] drm/i915: unconditionally copy mode into crtc at boot time Jesse Barnes
2013-12-12 20:41 ` [PATCH 2/6] drm/i915: retrieve current fb config into new plane_config structure at init Jesse Barnes
2013-12-14 11:01 ` Daniel Vetter
2013-12-17 0:01 ` Jesse Barnes
2013-12-17 8:38 ` Daniel Vetter
2013-12-17 21:04 ` Jesse Barnes [this message]
2013-12-17 21:19 ` Daniel Vetter
2013-12-12 20:41 ` [PATCH 3/6] drm/i915: Wrap the preallocated BIOS framebuffer and preserve for KMS fbcon v7 Jesse Barnes
2013-12-12 22:54 ` Daniel Vetter
2013-12-12 23:45 ` Jesse Barnes
2013-12-13 19:09 ` Jesse Barnes
2013-12-13 20:47 ` Daniel Vetter
2013-12-14 0:43 ` Jesse Barnes
2013-12-14 10:44 ` Daniel Vetter
2013-12-14 11:33 ` Daniel Vetter
2013-12-14 11:13 ` Daniel Vetter
2013-12-14 11:36 ` Daniel Vetter
2014-02-05 14:57 ` Jesse Barnes
2013-12-12 20:41 ` [PATCH 4/6] drm/i915: don't memset the fb buffer if preallocated Jesse Barnes
2013-12-14 11:28 ` Daniel Vetter
2013-12-17 0:17 ` Jesse Barnes
2013-12-17 7:56 ` Daniel Vetter
2013-12-12 20:41 ` [PATCH 5/6] drm/i915/vlv: move DPIO init earlier v2 Jesse Barnes
2013-12-14 10:47 ` Daniel Vetter
2013-12-17 0:02 ` Jesse Barnes
2013-12-12 20:41 ` [PATCH 6/6] drm/i915: inform drm_fb_helper if we abandoned a connected output Jesse Barnes
2013-12-12 22:30 ` Chris Wilson
2013-12-12 22:34 ` Jesse Barnes
2013-12-17 0:18 ` Jesse Barnes
2013-12-12 21:21 ` [PATCH 1/6] drm/i915: unconditionally copy mode into crtc at boot time Daniel Vetter
2013-12-12 21:29 ` Jesse Barnes
2013-12-12 22:39 ` Daniel Vetter
2013-12-12 22:44 ` Jesse Barnes
2013-12-12 23:04 ` Daniel Vetter
2013-12-17 0:35 ` Jesse Barnes
2013-12-17 8:00 ` Daniel Vetter
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20131217130404.435cbc66@jbarnes-desktop \
--to=jbarnes@virtuousgeek.org \
--cc=daniel@ffwll.ch \
--cc=intel-gfx@lists.freedesktop.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.