Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 12 Jul 2010 14:25:13 +0200
From:      Tijl Coosemans <tijl@coosemans.org>
To:        "Sam Fourman Jr." <sfourman@gmail.com>
Cc:        freebsd-hackers@freebsd.org
Subject:   Re: kernel patch needed for wine?
Message-ID:  <201007121425.13561.tijl@coosemans.org>
In-Reply-To: <AANLkTik5Owwpk5O6eUbSKgHxpjvcEXwilGECgtX0hx5a@mail.gmail.com>
References:  <AANLkTik5Owwpk5O6eUbSKgHxpjvcEXwilGECgtX0hx5a@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
--Boundary-00=_pmwOMDgZ36mswJq
Content-Type: Text/Plain;
  charset="iso-8859-1"
Content-Transfer-Encoding: 7bit

On Wednesday 30 June 2010 01:54:11 Sam Fourman Jr. wrote:
> Last Tuesday blizzard release World of Warcraft 3.3.5, and with this
> patch World of warcraft stopped working in FreeBSD 8.1 amd64, it
> crashes right after login.
>
> I have been playing World of Warcraft on FreeBSD amd64 since December
> of 2009 using the beta Nvidia 64bit drivers and this wine how-to
>
> http://wiki.freebsd.org/Wine#head-6963d527c173e57b1567e881305b544d33435b6d
>
> I can verify that on PCBSD 8.1 RC1 32bit World of warcraft works post
> 3.3.5 so far as I can tell it is only broken on amd64.

Could you give the attached patch a try?

cd /usr/src
patch -p1 < /path/to/patch-amd64-dr7
make buildkernel installkernel

--Boundary-00=_pmwOMDgZ36mswJq
Content-Type: text/plain;
  charset="iso-8859-1";
  name="patch-amd64-dr7"
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment;
	filename="patch-amd64-dr7"

diff --git a/sys/amd64/amd64/cpu_switch.S b/sys/amd64/amd64/cpu_switch.S
index cfb4204..6b5c663 100644
--- a/sys/amd64/amd64/cpu_switch.S
+++ b/sys/amd64/amd64/cpu_switch.S
@@ -243,13 +243,13 @@ store_dr:
 	movq	%dr2,%r13
 	movq	%dr3,%r12
 	movq	%dr6,%r11
-	andq	$0x0000fc00, %rax		/* disable all watchpoints */
 	movq	%r15,PCB_DR0(%r8)
 	movq	%r14,PCB_DR1(%r8)
 	movq	%r13,PCB_DR2(%r8)
 	movq	%r12,PCB_DR3(%r8)
 	movq	%r11,PCB_DR6(%r8)
 	movq	%rax,PCB_DR7(%r8)
+	andq	$0x0000fc00, %rax		/* disable all watchpoints */
 	movq	%rax,%dr7
 	jmp	done_store_dr
 

--Boundary-00=_pmwOMDgZ36mswJq--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201007121425.13561.tijl>