lkml.org 
[lkml]   [2008]   [Aug]   [13]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH](retry 2) Re: invalidate caches before going into suspend
On Wed, 13 Aug 2008 13:47:05 -0500
"Langsdorf, Mark" <mark.langsdorf@amd.com> wrote:

> > Mark Langsdorf <mark.langsdorf@amd.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 ;)


\
 
 \ /
  Last update: 2008-08-13 23:35    [W:2.112 / U:0.016 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site