[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20170228132820.GH3817@X58A-UD3R>
Date: Tue, 28 Feb 2017 22:28:20 +0900
From: Byungchul Park <byungchul.park@....com>
To: Peter Zijlstra <peterz@...radead.org>
CC: <mingo@...nel.org>, <tglx@...utronix.de>, <walken@...gle.com>,
<boqun.feng@...il.com>, <kirill@...temov.name>,
<linux-kernel@...r.kernel.org>, <linux-mm@...ck.org>,
<iamjoonsoo.kim@....com>, <akpm@...ux-foundation.org>,
<npiggin@...il.com>, <kernel-team@....com>
Subject: Re: [PATCH v5 06/13] lockdep: Implement crossrelease feature
On Tue, Feb 28, 2017 at 02:05:13PM +0100, Peter Zijlstra wrote:
> On Wed, Jan 18, 2017 at 10:17:32PM +0900, Byungchul Park wrote:
> > +#define MAX_XHLOCKS_NR 64UL
>
> > +#ifdef CONFIG_LOCKDEP_CROSSRELEASE
> > + if (tsk->xhlocks) {
> > + void *tmp = tsk->xhlocks;
> > + /* Disable crossrelease for current */
> > + tsk->xhlocks = NULL;
> > + vfree(tmp);
> > + }
> > +#endif
>
> > +#ifdef CONFIG_LOCKDEP_CROSSRELEASE
> > + p->xhlock_idx = 0;
> > + p->xhlock_idx_soft = 0;
> > + p->xhlock_idx_hard = 0;
> > + p->xhlock_idx_nmi = 0;
> > + p->xhlocks = vzalloc(sizeof(struct hist_lock) * MAX_XHLOCKS_NR);
>
> I don't think we need vmalloc for this now.
Really? When is a better time to do it?
I think the time creating a task is the best time to initialize it. No?
>
> > + p->work_id = 0;
> > +#endif
>
> > +#ifdef CONFIG_LOCKDEP_CROSSRELEASE
> > + if (p->xhlocks) {
> > + void *tmp = p->xhlocks;
> > + /* Diable crossrelease for current */
> > + p->xhlocks = NULL;
> > + vfree(tmp);
> > + }
> > +#endif
>
> Second instance of the same code, which would suggest using a function
> for this. Also, with a function you can loose the #ifdeffery.
Yes. It looks much better.
Thank you very much.
Powered by blists - more mailing lists