I guess the bug https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1382251 is related to the modify_ldt changes made in the kernel. 5559 5064 0 15:03 pts/1 00:00:00 /opt/google/picasa/3.0/wine/lib/wine/license.exe.so /gate c:\Program Files\Google\Picasa3\Picasa3.exe Here is some strace output of this process: 1414069442.802669 open("/opt/google/picasa/3.0/wine/lib/wine/krnl386.exe16", O_RDONLY|O_LARGEFILE) = 9 <0.000017> 1414069442.802718 read(9, "kernel32.dll\n", 19) = 13 <0.000005> 1414069442.802741 close(9) = 0 <0.000008> 1414069442.802799 rt_sigprocmask(SIG_BLOCK, [HUP INT USR1 USR2 ALRM CHLD IO], [], 8) = 0 <0.000004> 1414069442.802829 mmap2(0x330000, 1114112, PROT_NONE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x330000 <0.000018> 1414069442.802867 rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0 <0.000004> 1414069442.802891 rt_sigprocmask(SIG_BLOCK, [HUP INT USR1 USR2 ALRM CHLD IO], [], 8) = 0 <0.000004> 1414069442.802918 mprotect(0x330000, 65536, PROT_READ|PROT_WRITE|PROT_EXEC) = 0 <0.000008> 1414069442.802942 rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0 <0.000004> 1414069442.802976 rt_sigprocmask(SIG_BLOCK, [HUP INT USR1 USR2 ALRM CHLD IO], [], 8) = 0 <0.000004> 1414069442.803007 rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0 <0.000004> 1414069442.803029 rt_sigprocmask(SIG_BLOCK, [HUP INT USR1 USR2 ALRM CHLD IO], [], 8) = 0 <0.000004> 1414069442.803055 modify_ldt(17, {entry_number:512, base_addr:0x330118, limit:12159, seg_32bit:0, contents:0, read_exec_only:0, limit_in_pages:0, seg_not_present:0, useable:0}, 16) = -1 EINVAL (Invalid argument) <0.000018> 1414069442.803104 dup(2) = 9 <0.000005> 1414069442.803126 fcntl64(9, F_GETFL) = 0x8001 (flags O_WRONLY|O_LARGEFILE) <0.000004> 1414069442.803147 close(9) = 0 <0.000004> 1414069442.803180 open("/usr/share/locale/locale.alias", O_RDONLY|O_CLOEXEC) = 9 <0.000014> 1414069442.803219 fstat64(9, {st_mode=S_IFREG|0644, st_size=2570, ...}) = 0 <0.000005> 1414069442.803258 mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7664000 <0.000006> 1414069442.803283 read(9, "# Locale name alias data base.\n#"..., 4096) = 2570 <0.000008> 1414069442.803336 read(9, "", 4096) = 0 <0.000005> 1414069442.803366 close(9) = 0 <0.000005> 1414069442.803386 munmap(0xb7664000, 4096) = 0 <0.000009> 1414069442.803428 open("/usr/share/locale/de_AT/LC_MESSAGES/libc.mo", O_RDONLY) = -1 ENOENT (No such file or directory) <0.000008> 1414069442.803462 open("/usr/share/locale/de/LC_MESSAGES/libc.mo", O_RDONLY) = -1 ENOENT (No such file or directory) <0.000008> 1414069442.803493 open("/usr/share/locale-langpack/de_AT/LC_MESSAGES/libc.mo", O_RDONLY) = -1 ENOENT (No such file or directory) <0.000007> 1414069442.803525 open("/usr/share/locale-langpack/de/LC_MESSAGES/libc.mo", O_RDONLY) = 9 <0.000009> 1414069442.803557 fstat64(9, {st_mode=S_IFREG|0644, st_size=149140, ...}) = 0 <0.000004> 1414069442.803594 mmap2(NULL, 149140, PROT_READ, MAP_PRIVATE, 9, 0) = 0x7e566000 <0.000010> 1414069442.803620 close(9) = 0 <0.000005> 1414069442.803682 open("/usr/lib/i386-linux-gnu/gconv/gconv-modules.cache", O_RDONLY) = 9 <0.000010> 1414069442.803718 fstat64(9, {st_mode=S_IFREG|0644, st_size=26256, ...}) = 0 <0.000004> 1414069442.803754 mmap2(NULL, 26256, PROT_READ, MAP_SHARED, 9, 0) = 0x7ef51000 <0.000007> 1414069442.803777 close(9) = 0 <0.000004> 1414069442.803799 futex(0xb762cfc8, FUTEX_WAKE_PRIVATE, 2147483647) = 0 <0.000005> 1414069442.803832 write(2, "modify_ldt: Das Argument ist ung"..., 39) = 39 <0.000010> 1414069442.803865 rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0 <0.000005> 1414069442.803913 rt_sigprocmask(SIG_BLOCK, [HUP INT USR1 USR2 ALRM CHLD IO], [], 8) = 0 <0.000005> 1414069442.803942 rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0 <0.000005> 1414069442.803965 rt_sigprocmask(SIG_BLOCK, [HUP INT USR1 USR2 ALRM CHLD IO], [], 8) = 0 <0.000005> 1414069442.803991 modify_ldt(17, {entry_number:513, base_addr:0x3330a0, limit:7839, seg_32bit:1, contents:2, read_exec_only:0, limit_in_pages:0, seg_not_present:0, useable:0}, 16) = 0 <0.000005> 1414069442.804020 rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0 <0.000004> 1414069442.804046 rt_sigprocmask(SIG_BLOCK, [HUP INT USR1 USR2 ALRM CHLD IO], [], 8) = 0 <0.000004> 1414069442.804073 rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0 <0.000004> 1414069442.804095 rt_sigprocmask(SIG_BLOCK, [HUP INT USR1 USR2 ALRM CHLD IO], [], 8) = 0 <0.000004> 1414069442.804121 modify_ldt(17, {entry_number:514, base_addr:0x334f48, limit:63, seg_32bit:0, contents:0, read_exec_only:0, limit_in_pages:0, seg_not_present:0, useable:0}, 16) = -1 EINVAL (Invalid argument) <0.000004> 1414069442.804149 write(2, "modify_ldt: Das Argument ist ung"..., 39) = 39 <0.000006> 1414069442.804176 rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0 <0.000005> 1414069442.804230 rt_sigprocmask(SIG_BLOCK, [HUP INT USR1 USR2 ALRM CHLD IO], [], 8) = 0 <0.000005> 1414069442.804259 rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0 <0.000004> 1414069442.804281 rt_sigprocmask(SIG_BLOCK, [HUP INT USR1 USR2 ALRM CHLD IO], [], 8) = 0 <0.000004> 1414069442.804308 modify_ldt(17, {entry_number:515, base_addr:0x7ee3d79c, limit:619467, seg_32bit:1, contents:2, read_exec_only:0, limit_in_pages:0, seg_not_present:0, useable:0}, 16) = 0 <0.000004> 1414069442.804331 rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0 <0.000004> 1414069442.804357 mmap2(0x1000, 61440, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7ef42000 <0.000006> 1414069442.804380 munmap(0x7ef42000, 61440) = 0 <0.000007> 1414069442.804403 mmap2(0x10000, 1048576, PROT_NONE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x10000 <0.000007> 1414069442.804430 rt_sigprocmask(SIG_BLOCK, [HUP INT USR1 USR2 ALRM CHLD IO], [], 8) = 0 <0.000004> 1414069442.804458 rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0 <0.000005> 1414069442.804481 rt_sigprocmask(SIG_BLOCK, [HUP INT USR1 USR2 ALRM CHLD IO], [], 8) = 0 <0.000005> 1414069442.804508 rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0 <0.000004> 1414069442.804530 rt_sigprocmask(SIG_BLOCK, [HUP INT USR1 USR2 ALRM CHLD IO], [], 8) = 0 <0.000004> 1414069442.804556 modify_ldt(17, {entry_number:516, base_addr:0x0f0000, limit:65535, seg_32bit:0, contents:0, read_exec_only:0, limit_in_pages:0, seg_not_present:0, useable:0}, 16) = -1 EINVAL (Invalid argument) <0.000004> 1414069442.804588 write(2, "modify_ldt: Das Argument ist ung"..., 39) = 39 <0.000006> 1414069442.804615 rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0 <0.000004> 1414069442.804638 rt_sigprocmask(SIG_BLOCK, [HUP INT USR1 USR2 ALRM CHLD IO], [], 8) = 0 <0.000004> 1414069442.804664 rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0 <0.000004> 1414069442.804686 rt_sigprocmask(SIG_BLOCK, [HUP INT USR1 USR2 ALRM CHLD IO], [], 8) = 0 <0.000004> 1414069442.804713 modify_ldt(17, {entry_number:517, base_addr:0x0f0400, limit:255, seg_32bit:0, contents:0, read_exec_only:0, limit_in_pages:0, seg_not_present:0, useable:0}, 16) = -1 EINVAL (Invalid argument) <0.000004> 1414069442.804738 write(2, "modify_ldt: Das Argument ist ung"..., 39) = 39 <0.000006> 1414069442.804766 rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0 <0.000004> 1414069442.804788 rt_sigprocmask(SIG_BLOCK, [HUP INT USR1 USR2 ALRM CHLD IO], [], 8) = 0 <0.000004> 1414069442.804815 rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0 <0.000004> 1414069442.804837 rt_sigprocmask(SIG_BLOCK, [HUP INT USR1 USR2 ALRM CHLD IO], [], 8) = 0 <0.000004> 1414069442.804863 modify_ldt(17, {entry_number:518, base_addr:0x0f0000, limit:65535, seg_32bit:0, contents:0, read_exec_only:0, limit_in_pages:0, seg_not_present:0, useable:0}, 16) = -1 EINVAL (Invalid argument) <0.000004> 1414069442.804889 write(2, "modify_ldt: Das Argument ist ung"..., 39) = 39 <0.000006> 1414069442.804916 rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0 <0.000004> 1414069442.804946 --- SIGSEGV (Segmentation fault) @ 0 (0) --- 1414069442.804999 rt_sigreturn(0x7eed4cac) = 0 <0.000007> 1414069442.805024 rt_sigprocmask(SIG_BLOCK, [HUP INT USR1 USR2 ALRM CHLD IO], [], 8) = 0 <0.000004> 1414069442.805051 rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0 <0.000004> 1414069442.805087 write(2, "err:module:attach_process_dlls \""..., 77) = 77 <0.000006> 1414069442.805119 write(2, "err:module:LdrInitializeThunk Ma"..., 144) = 144 <0.000006> 1414069442.805147 rt_sigprocmask(SIG_BLOCK, [HUP INT USR1 USR2 ALRM CHLD IO], [], 8) = 0 <0.000004> 1414069442.805175 write(3, "\6\0\0\0\0\0\0\0\0\0\0\0\377\377\377\377\5\0\0\300\0\0\0\0\0\0\0\0\0\0\0\0"..., 64) = 64 <0.000005> 1414069442.805206 read(5, "\0\0\0\0\0\0\0\0\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 64) = 64 <0.000120> 1414069442.805353 rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0 <0.000004> 1414069442.805407 exit_group(-1073741819) = ?