Messages in this thread | | | Subject | Re: [tip:x86/urgent] BUILD SUCCESS WITH WARNING 064855a69003c24bd6b473b367d364e418c57625 | From | Reinette Chatre <> | Date | Fri, 20 Aug 2021 07:41:54 -0700 |
| |
Hi Babu,
On 8/20/2021 7:16 AM, Babu Moger wrote: > > > On 8/19/21 4:05 PM, Borislav Petkov wrote: >> On Thu, Aug 19, 2021 at 01:39:46PM -0700, Reinette Chatre wrote: >>> I can confirm that the removed comment explains why m would be initialized >>> when used in the code that follows. >>> >>> How would you prefer to address this? We could add just the comment back in >>> support of future reports or perhaps by adding the default case back with >>> the same error that would be returned earlier when there is an invalid >>> EVENT_ID. Something like: >>> >>> ---8<--- >>> diff --git a/arch/x86/kernel/cpu/resctrl/monitor.c >>> b/arch/x86/kernel/cpu/resctrl/monitor.c >>> index 57e4bb695ff9..05b99e4d621c 100644 >>> --- a/arch/x86/kernel/cpu/resctrl/monitor.c >>> +++ b/arch/x86/kernel/cpu/resctrl/monitor.c >>> @@ -304,6 +304,12 @@ static u64 __mon_event_count(u32 rmid, struct rmid_read >>> *rr) >>> case QOS_L3_MBM_LOCAL_EVENT_ID: >>> m = &rr->d->mbm_local[rmid]; >>> break; >>> + default: >>> + /* >>> + * Code would never reach here because >>> + * an invalid event id would fail the __rmid_read. >>> + */ >>> + return RMID_VAL_ERROR; >>> } >>> >>> if (rr->first) { >> >> Right, I would normally not take a patch just to fix a tool because it >> cannot see it correctly. >> >> But Babu has another use case which breaks the build so I guess that's >> serious enough to make an exception. >> >> Babu, can you please explain? > > Details: > > The patch applies cleanly to RHEL8.5 tree but the build fails with an > uninitialized variable warning treated as an error. The RHEL8.5 Makefile > uses '-Werror=maybe-uninitialized' to force uninitialized variable > warnings to be treated as errors. The build error was found while using > the redhat/configs/kernel-x86_64.config kernel config. BTW, the 5.14-rc6 > build passes and it does not build using '-Werror=maybe-uninitialized'. > The error from the build is below: > > arch/x86/kernel/cpu/resctrl/monitor.c: In function ‘__mon_event_count’: > arch/x86/kernel/cpu/resctrl/monitor.c:261:12: error: ‘m’ may be used > uninitialized in this function [-Werror=maybe-uninitialized] > m->chunks += chunks; > ^~ > > The following patch fixes the problem. > > diff --git a/arch/x86/kernel/cpu/resctrl/monitor.c > b/arch/x86/kernel/cpu/resctrl/monitor.c > index 57e4bb695ff9..553cc6410442 100644 > --- a/arch/x86/kernel/cpu/resctrl/monitor.c > +++ b/arch/x86/kernel/cpu/resctrl/monitor.c > @@ -304,6 +304,8 @@ static u64 __mon_event_count(u32 rmid, struct > rmid_read *rr) > case QOS_L3_MBM_LOCAL_EVENT_ID: > m = &rr->d->mbm_local[rmid]; > break; > + default: > + return RMID_VAL_ERROR; > } > > if (rr->first) { > > > Reinette, > Are you going to send the official patch or let me know I will send. You > can add signoff from me after adding above details. We probably need Fixes > and Cc: stable@vger.kernel.org. >
Could you please go ahead and send a patch with these details you collected?
Thank you very much
Reinette
| |