Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 48a719c2 authored by Borislav Petkov's avatar Borislav Petkov Committed by H. Peter Anvin
Browse files

intel-agp: Switch to wbinvd_on_all_cpus



Simplify if-statement while at it.

[ hpa: we need to #include <asm/smp.h> ]

Cc: Dave Jones <davej@redhat.com>
Cc: David Airlie <airlied@linux.ie>
Signed-off-by: default avatarBorislav Petkov <borislav.petkov@amd.com>
LKML-Reference: <1264172467-25155-3-git-send-email-bp@amd64.org>
Signed-off-by: default avatarH. Peter Anvin <hpa@zytor.com>
parent a7b480e7
Loading
Loading
Loading
Loading
+4 −11
Original line number Diff line number Diff line
@@ -8,6 +8,7 @@
#include <linux/kernel.h>
#include <linux/pagemap.h>
#include <linux/agp_backend.h>
#include <asm/smp.h>
#include "agp.h"

/*
@@ -815,12 +816,6 @@ static void intel_i830_setup_flush(void)
		intel_i830_fini_flush();
}

static void
do_wbinvd(void *null)
{
	wbinvd();
}

/* The chipset_flush interface needs to get data that has already been
 * flushed out of the CPU all the way out to main memory, because the GPU
 * doesn't snoop those buffers.
@@ -837,13 +832,11 @@ static void intel_i830_chipset_flush(struct agp_bridge_data *bridge)

	memset(pg, 0, 1024);

	if (cpu_has_clflush) {
	if (cpu_has_clflush)
		clflush_cache_range(pg, 1024);
	} else {
		if (on_each_cpu(do_wbinvd, NULL, 1) != 0)
	else if (wbinvd_on_all_cpus() != 0)
		printk(KERN_ERR "Timed out waiting for cache flush.\n");
}
}

/* The intel i830 automatically initializes the agp aperture during POST.
 * Use the memory already set aside for in the GTT.