[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20080813143206.07550498@infradead.org>
Date: Wed, 13 Aug 2008 14:32:06 -0700
From: Arjan van de Ven <arjan@...radead.org>
To: "Langsdorf, Mark" <mark.langsdorf@....com>
Cc: "Ingo Molnar" <mingo@...e.hu>,
"Linus Torvalds" <torvalds@...ux-foundation.org>,
<linux-kernel@...r.kernel.org>, "H. Peter Anvin" <hpa@...or.com>,
"Thomas Gleixner" <tglx@...utronix.de>
Subject: Re: [PATCH](retry 2) Re: invalidate caches before going into
suspend
On Wed, 13 Aug 2008 13:47:05 -0500
"Langsdorf, Mark" <mark.langsdorf@....com> wrote:
> > Mark Langsdorf <mark.langsdorf@....com> wrote:
> > > + /* mask all interrupts, flush any and all caches, and
> > > halt */
> > > + if (cpu_has_clflush)
> > > + wbinvd_halt();
> > > + else
> > > + while (1)
> > > + halt();
> > > }
> >
> > I like the asm version .. but this code makes me blink.
> > when you HAVE clflush you do wbinvd.
> > yeah I know it's correct but... it reads wonky ;)
>
> It's the most convenient symbol to test against. I
> suppose I should add a comment explaining it.
>
> > also.. can we move that check into the wbinvd_halt() itself, so that
> > the callers don't need to care what is used to select it ?
>
> irqflags.h doesn't guarantee the presence of boot_cpu_data,
> so I wasn't able to make that check cleanly. I could move
> the macro definition to process_??.c if that would better.
>
it makes sense; it's hardly a hotpath, and making it simple to use
correctly is generally best ;)
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists