Commit 9e1b441
committed
Allocate static pages in memory strictly MAXALIGNed to avoid overflow
due to adding padding bytes by Postgres data access alignment macros.
This was the source of rare but dangerous segfault on 32-bit FreeBSD
but no system was safe as static alignment is completely
system/compiler free choice.
This problem was hidden by the added completely unrelated variable
trace_sort way before the relevant part of the code. It just shifted
the alignment of all variables with bigger address values to
acceptable but haven't solved the problem at large.1 parent 7930600 commit 9e1b441
2 files changed
+32
-6
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
853 | 853 | | |
854 | 854 | | |
855 | 855 | | |
856 | | - | |
| 856 | + | |
| 857 | + | |
| 858 | + | |
| 859 | + | |
| 860 | + | |
| 861 | + | |
| 862 | + | |
| 863 | + | |
857 | 864 | | |
858 | 865 | | |
859 | 866 | | |
| |||
1055 | 1062 | | |
1056 | 1063 | | |
1057 | 1064 | | |
1058 | | - | |
| 1065 | + | |
| 1066 | + | |
| 1067 | + | |
| 1068 | + | |
| 1069 | + | |
| 1070 | + | |
| 1071 | + | |
| 1072 | + | |
1059 | 1073 | | |
1060 | 1074 | | |
1061 | 1075 | | |
| |||
1233 | 1247 | | |
1234 | 1248 | | |
1235 | 1249 | | |
1236 | | - | |
1237 | | - | |
| 1250 | + | |
| 1251 | + | |
| 1252 | + | |
| 1253 | + | |
| 1254 | + | |
| 1255 | + | |
| 1256 | + | |
| 1257 | + | |
1238 | 1258 | | |
1239 | 1259 | | |
1240 | 1260 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
428 | 428 | | |
429 | 429 | | |
430 | 430 | | |
431 | | - | |
432 | | - | |
| 431 | + | |
| 432 | + | |
| 433 | + | |
| 434 | + | |
| 435 | + | |
| 436 | + | |
| 437 | + | |
| 438 | + | |
433 | 439 | | |
434 | 440 | | |
435 | 441 | | |
| |||
0 commit comments