Message ID | 1459509142-13524-1-git-send-email-will.deacon@arm.com |
---|---|
State | Superseded |
Headers | show |
On Fri, Apr 01, 2016 at 12:12:22PM +0100, Will Deacon wrote: > The kernel is written in C, not python, so we need braces around > multi-line if statements. GCC 6 actually warns about this, thanks to the > fantastic new "-Wmisleading-indentation" flag: We should rewrite the kernel in python! > > | virt/kvm/arm/pmu.c: In function ‘kvm_pmu_overflow_status’: > | virt/kvm/arm/pmu.c:198:3: warning: statement is indented as if it were guarded by... [-Wmisleading-indentation] > | reg &= vcpu_sys_reg(vcpu, PMCNTENSET_EL0); > | ^~~ > | arch/arm64/kvm/../../../virt/kvm/arm/pmu.c:196:2: note: ...this ‘if’ clause, but it is not > | if ((vcpu_sys_reg(vcpu, PMCR_EL0) & ARMV8_PMU_PMCR_E)) > | ^~ > > As it turns out, this particular case is harmless (we just do some &= > operations with 0), but worth fixing nonetheless. > > Signed-off-by: Will Deacon <will.deacon@arm.com> Thanks for the patch. -Christoffer > --- > virt/kvm/arm/pmu.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/virt/kvm/arm/pmu.c b/virt/kvm/arm/pmu.c > index b5754c6c5508..575c7aa30d7e 100644 > --- a/virt/kvm/arm/pmu.c > +++ b/virt/kvm/arm/pmu.c > @@ -193,11 +193,12 @@ static u64 kvm_pmu_overflow_status(struct kvm_vcpu *vcpu) > { > u64 reg = 0; > > - if ((vcpu_sys_reg(vcpu, PMCR_EL0) & ARMV8_PMU_PMCR_E)) > + if ((vcpu_sys_reg(vcpu, PMCR_EL0) & ARMV8_PMU_PMCR_E)) { > reg = vcpu_sys_reg(vcpu, PMOVSSET_EL0); > reg &= vcpu_sys_reg(vcpu, PMCNTENSET_EL0); > reg &= vcpu_sys_reg(vcpu, PMINTENSET_EL1); > reg &= kvm_pmu_valid_counter_mask(vcpu); > + } > > return reg; > } > -- > 2.1.4 >
On Fri, Apr 01, 2016 at 01:30:40PM +0200, Christoffer Dall wrote: > On Fri, Apr 01, 2016 at 12:12:22PM +0100, Will Deacon wrote: > > The kernel is written in C, not python, so we need braces around > > multi-line if statements. GCC 6 actually warns about this, thanks to the > > fantastic new "-Wmisleading-indentation" flag: > > We should rewrite the kernel in python! Oh man, you made me look and I found this: https://mail.python.org/pipermail/python-list/2004-October/283327.html but, today's certainly the day for whacky suggestions. > > | virt/kvm/arm/pmu.c: In function ‘kvm_pmu_overflow_status’: > > | virt/kvm/arm/pmu.c:198:3: warning: statement is indented as if it were guarded by... [-Wmisleading-indentation] > > | reg &= vcpu_sys_reg(vcpu, PMCNTENSET_EL0); > > | ^~~ > > | arch/arm64/kvm/../../../virt/kvm/arm/pmu.c:196:2: note: ...this ‘if’ clause, but it is not > > | if ((vcpu_sys_reg(vcpu, PMCR_EL0) & ARMV8_PMU_PMCR_E)) > > | ^~ > > > > As it turns out, this particular case is harmless (we just do some &= > > operations with 0), but worth fixing nonetheless. > > > > Signed-off-by: Will Deacon <will.deacon@arm.com> > > Thanks for the patch. No problem. I timed it nicely with your pull request. Will
On Fri, Apr 01, 2016 at 12:36:25PM +0100, Will Deacon wrote: > On Fri, Apr 01, 2016 at 01:30:40PM +0200, Christoffer Dall wrote: > > On Fri, Apr 01, 2016 at 12:12:22PM +0100, Will Deacon wrote: > > > The kernel is written in C, not python, so we need braces around > > > multi-line if statements. GCC 6 actually warns about this, thanks to the > > > fantastic new "-Wmisleading-indentation" flag: > > > > We should rewrite the kernel in python! > > Oh man, you made me look and I found this: > > https://mail.python.org/pipermail/python-list/2004-October/283327.html Haha, the reply saying "Great idea, go for it!" is hilarious. > > but, today's certainly the day for whacky suggestions. > I wanted to have sent you and Catalin my Linux in EL2 patch set today, but it was still too messy and hacked up for that to be funny, unfortunately. > > > | virt/kvm/arm/pmu.c: In function ‘kvm_pmu_overflow_status’: > > > | virt/kvm/arm/pmu.c:198:3: warning: statement is indented as if it were guarded by... [-Wmisleading-indentation] > > > | reg &= vcpu_sys_reg(vcpu, PMCNTENSET_EL0); > > > | ^~~ > > > | arch/arm64/kvm/../../../virt/kvm/arm/pmu.c:196:2: note: ...this ‘if’ clause, but it is not > > > | if ((vcpu_sys_reg(vcpu, PMCR_EL0) & ARMV8_PMU_PMCR_E)) > > > | ^~ > > > > > > As it turns out, this particular case is harmless (we just do some &= > > > operations with 0), but worth fixing nonetheless. > > > > > > Signed-off-by: Will Deacon <will.deacon@arm.com> > > > > Thanks for the patch. > > No problem. I timed it nicely with your pull request. > Yeah, I figure I will just add it to the next pull request, unless anyone objects to that. -Christoffer
On 2016年04月01日 19:12, Will Deacon wrote: > The kernel is written in C, not python, so we need braces around > multi-line if statements. GCC 6 actually warns about this, thanks to the > fantastic new "-Wmisleading-indentation" flag: > > | virt/kvm/arm/pmu.c: In function ‘kvm_pmu_overflow_status’: > | virt/kvm/arm/pmu.c:198:3: warning: statement is indented as if it were guarded by... [-Wmisleading-indentation] > | reg &= vcpu_sys_reg(vcpu, PMCNTENSET_EL0); > | ^~~ > | arch/arm64/kvm/../../../virt/kvm/arm/pmu.c:196:2: note: ...this ‘if’ clause, but it is not > | if ((vcpu_sys_reg(vcpu, PMCR_EL0) & ARMV8_PMU_PMCR_E)) > | ^~ > > As it turns out, this particular case is harmless (we just do some &= > operations with 0), but worth fixing nonetheless. > Ah, thanks! I might be fooled at that moment. :) Reviewed-by: Shannon Zhao <shannon.zhao@linaro.org> > Signed-off-by: Will Deacon <will.deacon@arm.com> > --- > virt/kvm/arm/pmu.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/virt/kvm/arm/pmu.c b/virt/kvm/arm/pmu.c > index b5754c6c5508..575c7aa30d7e 100644 > --- a/virt/kvm/arm/pmu.c > +++ b/virt/kvm/arm/pmu.c > @@ -193,11 +193,12 @@ static u64 kvm_pmu_overflow_status(struct kvm_vcpu *vcpu) > { > u64 reg = 0; > > - if ((vcpu_sys_reg(vcpu, PMCR_EL0) & ARMV8_PMU_PMCR_E)) > + if ((vcpu_sys_reg(vcpu, PMCR_EL0) & ARMV8_PMU_PMCR_E)) { > reg = vcpu_sys_reg(vcpu, PMOVSSET_EL0); > reg &= vcpu_sys_reg(vcpu, PMCNTENSET_EL0); > reg &= vcpu_sys_reg(vcpu, PMINTENSET_EL1); > reg &= kvm_pmu_valid_counter_mask(vcpu); > + } > > return reg; > } >
diff --git a/virt/kvm/arm/pmu.c b/virt/kvm/arm/pmu.c index b5754c6c5508..575c7aa30d7e 100644 --- a/virt/kvm/arm/pmu.c +++ b/virt/kvm/arm/pmu.c @@ -193,11 +193,12 @@ static u64 kvm_pmu_overflow_status(struct kvm_vcpu *vcpu) { u64 reg = 0; - if ((vcpu_sys_reg(vcpu, PMCR_EL0) & ARMV8_PMU_PMCR_E)) + if ((vcpu_sys_reg(vcpu, PMCR_EL0) & ARMV8_PMU_PMCR_E)) { reg = vcpu_sys_reg(vcpu, PMOVSSET_EL0); reg &= vcpu_sys_reg(vcpu, PMCNTENSET_EL0); reg &= vcpu_sys_reg(vcpu, PMINTENSET_EL1); reg &= kvm_pmu_valid_counter_mask(vcpu); + } return reg; }
The kernel is written in C, not python, so we need braces around multi-line if statements. GCC 6 actually warns about this, thanks to the fantastic new "-Wmisleading-indentation" flag: | virt/kvm/arm/pmu.c: In function ‘kvm_pmu_overflow_status’: | virt/kvm/arm/pmu.c:198:3: warning: statement is indented as if it were guarded by... [-Wmisleading-indentation] | reg &= vcpu_sys_reg(vcpu, PMCNTENSET_EL0); | ^~~ | arch/arm64/kvm/../../../virt/kvm/arm/pmu.c:196:2: note: ...this ‘if’ clause, but it is not | if ((vcpu_sys_reg(vcpu, PMCR_EL0) & ARMV8_PMU_PMCR_E)) | ^~ As it turns out, this particular case is harmless (we just do some &= operations with 0), but worth fixing nonetheless. Signed-off-by: Will Deacon <will.deacon@arm.com> --- virt/kvm/arm/pmu.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)