[kib@freebsd.org: [src] cvs commit: src/sys/amd64/linux32 linux32_sysvec.c]

Scot Hetzel swhetzel at gmail.com
Thu Nov 2 17:56:34 UTC 2006


On 11/1/06, Kostik Belousov <kostikbel at gmail.com> wrote:
> > Doesn't help the compat.linux.osrelease: 2.6.16 case, as it is a
> > different problem involving thread-local storage.
> Does wine have a chance to run on amd64 ? I vaguely remember that wine wants
> allocation of segments in LDT, that is not implemented on amd64.
>
That is the current problem I am seeing with linux-wine.

When I had Divacky Roman's patch that had thread local storage
implemented in it, I was getting a segfault when running
wineprefixcreate.

> Oct 16 18:39:12 hp010 kernel: pid 88058 (wine), uid 1001: exited on
> signal 11 (core dumped)

Which I suspect was caused by the problem you had just fixed.  I tried
the new patch for the linuxator on the wiki site on -CURRENT.

It almost started, but failed in wine-preloader, but now I can't
reproduce this failure:

fatal process exception: page fault, fault VA = 0x48
Segmentation fault (core dumped)

messages:
Nov  2 08:36:53 hp010 kernel: linux(1380): set_thread_area(-1,
282ad6c0, fffff, 1, 0, 0, 1, 0, 1
Nov  2 08:36:53 hp010 kernel: )
Nov  2 08:36:53 hp010 kernel: linux(1380): set_tid_address(0x282ad708)
Nov  2 08:36:53 hp010 kernel: linux(1380): rt_sigaction(32, 0xffffd8cc, 0, 8)
Nov  2 08:36:53 hp010 kernel: linux(1380): rt_sigaction(33, 0xffffd8cc, 0, 8)
Nov  2 08:36:53 hp010 kernel: linux(1380): rt_sigprocmask(1, 0xffffdb84, 0, 8)
Nov  2 08:36:53 hp010 kernel: linux(1380): getrlimit(3, 0xffffdc0c)
Nov  2 08:36:53 hp010 kernel: linux(1380): mmap2(0, 67108864, 3,
0x00000022, -1, 0)
Nov  2 08:36:53 hp010 kernel: -> linux_mmap_common(0, 67108864, 7,
0x00001002, -1, 0x0)
Nov  2 08:36:53 hp010 kernel: -> linux_mmap_common() return: 0x0 (0x282ae000)
Nov  2 08:36:53 hp010 kernel: linux(1380): brk(0)
Nov  2 08:36:53 hp010 kernel: linux(1380): brk(0x806b000)
Nov  2 08:36:53 hp010 kernel: linux(1380): clone(flags 7d0f00, stack
2c2ad4c4, parent tid: 2c2adbf8, child tid: 2c2adbf8)
Nov  2 08:36:53 hp010 kernel: linux(1380): clone: successful rfork to
1381, stack 0x2c2ad4c4 sig = 0
Nov  2 08:36:53 hp010 kernel: linux(1380): futex(0x2c2adbf8, 0, 1381)
Nov  2 08:36:53 hp010 kernel: FUTEX_WAIT 1380: val = 1381, uaddr =
0x2c2adbf8, *uaddr = 1381, timeout = 0.000000000
Nov  2 08:36:53 hp010 kernel: FUTEX --> 1380 tlseep timeout = 0
Nov  2 08:36:53 hp010 kernel: linux(1381): gettid()
Nov  2 08:36:53 hp010 kernel: linux(1381): futex(0x2c2adbf8, 1, 2147483647)
Nov  2 08:36:53 hp010 kernel: FUTEX_WAKE 1381: uaddr = 0x2c2adbf8, val
= 2147483647
Nov  2 08:36:53 hp010 kernel: FUTEX_WAIT 1380: uaddr = 0x2c2adbf8, ret = 0
Nov  2 08:36:53 hp010 kernel: FUTEX_WAIT 1380: uaddr = 0x2c2adbf8, got
FUTEX_WAKE
Nov  2 08:36:53 hp010 kernel: linux(1380):
stat64(/compat/linux/usr/lib/../bin/wineserver, *)
Nov  2 08:36:53 hp010 kernel: linux(1380):
execve(/compat/linux/usr/lib/../bin/wine-preloader)
:
Nov  2 08:36:53 hp010 kernel: linux(1380): set_thread_area(-1,
9c2666c0, fffff, 1, 0, 0, 1, 0, 1
Nov  2 08:36:53 hp010 kernel: )
Nov  2 08:36:53 hp010 kernel: linux(1380): set_tid_address(0x48)
Nov  2 08:39:10 hp010 kernel: pid 1380 (wine-preloader), uid 0: exited
on signal 11 (core dumped)

This failure got as far as loading wine-preloader, before
wine-preloader core dumped, /compat/linux/usr/bin/wine was running, as
it was used to start wine-preloader.

Instead, it fails now fails with:

fatal process exception: page fault, fault VA = 0x8
Segmentation fault (core dumped)

messages:
Nov  2 08:47:17 hp010 kernel: linux(1251): set_thread_area(-1,
282ad6c0, fffff, 1, 0, 0, 1, 0, 1
Nov  2 08:47:17 hp010 kernel: )
Nov  2 08:47:17 hp010 kernel: pid 1251 (wine), uid 0: exited on signal
11 (core dumped)

Which occurs after wine executes set_thread_area.

Looks like it is getting closer to running linux-wine on -CURRENT.

If anyone wants a look at theses log files, let me know.

Scot

-- 
DISCLAIMER:
No electrons were mamed while sending this message. Only slightly bruised.


More information about the freebsd-amd64 mailing list