Bug 499202
| Summary: | New compilation warning in ext4 rebase | ||
|---|---|---|---|
| Product: | Red Hat Enterprise Linux 5 | Reporter: | Eric Sandeen <esandeen> |
| Component: | kernel | Assignee: | Eric Sandeen <esandeen> |
| Status: | CLOSED ERRATA | QA Contact: | Red Hat Kernel QE team <kernel-qe> |
| Severity: | medium | Docs Contact: | |
| Priority: | low | ||
| Version: | 5.4 | CC: | dzickus, emcnabb |
| Target Milestone: | rc | Keywords: | Regression |
| Target Release: | --- | ||
| Hardware: | All | ||
| OS: | Linux | ||
| Whiteboard: | |||
| Fixed In Version: | Doc Type: | Bug Fix | |
| Doc Text: | Story Points: | --- | |
| Clone Of: | Environment: | ||
| Last Closed: | 2009-09-02 08:57:28 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: | |||
This request was evaluated by Red Hat Product Management for inclusion in a Red Hat Enterprise Linux maintenance release. Product Management has requested further review of this request by Red Hat Engineering, for potential inclusion in a Red Hat Enterprise Linux Update release for currently deployed products. This request is not yet committed for inclusion in an Update release. in kernel-2.6.18-146.el5 You can download this test kernel from http://people.redhat.com/dzickus/el5 Please do NOT transition this bugzilla state to VERIFIED until our QE team has sent specific instructions indicating when to do so. However feel free to provide a comment indicating that this fix has been verified. 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-2009-1243.html |
(A bit embarrasing, I re-introduced this after fixing it in 5.3, during the rebase - setting "regression" for this reason). The ext4 code generates a warning when built on x86: fs/ext4/inode.c: In function 'ext4_do_update_inode': fs/ext4/inode.c:3047: warning: right shift count >= width of type This is because upstream, the vfs i_version is a long long, but in rhel5 it's only a long (so 32 bits on 32 bit machines) and we over-shift in that case. Even though a 32-bit i_version might not be terribly useful for the intended purpose, this should probably be fixed to avoid unexpected results. Thanks, -Eric Index: rhel5-kernel/fs/ext4/inode.c =================================================================== --- rhel5-kernel.orig/fs/ext4/inode.c 2008-09-22 13:30:02.000000000 -0500 +++ rhel5-kernel/fs/ext4/inode.c 2008-09-22 14:55:39.493001278 -0500 @@ -3043,8 +3043,13 @@ static int ext4_do_update_inode(handle_t raw_inode->i_disk_version = cpu_to_le32(inode->i_version); if (ei->i_extra_isize) { if (EXT4_FITS_IN_INODE(raw_inode, ei, i_version_hi)) + /* in RHEL5 i_version is an unsigned long */ +#if BITS_PER_LONG == 64 raw_inode->i_version_hi = cpu_to_le32(inode->i_version >> 32); +#else + raw_inode->i_version_hi = 0; +#endif raw_inode->i_extra_isize = cpu_to_le16(ei->i_extra_isize); }