fix amd build issue on the newer kernel with higher entropy
| Affects | Status | Importance | Assigned to | Milestone | ||
|---|---|---|---|---|---|---|
| gcc-10 (Ubuntu) |
Fix Released
|
Medium
|
gerald.yang | |||
| Focal |
Fix Released
|
Medium
|
gerald.yang | |||
| Jammy |
Fix Released
|
Medium
|
gerald.yang | |||
| Noble |
In Progress
|
Undecided
|
Unassigned | |||
| gcc-11 (Ubuntu) | Status tracked in Resolute | |||||
| Jammy |
Fix Released
|
Medium
|
gerald.yang | |||
| Noble |
Fix Released
|
Undecided
|
Unassigned | |||
| Questing |
Fix Released
|
Undecided
|
Unassigned | |||
| Resolute |
Fix Released
|
Medium
|
gerald.yang | |||
| gcc-12 (Ubuntu) | Status tracked in Resolute | |||||
| Jammy |
Fix Released
|
Medium
|
gerald.yang | |||
| Noble |
Fix Released
|
Undecided
|
Unassigned | |||
| Questing |
Fix Released
|
Undecided
|
Unassigned | |||
| Resolute |
Fix Released
|
Medium
|
gerald.yang | |||
| gcc-9 (Ubuntu) |
New
|
Undecided
|
Unassigned | |||
| Jammy |
In Progress
|
Undecided
|
Unassigned | |||
| Noble |
In Progress
|
Undecided
|
Unassigned | |||
Bug Description
[ Impact ]
Our launchpad builder has been updated to Noble and with this kernel SRU:
https:/
vm.mmap_rnd_bits has been changed from 28 to 32
This leads to gcc build failed because some build logs are filled with the following message
and run out of all disk space on the builder:
AddressSanitize
grep -c "^AddressSaniti
599050838
llvm also hit the same issue and has been fixed by:
https:/
The root cause is when vm.mmap_rnd_bits is set to a higher value, it will frequently conflict
with asan's allocator on amd64, so the asan's allocator base address needs to be moved to
another location that won't have the conflict, please see the above commit for more details.
gcc-13 already has this patch, but gcc-10/11/12 don't, we need to patch them as well.
[ Test Plan ]
This can be easily reproduced by
1. download source, e.g. apt source gcc-10
2. no need to change any code, just add a test version in debian/changelog and dput to a PPA, the build will fail.
With this patch, build should succeed.
[ Where problems could occur ]
This patch moves the asan allocator's base address from 0x600000000000ULL to 0x500000000000ULL,
so it won't conflict with PIE program segment, it shouldn't cause any issue.
In case if something goes wrong, the build should fail again.
[ Other Info ]
The previous SRU to fix the same issue on gcc-12/13 on noble:
https:/
Related branches
- git-ubuntu import: Pending requested
-
Diff: 121 lines (+90/-0)4 files modifieddebian/changelog (+10/-0)
debian/patches/lp2107313-asan-allocator-base.diff (+23/-0)
debian/patches/pr118976.diff (+55/-0)
debian/rules.patch (+2/-0)
- git-ubuntu import: Pending requested
-
Diff: 119 lines (+88/-0)4 files modifieddebian/changelog (+10/-0)
debian/patches/lp2107313-asan-allocator-base.diff (+21/-0)
debian/patches/pr118976.diff (+55/-0)
debian/rules.patch (+2/-0)
- git-ubuntu import: Pending requested
-
Diff: 119 lines (+88/-0)4 files modifieddebian/changelog (+10/-0)
debian/patches/lp2107313-asan-allocator-base.diff (+21/-0)
debian/patches/pr118976.diff (+55/-0)
debian/rules.patch (+2/-0)
CVE References
| Changed in gcc-10 (Ubuntu): | |
| status: | New → In Progress |
| assignee: | nobody → gerald.yang (gerald-yang-tw) |
| Changed in gcc-10 (Ubuntu Focal): | |
| status: | New → In Progress |
| Changed in gcc-10 (Ubuntu Jammy): | |
| status: | New → In Progress |
| Changed in gcc-10 (Ubuntu Focal): | |
| assignee: | nobody → gerald.yang (gerald-yang-tw) |
| Changed in gcc-10 (Ubuntu Jammy): | |
| assignee: | nobody → gerald.yang (gerald-yang-tw) |
| no longer affects: | gcc-11 (Ubuntu Focal) |
| no longer affects: | gcc-12 (Ubuntu Focal) |
| Changed in gcc-11 (Ubuntu): | |
| status: | New → In Progress |
| Changed in gcc-11 (Ubuntu Jammy): | |
| status: | New → In Progress |
| Changed in gcc-12 (Ubuntu Jammy): | |
| status: | New → In Progress |
| assignee: | nobody → gerald.yang (gerald-yang-tw) |
| Changed in gcc-12 (Ubuntu): | |
| status: | New → In Progress |
| Changed in gcc-11 (Ubuntu): | |
| assignee: | nobody → gerald.yang (gerald-yang-tw) |
| Changed in gcc-11 (Ubuntu Jammy): | |
| assignee: | nobody → gerald.yang (gerald-yang-tw) |
| Changed in gcc-12 (Ubuntu): | |
| assignee: | nobody → gerald.yang (gerald-yang-tw) |
| Changed in gcc-10 (Ubuntu Focal): | |
| status: | In Progress → Fix Released |
| Changed in gcc-10 (Ubuntu): | |
| status: | In Progress → Fix Released |
| Changed in gcc-11 (Ubuntu): | |
| status: | In Progress → Fix Released |
| Changed in gcc-12 (Ubuntu): | |
| status: | In Progress → Fix Released |
| no longer affects: | gcc-10 (Ubuntu Resolute) |
| no longer affects: | gcc-10 (Ubuntu Questing) |
| Changed in gcc-11 (Ubuntu Resolute): | |
| status: | Fix Released → New |
| Changed in gcc-12 (Ubuntu Resolute): | |
| status: | Fix Released → New |
| no longer affects: | gcc-9 (Ubuntu Questing) |
| no longer affects: | gcc-9 (Ubuntu Resolute) |
| Changed in gcc-12 (Ubuntu Noble): | |
| status: | New → Fix Released |
| Changed in gcc-12 (Ubuntu Questing): | |
| status: | New → Fix Released |
| Changed in gcc-12 (Ubuntu Resolute): | |
| status: | New → Fix Released |
| Changed in gcc-11 (Ubuntu Noble): | |
| status: | New → Fix Released |
| Changed in gcc-11 (Ubuntu Questing): | |
| status: | New → Fix Released |
| Changed in gcc-11 (Ubuntu Resolute): | |
| status: | New → Fix Released |
| Changed in gcc-10 (Ubuntu Noble): | |
| status: | New → In Progress |
| Changed in gcc-9 (Ubuntu Jammy): | |
| status: | New → In Progress |
| Changed in gcc-9 (Ubuntu Noble): | |
| status: | New → In Progress |

debdiff for gcc-10 on focal