[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] Uninitialized variables in hvm_event_breakpoint (Re: New Defects reported by Coverity Scan for XenProject)
On 02/18/2016 12:01 PM, Ian Campbell wrote: > On Wed, 2016-02-17 at 16:02 -0800, scan-admin@xxxxxxxxxxxx wrote: >> Hi, >> >> Please find the latest report on new defect(s) introduced to XenProject >> found with Coverity Scan. >> >> 1 new defect(s) introduced to XenProject found with Coverity Scan. >> 4 defect(s), reported by Coverity Scan earlier, were marked fixed in the >> recent build analyzed by Coverity Scan. >> >> New defect(s) Reported-by: Coverity Scan >> Showing 1 of 1 defect(s) >> >> >> ** CID 1353192: Uninitialized variables (UNINIT) >> /xen/arch/x86/hvm/event.c: 176 in hvm_event_breakpoint() > > This appears to have been introduced by: > commit > 557c7873f35aa39bd84977b28948457b1b342f92 > Author: Corneliu ZUZU <czuzu@bitdef > ender.com> > Date: Mon Feb 15 14:14:16 2016 +0100 > > x86: merge 2 hvm_event_... functions into 1 > > This patch merges almost identical functions hvm_event_int3 and > hvm_event_single_step into a single function called > hvm_event_breakpoint. > Also fixes event.c file header comment in the process. > > Signed-off-by: Corneliu ZUZU < czuzu@xxxxxxxxxxxxxxx > > Acked-by: Razvan Cojocaru < rcojocaru@xxxxxxxxxxxxxxx > > Acked-by: Jan Beulich < jbeulich@xxxxxxxx > > > > hvm_event_breakpoint calls hvm_event_traps(&req) and if sync is true that > ors some bits into req->flags which was never initialised. > >> >> >> _________________________________________________________________________ >> _______________________________ >> *** CID 1353192: Uninitialized variables (UNINIT) >> /xen/arch/x86/hvm/event.c: 176 in hvm_event_breakpoint() >> 170 >> 171 int hvm_event_breakpoint(unsigned long rip, >> 172 enum hvm_event_breakpoint_type type) >> 173 { >> 174 struct vcpu *curr = current; >> 175 struct arch_domain *ad = &curr->domain->arch; >>>>> CID 1353192: Uninitialized variables (UNINIT) >>>>> Declaring variable "req" without initializer. >> 176 vm_event_request_t req; >> 177 >> 178 switch ( type ) >> 179 { >> 180 case HVM_EVENT_SOFTWARE_BREAKPOINT: >> 181 if ( !ad->monitor.software_breakpoint_enabled ) But the structure is being initialized in both cases (HVM_EVENT_SOFTWARE_BREAKPOINT and HVM_EVENT_SINGLESTEP_BREAKPOINT), and the default case returns, so it's not possible to get to the hvm_event_traps(&req) call with an uninitialized req. Am I missing something? Thanks, Razvan _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |