Bug 605803
| Summary: | gcc gets an internal compiler error when compiling a kernel module | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Product: | Red Hat Enterprise Linux 5 | Reporter: | David Smith <dsmith> | ||||||||
| Component: | gcc | Assignee: | Jakub Jelinek <jakub> | ||||||||
| Status: | CLOSED ERRATA | QA Contact: | qe-baseos-tools-bugs | ||||||||
| Severity: | medium | Docs Contact: | |||||||||
| Priority: | low | ||||||||||
| Version: | 5.5 | CC: | mnowak, pmuller | ||||||||
| Target Milestone: | rc | ||||||||||
| Target Release: | --- | ||||||||||
| Hardware: | ppc64 | ||||||||||
| OS: | Linux | ||||||||||
| Whiteboard: | |||||||||||
| Fixed In Version: | gcc-4.1.2-49.el5 | Doc Type: | Bug Fix | ||||||||
| Doc Text: | Story Points: | --- | |||||||||
| Clone Of: | Environment: | ||||||||||
| Last Closed: | 2011-01-13 23:58:30 UTC | Type: | --- | ||||||||
| Regression: | --- | Mount Type: | --- | ||||||||
| Documentation: | --- | CRM: | |||||||||
| Verified Versions: | Category: | --- | |||||||||
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||||||
| Cloudforms Team: | --- | Target Upstream Version: | |||||||||
| Embargoed: | |||||||||||
| Attachments: |
|
||||||||||
|
Description
David Smith
2010-06-18 19:44:16 UTC
This crashes in set_uids_in_ptset, in
else if (var_can_have_subvars (vi->decl)
&& get_subvars_for_var (vi->decl))
{
/* If VI->DECL is an aggregate for which we created
SFTs, add the SFT corresponding to VI->OFFSET. */
tree sft = get_subvar_at (vi->decl, vi->offset);
bitmap_set_bit (into, DECL_UID (sft));
}
get_subvar_at (vi->decl, vi->offset) for
vi->decl global, vi->offset 96 is NULL.
static struct {
int64_t s_f;
rwlock_t s_f_lock;
atomic_t s_f_lock_skip_count;
} global = {
.s_f_lock_skip_count = { (0) },
};
create_overlap_variables_for only creates sft for s_f, because up_lookup says up->max_used == 64.
The http://gcc.gnu.org/ml/gcc-patches/2005-10/msg00057.html patch for 4.2 removed anyoffset handling (not desirable for 4.1 of course) and also without any comment added if (sft) right before the bitmap_set_bit, I wonder if that one liner couldn't be safe in this case.
Created attachment 425575 [details]
gcc41-rh605803.patch
Another, perhaps safer, version. Instead of crashing just assume it can point to anything.
Created attachment 425577 [details]
gcc41-rh605803.patch
Another, perhaps safer, version. Instead of crashing just assume it can point to anything.
In gcc-4.1.2-49.el5 An advisory has been issued which should help the problem described in this bug report. This report is therefore being closed with a resolution of ERRATA. For more information on therefore solution and/or where to find the updated files, please follow the link below. You may reopen this bug report if the solution does not work for you. http://rhn.redhat.com/errata/RHSA-2011-0025.html |