mirror of the now-defunct rocklinux.org
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

258 lines
5.0 KiB

  1. A backport of the glibc-2.6 support patch from valgrind svn trunk
  2. (svn diff -r6743:6744 svn://svn.valgrind.org/valgrind/trunk)
  3. --- ./configure.in (revision 6743)
  4. +++ ./configure.in (revision 6744)
  5. @@ -359,6 +359,16 @@
  6. ],
  7. glibc="2.5")
  8. +AC_EGREP_CPP([GLIBC_26], [
  9. +#include <features.h>
  10. +#ifdef __GNU_LIBRARY__
  11. + #if (__GLIBC__ == 2 && __GLIBC_MINOR__ == 6)
  12. + GLIBC_26
  13. + #endif
  14. +#endif
  15. +],
  16. +glibc="2.6")
  17. +
  18. AC_MSG_CHECKING([the glibc version])
  19. case "${glibc}" in
  20. @@ -386,9 +396,15 @@
  21. DEFAULT_SUPP="glibc-2.5.supp ${DEFAULT_SUPP}"
  22. ;;
  23. + 2.6)
  24. + AC_MSG_RESULT(2.6 family)
  25. + AC_DEFINE([GLIBC_2_6], 1, [Define to 1 if you're using glibc 2.6.x])
  26. + DEFAULT_SUPP="glibc-2.6.supp ${DEFAULT_SUPP}"
  27. + ;;
  28. +
  29. *)
  30. AC_MSG_RESULT(unsupported version)
  31. - AC_MSG_ERROR([Valgrind requires glibc version 2.2 - 2.5])
  32. + AC_MSG_ERROR([Valgrind requires glibc version 2.2 - 2.6])
  33. ;;
  34. esac
  35. --- ./glibc-2.6.supp (revision 0)
  36. +++ ./glibc-2.6.supp (revision 6744)
  37. @@ -0,0 +1,215 @@
  38. +
  39. +##----------------------------------------------------------------------##
  40. +
  41. +# Errors to suppress by default with glibc 2.4.x
  42. +
  43. +# Format of this file is:
  44. +# {
  45. +# name_of_suppression
  46. +# tool_name:supp_kind
  47. +# (optional extra info for some suppression types)
  48. +# caller0 name, or /name/of/so/file.so
  49. +# caller1 name, or ditto
  50. +# (optionally: caller2 name)
  51. +# (optionally: caller3 name)
  52. +# }
  53. +#
  54. +# For Memcheck, the supp_kinds are:
  55. +#
  56. +# Param Value1 Value2 Value4 Value8 Value16 Jump
  57. +# Free Addr1 Addr2 Addr4 Addr8 Addr16
  58. +# Cond (previously known as Value0)
  59. +#
  60. +# and the optional extra info is:
  61. +# if Param: name of system call param
  62. +
  63. +{
  64. + dl-hack1
  65. + Memcheck:Cond
  66. + fun:_dl_start
  67. + fun:_start
  68. +}
  69. +
  70. +{
  71. + dl-hack2
  72. + Memcheck:Cond
  73. + obj:/lib*/ld-2.5*.so
  74. + obj:/lib*/ld-2.5*.so
  75. + obj:/lib*/ld-2.5*.so
  76. + obj:/lib*/ld-2.5*.so
  77. +}
  78. +
  79. +{
  80. + dl-hack3
  81. + Memcheck:Cond
  82. + obj:/lib*/ld-2.5*so*
  83. + obj:/lib*/ld-2.5*so*
  84. + obj:/lib*/ld-2.5*so*
  85. +}
  86. +
  87. +##----------------------------------------------------------------------##
  88. +{
  89. + glibc-2.5.x-on-SUSE-10.2-(PPC)-1
  90. + Memcheck:Cond
  91. + fun:_dl_start_final
  92. + fun:_dl_start
  93. + fun:_start
  94. +}
  95. +{
  96. + glibc-2.5.x-on-SUSE-10.2-(PPC)-2a
  97. + Memcheck:Cond
  98. + fun:index
  99. + obj:*ld-2.5.*.so
  100. +}
  101. +{
  102. + glibc-2.5.x-on-SuSE-10.2-(PPC)-2b
  103. + Memcheck:Addr4
  104. + fun:index
  105. + fun:expand_dynamic_string_token
  106. +}
  107. +{
  108. + glibc-2.5.5-on-SuSE-10.2-(PPC)-2c
  109. + Memcheck:Addr4
  110. + fun:index
  111. + obj:*ld-2.5.*.so
  112. +}
  113. +{
  114. + glibc-2.3.5-on-SuSE-10.1-(PPC)-3
  115. + Memcheck:Addr4
  116. + fun:*wordcopy_fwd_dest_aligned*
  117. + fun:mem*cpy
  118. + obj:*lib*2.5.*.so
  119. +}
  120. +
  121. +##----------------------------------------------------------------------##
  122. +## Various structure padding things on SUSE 10.2
  123. +##
  124. +{
  125. + X11-64bit-padding-1a
  126. + Memcheck:Param
  127. + write(buf)
  128. + fun:__write_nocancel
  129. + obj:/usr/lib*/libX11.so*
  130. + obj:/usr/lib*/libX11.so*
  131. + fun:X*
  132. +}
  133. +{
  134. + X11-64bit-padding-1b
  135. + Memcheck:Param
  136. + write(buf)
  137. + fun:__write_nocancel
  138. + obj:/usr/lib*/libX11.so*
  139. + obj:/usr/lib*/libX11.so*
  140. + fun:_X*
  141. +}
  142. +{
  143. + X11-64bit-padding-1c
  144. + Memcheck:Param
  145. + write(buf)
  146. + fun:__write_nocancel
  147. + obj:/usr/lib*/libX11.so*
  148. + obj:/usr/lib*/libX11.so*
  149. + obj:/usr/lib*/libX11.so*
  150. +}
  151. +{
  152. + X11-64bit-padding-1d
  153. + Memcheck:Param
  154. + write(buf)
  155. + fun:__write_nocancel
  156. + obj:/usr/lib*/libICE.so*
  157. + obj:/usr/lib*/libICE.so*
  158. + obj:/usr/lib*/libICE.so*
  159. +}
  160. +{
  161. + X11-64bit-padding-2a
  162. + Memcheck:Param
  163. + writev(vector[...])
  164. + fun:do_writev
  165. + obj:/usr/lib*/libX11.so*
  166. + obj:/usr/lib*/libX11.so*
  167. + obj:/usr/lib*/libX11.so*
  168. +}
  169. +{
  170. + X11-64bit-padding-2b
  171. + Memcheck:Param
  172. + writev(vector[...])
  173. + fun:do_writev
  174. + fun:writev
  175. + obj:/usr/lib*/libX11.so*
  176. + obj:/usr/lib*/libX11.so*
  177. +}
  178. +
  179. +{
  180. + glibc24-64bit-padding-1a
  181. + Memcheck:Param
  182. + socketcall.sendto(msg)
  183. + fun:send
  184. + fun:get_mapping
  185. + fun:__nscd_get_map_ref
  186. + fun:nscd*
  187. +}
  188. +{
  189. + glibc24-64bit-padding-1b
  190. + Memcheck:Param
  191. + socketcall.sendto(msg)
  192. + fun:__sendto_nocancel
  193. + obj:/*libc-2.5.so
  194. + obj:/*libc-2.5.so
  195. + obj:/*libc-2.5.so
  196. +}
  197. +{
  198. + glibc24-64bit-padding-1c
  199. + Memcheck:Param
  200. + socketcall.send(msg)
  201. + fun:send
  202. + fun:__nscd_get_map_ref
  203. + fun:nscd_get*_r
  204. + fun:*nscd*
  205. + obj:/*libc-2.5.so
  206. +}
  207. +
  208. +
  209. +{
  210. + X11-64bit-padding-3a
  211. + Memcheck:Param
  212. + write(buf)
  213. + obj:/*libpthread-2.4.so*
  214. + obj:/usr/lib*/libX11.so*
  215. + obj:/usr/lib*/libX11.so*
  216. + obj:/usr/lib*/libX11.so*
  217. +}
  218. +
  219. +{
  220. + X11-64bit-padding-4a
  221. + Memcheck:Param
  222. + socketcall.sendto(msg)
  223. + fun:send
  224. + obj:/*libc-2.5.so
  225. + obj:/*libc-2.5.so
  226. + obj:/*libc-2.5.so
  227. +}
  228. +{
  229. + X11-64bit-padding-4b
  230. + Memcheck:Param
  231. + socketcall.send(msg)
  232. + fun:send
  233. + obj:/*libc-2.5.so
  234. + obj:/*libc-2.5.so
  235. + obj:/*libc-2.5.so
  236. +}
  237. +
  238. +##----------------------------------------------------------------------##
  239. +# MontaVista Linux 4.0.1 on ppc32
  240. +{
  241. + MVL-401-linuxthreads-pthread_create
  242. + Memcheck:Param
  243. + write(buf)
  244. + fun:pthread_create
  245. +}
  246. +{
  247. + MVL-401-linuxthreads-pthread_create
  248. + Memcheck:Param
  249. + write(buf)
  250. + obj:/lib/libpthread-0.10.so
  251. + fun:pthread_create
  252. +}