Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Driver segfault when compiled with -threaded #32

Open
YoEight opened this issue Mar 3, 2017 · 1 comment
Open

Driver segfault when compiled with -threaded #32

YoEight opened this issue Mar 3, 2017 · 1 comment

Comments

@YoEight
Copy link

YoEight commented Mar 3, 2017

Greetings,

Can't say much about it, here the trace:

*** Error in `/home/yoeight/project/.stack-work/install/x86_64-linux-ncurses6/lts-8.0/8.0.2/bin/my-prog': free(): invalid pointer: 0x00000000023f5e60 ***
======= Backtrace: =========
/usr/lib/libc.so.6(+0x70c4b)[0x7f9483a75c4b]
/usr/lib/libc.so.6(+0x76fe6)[0x7f9483a7bfe6]
/usr/lib/libc.so.6(+0x777de)[0x7f9483a7c7de]
/usr/lib/libtdsodbc.so(+0x231ce)[0x7f948156e1ce]
/usr/lib/libtdsodbc.so(SQLFetch+0x3e)[0x7f9481560ede]
/usr/lib/libodbc.so.2(SQLFetch+0xce)[0x7f948435161e]
/home/yoeight/project/.stack-work/install/x86_64-linux-ncurses6/lts-8.0/8.0.2/bin/my-prog[0xab2656]
======= Memory map: ========
00400000-00f66000 r-xp 00000000 103:04 5517926                           /home/yoeight/project/.stack-work/install/x86_64-linux-ncurses6/lts-8.0/8.0.2/bin/my-prog
01166000-011a5000 r--p 00b66000 103:04 5517926                           /home/yoeight/project/.stack-work/install/x86_64-linux-ncurses6/lts-8.0/8.0.2/bin/my-prog
011a5000-01232000 rw-p 00ba5000 103:04 5517926                           /home/yoeight/project/.stack-work/install/x86_64-linux-ncurses6/lts-8.0/8.0.2/bin/my-prog
01232000-01234000 rw-p 00000000 00:00 0 
02367000-0240b000 rw-p 00000000 00:00 0                                  [heap]
4200000000-4200100000 rw-p 00000000 00:00 0 
4200100000-14200100000 ---p 00000000 00:00 0 
7f9464000000-7f9464021000 rw-p 00000000 00:00 0 
7f9464021000-7f9468000000 ---p 00000000 00:00 0 
7f946c000000-7f946c021000 rw-p 00000000 00:00 0 
7f946c021000-7f9470000000 ---p 00000000 00:00 0 
7f94733e5000-7f94733fb000 r-xp 00000000 103:02 2756127                   /usr/lib/libgcc_s.so.1
7f94733fb000-7f94735fa000 ---p 00016000 103:02 2756127                   /usr/lib/libgcc_s.so.1
7f94735fa000-7f94735fb000 r--p 00015000 103:02 2756127                   /usr/lib/libgcc_s.so.1
7f94735fb000-7f94735fc000 rw-p 00016000 103:02 2756127                   /usr/lib/libgcc_s.so.1
7f94735fc000-7f94735fd000 ---p 00000000 00:00 0 
7f94735fd000-7f9473dfd000 rw-p 00000000 00:00 0 
7f9473dfd000-7f9473dff000 r-xp 00000000 103:02 2755839                   /usr/lib/gconv/CP1252.so
7f9473dff000-7f9473ffe000 ---p 00002000 103:02 2755839                   /usr/lib/gconv/CP1252.so
7f9473ffe000-7f9473fff000 r--p 00001000 103:02 2755839                   /usr/lib/gconv/CP1252.so
7f9473fff000-7f9474000000 rw-p 00002000 103:02 2755839                   /usr/lib/gconv/CP1252.so
7f9474000000-7f9474021000 rw-p 00000000 00:00 0 
7f9474021000-7f9478000000 ---p 00000000 00:00 0 
7f9478000000-7f9478021000 rw-p 00000000 00:00 0 
7f9478021000-7f947c000000 ---p 00000000 00:00 0 
7f947c000000-7f947c021000 rw-p 00000000 00:00 0 
7f947c021000-7f9480000000 ---p 00000000 00:00 0 
7f9480198000-7f948019b000 r-xp 00000000 103:02 2756071                   /usr/lib/gconv/UTF-16.so
7f948019b000-7f948039a000 ---p 00003000 103:02 2756071                   /usr/lib/gconv/UTF-16.so
7f948039a000-7f948039b000 r--p 00002000 103:02 2756071                   /usr/lib/gconv/UTF-16.so
7f948039b000-7f948039c000 rw-p 00003000 103:02 2756071                   /usr/lib/gconv/UTF-16.so
7f948059f000-7f94805a4000 r-xp 00000000 103:02 2755809                   /usr/lib/libnss_dns-2.24.so
7f94805a4000-7f94807a3000 ---p 00005000 103:02 2755809                   /usr/lib/libnss_dns-2.24.so
7f94807a3000-7f94807a4000 r--p 00004000 103:02 2755809                   /usr/lib/libnss_dns-2.24.so
7f94807a4000-7f94807a5000 rw-p 00005000 103:02 2755809                   /usr/lib/libnss_dns-2.24.so
7f94807a5000-7f94807e6000 r-xp 00000000 103:02 2763096                   /usr/lib/libnss_resolve.so.2
7f94807e6000-7f94807e9000 r--p 00040000 103:02 2763096                   /usr/lib/libnss_resolve.so.2
7f94807e9000-7f94807ea000 rw-p 00043000 103:02 2763096                   /usr/lib/libnss_resolve.so.2
7f94807ea000-7f94807eb000 rw-p 00000000 00:00 0 
7f94807eb000-7f94807ef000 r-xp 00000000 103:02 2759142                   /usr/lib/libcap.so.2.25
7f94807ef000-7f94809ee000 ---p 00004000 103:02 2759142                   /usr/lib/libcap.so.2.25
7f94809ee000-7f94809ef000 rw-p 00003000 103:02 2759142                   /usr/lib/libcap.so.2.25
7f94809ef000-7f9480a03000 r-xp 00000000 103:02 2755817                   /usr/lib/libresolv-2.24.so
7f9480a03000-7f9480c02000 ---p 00014000 103:02 2755817                   /usr/lib/libresolv-2.24.so
7f9480c02000-7f9480c03000 r--p 00013000 103:02 2755817                   /usr/lib/libresolv-2.24.so
7f9480c03000-7f9480c04000 rw-p 00014000 103:02 2755817                   /usr/lib/libresolv-2.24.so
7f9480c04000-7f9480c06000 rw-p 00000000 00:00 0 
7f9480c06000-7f9480c47000 r-xp 00000000 103:02 2763095                   /usr/lib/libnss_mymachines.so.2
7f9480c47000-7f9480c4a000 r--p 00040000 103:02 2763095                   /usr/lib/libnss_mymachines.so.2
7f9480c4a000-7f9480c4b000 rw-p 00043000 103:02 2763095                   /usr/lib/libnss_mymachines.so.2
7f9480c4b000-7f9480c4c000 rw-p 00000000 00:00 0 
7f9480c4c000-7f9480c5d000 r-xp 00000000 103:02 2794992                   /usr/lib/libodbcinst.so.2.0.0
7f9480c5d000-7f9480e5c000 ---p 00011000 103:02 2794992                   /usr/lib/libodbcinst.so.2.0.0
7f9480e5c000-7f9480e5d000 r--p 00010000 103:02 2794992                   /usr/lib/libodbcinst.so.2.0.0
7f9480e5d000-7f9480e5e000 rw-p 00011000 103:02 2794992                   /usr/lib/libodbcinst.so.2.0.0
7f9480e5e000-7f9480e61000 rw-p 00000000 00:00 0 
7f9480e61000-7f94810af000 r-xp 00000000 103:02 2762729                   /usr/lib/libcrypto.so.1.0.0
7f94810af000-7f94812ae000 ---p 0024e000 103:02 2762729                   /usr/lib/libcrypto.so.1.0.0
7f94812ae000-7f94812ca000 r--p 0024d000 103:02 2762729                   /usr/lib/libcrypto.so.1.0.0
7f94812ca000-7f94812d6000 rw-p 00269000 103:02 2762729                   /usr/lib/libcrypto.so.1.0.0
7f94812d6000-7f94812d9000 rw-p 00000000 00:00 0 
7f94812d9000-7f9481340000 r-xp 00000000 103:02 2762728                   /usr/lib/libssl.so.1.0.0
7f9481340000-7f9481540000 ---p 00067000 103:02 2762728                   /usr/lib/libssl.so.1.0.0
7f9481540000-7f9481544000 r--p 00067000 103:02 2762728                   /usr/lib/libssl.so.1.0.0
7f9481544000-7f948154b000 rw-p 0006b000 103:02 2762728                   /usr/lib/libssl.so.1.0.0
7f948154b000-7f94815b6000 r-xp 00000000 103:02 2795039                   /usr/lib/libtdsodbc.so.0.0.0
7f94815b6000-7f94817b6000 ---p 0006b000 103:02 2795039                   /usr/lib/libtdsodbc.so.0.0.0
7f94817b6000-7f94817b9000 r--p 0006b000 103:02 2795039                   /usr/lib/libtdsodbc.so.0.0.0
7f94817b9000-7f94817ba000 rw-p 0006e000 103:02 2795039                   /usr/lib/libtdsodbc.so.0.0.0
7f94817ba000-7f94817c4000 r-xp 00000000 103:02 2755810                   /usr/lib/libnss_files-2.24.so
7f94817c4000-7f94819c4000 ---p 0000a000 103:02 2755810                   /usr/lib/libnss_files-2.24.so
7f94819c4000-7f94819c5000 r--p 0000a000 103:02 2755810                   /usr/lib/libnss_files-2.24.so
7f94819c5000-7f94819c6000 rw-p 0000b000 103:02 2755810                   /usr/lib/libnss_files-2.24.so
7f94819c6000-7f94819cc000 rw-p 00000000 00:00 0 
7f94819cc000-7f94819d7000 r-xp 00000000 103:02 2755812                   /usr/lib/libnss_nis-2.24.so
7f94819d7000-7f9481bd6000 ---p 0000b000 103:02 2755812                   /usr/lib/libnss_nis-2.24.so
7f9481bd6000-7f9481bd7000 r--p 0000a000 103:02 2755812                   /usr/lib/libnss_nis-2.24.so
7f9481bd7000-7f9481bd8000 rw-p 0000b000 103:02 2755812                   /usr/lib/libnss_nis-2.24.so
7f9481bd8000-7f9481bec000 r-xp 00000000 103:02 2755816                   /usr/lib/libnsl-2.24.so
7f9481bec000-7f9481dec000 ---p 00014000 103:02 2755816                   /usr/lib/libnsl-2.24.so
7f9481dec000-7f9481ded000 r--p 00014000 103:02 2755816                   /usr/lib/libnsl-2.24.so
7f9481ded000-7f9481dee000 rw-p 00015000 103:02 2755816                   /usr/lib/libnsl-2.24.so
7f9481dee000-7f9481df0000 rw-p 00000000 00:00 0 
7f9481df0000-7f9481df7000 r-xp 00000000 103:02 2755807                   /usr/lib/libnss_compat-2.24.so
7f9481df7000-7f9481ff6000 ---p 00007000 103:02 2755807                   /usr/lib/libnss_compat-2.24.so
7f9481ff6000-7f9481ff7000 r--p 00006000 103:02 2755807                   /usr/lib/libnss_compat-2.24.so
7f9481ff7000-7f9481ff8000 rw-p 00007000 103:02 2755807                   /usr/lib/libnss_compat-2.24.so
7f9481ff8000-7f9481ff9000 ---p 00000000 00:00 0 
7f9481ff9000-7f94827f9000 rw-p 00000000 00:00 0 
7f94827f9000-7f94827fa000 ---p 00000000 00:00 0 
7f94827fa000-7f9482ffa000 rw-p 00000000 00:00 0 
7f9482ffa000-7f9482ffb000 ---p 00000000 00:00 0 
7f9482ffb000-7f94837fb000 rw-p 00000000 00:00 0 
7f94837fb000-7f9483804000 r-xp 00000000 103:02 2774785                   /usr/lib/libltdl.so.7.3.1
7f9483804000-7f9483a03000 ---p 00009000 103:02 2774785                   /usr/lib/libltdl.so.7.3.1
7f9483a03000-7f9483a04000 r--p 00008000 103:02 2774785                   /usr/lib/libltdl.so.7.3.1
7f9483a04000-7f9483a05000 rw-p 00009000 103:02 2774785                   /usr/lib/libltdl.so.7.3.1
7f9483a05000-7f9483b9a000 r-xp 00000000 103:02 2755757                   /usr/lib/libc-2.24.so
7f9483b9a000-7f9483d99000 ---p 00195000 103:02 2755757                   /usr/lib/libc-2.24.so
7f9483d99000-7f9483d9d000 r--p 00194000 103:02 2755757                   /usr/lib/libc-2.24.so
7f9483d9d000-7f9483d9f000 rw-p 00198000 103:02 2755757                   /usr/lib/libc-2.24.so
7f9483d9f000-7f9483da3000 rw-p 00000000 00:00 0 
7f9483da3000-7f9483ea6000 r-xp 00000000 103:02 2755815                   /usr/lib/libm-2.24.so
7f9483ea6000-7f94840a5000 ---p 00103000 103:02 2755815                   /usr/lib/libm-2.24.so
7f94840a5000-7f94840a6000 r--p 00102000 103:02 2755815                   /usr/lib/libm-2.24.so
7f94840a6000-7f94840a7000 rw-p 00103000 103:02 2755815                   /usr/lib/libm-2.24.so
7f94840a7000-7f9484139000 r-xp 00000000 103:02 2759134                   /usr/lib/libgmp.so.10.3.2
7f9484139000-7f9484338000 ---p 00092000 103:02 2759134                   /usr/lib/libgmp.so.10.3.2
7f9484338000-7f9484339000 r--p 00091000 103:02 2759134                   /usr/lib/libgmp.so.10.3.2
7f9484339000-7f948433a000 rw-p 00092000 103:02 2759134                   /usr/lib/libgmp.so.10.3.2
7f948433a000-7f948439d000 r-xp 00000000 103:02 2794993                   /usr/lib/libodbc.so.2.0.0
7f948439d000-7f948459c000 ---p 00063000 103:02 2794993                   /usr/lib/libodbc.so.2.0.0
7f948459c000-7f948459d000 r--p 00062000 103:02 2794993                   /usr/lib/libodbc.so.2.0.0
7f948459d000-7f94845a4000 rw-p 00063000 103:02 2794993                   /usr/lib/libodbc.so.2.0.0
7f94845a4000-7f94845a8000 rw-p 00000000 00:00 0 
7f94845a8000-7f94845c0000 r-xp 00000000 103:02 2755738                   /usr/lib/libpthread-2.24.so
7f94845c0000-7f94847bf000 ---p 00018000 103:02 2755738                   /usr/lib/libpthread-2.24.so
7f94847bf000-7f94847c0000 r--p 00017000 103:02 2755738                   /usr/lib/libpthread-2.24.so
7f94847c0000-7f94847c1000 rw-p 00018000 103:02 2755738                   /usr/lib/libpthread-2.24.so
7f94847c1000-7f94847c5000 rw-p 00000000 00:00 0 
7f94847c5000-7f94847c7000 r-xp 00000000 103:02 2755814                   /usr/lib/libdl-2.24.so
7f94847c7000-7f94849c7000 ---p 00002000 103:02 2755814                   /usr/lib/libdl-2.24.so
7f94849c7000-7f94849c8000 r--p 00002000 103:02 2755814                   /usr/lib/libdl-2.24.so
7f94849c8000-7f94849c9000 rw-p 00003000 103:02 2755814                   /usr/lib/libdl-2.24.so
7f94849c9000-7f94849cb000 r-xp 00000000 103:02 2755819                   /usr/lib/libutil-2.24.so
7f94849cb000-7f9484bca000 ---p 00002000 103:02 2755819                   /usr/lib/libutil-2.24.so
7f9484bca000-7f9484bcb000 r--p 00001000 103:02 2755819                   /usr/lib/libutil-2.24.so
7f9484bcb000-7f9484bcc000 rw-p 00002000 103:02 2755819                   /usr/lib/libutil-2.24.so
7f9484bcc000-7f9484bd3000 r-xp 00000000 103:02 2755818                   /usr/lib/librt-2.24.so
7f9484bd3000-7f9484dd2000 ---p 00007000 103:02 2755818                   /usr/lib/librt-2.24.so
7f9484dd2000-7f9484dd3000 r--p 00006000 103:02 2755818                   /usr/lib/librt-2.24.so
7f9484dd3000-7f9484dd4000 rw-p 00007000 103:02 2755818                   /usr/lib/librt-2.24.so
7f9484dd4000-7f9484dea000 r-xp 00000000 103:02 2763186                   /usr/lib/libz.so.1.2.11
7f9484dea000-7f9484fe9000 ---p 00016000 103:02 2763186                   /usr/lib/libz.so.1.2.11
7f9484fe9000-7f9484fea000 r--p 00015000 103:02 2763186                   /usr/lib/libz.so.1.2.11
7f9484fea000-7f9484feb000 rw-p 00016000 103:02 2763186                   /usr/lib/libz.so.1.2.11
7f9484feb000-7f948500e000 r-xp 00000000 103:02 2755756                   /usr/lib/ld-2.24.so
7f9485047000-7f94851df000 r--p 00000000 103:02 2774975                   /usr/lib/locale/locale-archive
7f94851df000-7f94851e5000 rw-p 00000000 00:00 0 
7f948520c000-7f948520d000 rw-p 00000000 00:00 0 
7f948520d000-7f948520e000 r--p 00022000 103:02 2755756                   /usr/lib/ld-2.24.so
7f948520e000-7f948520f000 rw-p 00023000 103:02 2755756                   /usr/lib/ld-2.24.so
7f948520f000-7f9485210000 rw-p 00000000 00:00 0 
7ffd02688000-7ffd026aa000 rw-p 00000000 00:00 0                          [stack]
7ffd02763000-7ffd02765000 r--p 00000000 00:00 0                          [vvar]
7ffd02765000-7ffd02767000 r-xp 00000000 00:00 0                          [vdso]
ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0                  [vsyscall]
[1]    8343 abort (core dumped)  stack exec my-prog

Environment

OS: Archlinux 64bits
GHC: 8.0.2 64bits

λ yoeight → cat /etc/odbc.ini
[MSSQL]
Description = MS SQL Server
Driver = FreeTDS
Server = ${server_name}
UID = ${user}
PWD = ${password}
ReadOnly = No
Port = 1111
TDS_Version = 8.0
λ yoeight → cat /etc/odbcinst.ini
[FreeTDS]
Description = MS SQL Server
Driver = /usr/lib/libtdsodbc.so
UsageCount = 1
FileUsage = 1
Trace = Yes
TraceFile = /tmp/odbc.log
λ yoeight → cat /etc/freetds/freetds.conf 
#   $Id: freetds.conf,v 1.12 2007-12-25 06:02:36 jklowden Exp $
#
# This file is installed by FreeTDS if no file by the same 
# name is found in the installation directory.  
#
# For information about the layout of this file and its settings, 
# see the freetds.conf manpage "man freetds.conf".  

# Global settings are overridden by those in a database
# server specific section
[global]
        # TDS protocol version
	tds version = auto

	# Whether to write a TDSDUMP file for diagnostic purposes
	# (setting this to /tmp is insecure on a multi-user system)
;	dump file = /tmp/freetds.log
;	debug flags = 0xffff

	# Command and connection timeouts
;	timeout = 10
;	connect timeout = 10
	
	# If you get out-of-memory errors, it may mean that your client
	# is trying to allocate a huge buffer for a TEXT field.  
	# Try setting 'text size' to a more reasonable limit 
	text size = 64512

# A typical Sybase server
[egServer50]
	host = symachine.domain.com
	port = 5000
	tds version = 5.0

# A typical Microsoft server
[egServer70]
	host = ntmachine.domain.com
	port = 1433
	tds version = 7.0
@ewal31
Copy link

ewal31 commented Apr 30, 2019

I have this problem when compiling with Threaded also.
Making everything strict though seems to solve it.
Something is up with the ordering.

Or not... It will work by one build. And the clean build will seqfault every time.

Ahh... works fine with bracket.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants