* [PATCH v2] x86/platform/intel-mid: Revert "Make 'bt_sfi_data' const"
@ 2017-12-28 12:25 Andy Shevchenko
2017-12-28 12:34 ` Ingo Molnar
0 siblings, 1 reply; 4+ messages in thread
From: Andy Shevchenko @ 2017-12-28 12:25 UTC (permalink / raw)
To: Thomas Gleixner, Ingo Molnar, H . Peter Anvin, x86, Andi Kleen,
linux-kernel, Darren Hart, platform-driver-x86
Cc: Andy Shevchenko, Bhumika Goyal, julia.lawall
The annoying static analyzer follow up patches sometimes make a pain
rather than fixing issues.
The one done by commit 276c87054751
("x86/platform/intel-mid: Make 'bt_sfi_data' const")
convert the struct to be const while it is used as a temporary container
for important data that is used to fill 'parent' and 'name' fields in
struct platform_device_info.
That's why revert the commit which had been apparently done w/o reading
the code.
Note, compiler doesn't notice this due to explicit cast, which would be
addressed separately.
Cc: Bhumika Goyal <bhumirks@gmail.com>
Cc: julia.lawall@lip6.fr
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
---
v2: low the tone of accusation that this made a regression
arch/x86/platform/intel-mid/device_libs/platform_bt.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/x86/platform/intel-mid/device_libs/platform_bt.c b/arch/x86/platform/intel-mid/device_libs/platform_bt.c
index dc036e511f48..5a0483e7bf66 100644
--- a/arch/x86/platform/intel-mid/device_libs/platform_bt.c
+++ b/arch/x86/platform/intel-mid/device_libs/platform_bt.c
@@ -60,7 +60,7 @@ static int __init tng_bt_sfi_setup(struct bt_sfi_data *ddata)
return 0;
}
-static const struct bt_sfi_data tng_bt_sfi_data __initdata = {
+static struct bt_sfi_data tng_bt_sfi_data __initdata = {
.setup = tng_bt_sfi_setup,
};
--
2.15.1
^ permalink raw reply related [flat|nested] 4+ messages in thread* Re: [PATCH v2] x86/platform/intel-mid: Revert "Make 'bt_sfi_data' const"
2017-12-28 12:25 [PATCH v2] x86/platform/intel-mid: Revert "Make 'bt_sfi_data' const" Andy Shevchenko
@ 2017-12-28 12:34 ` Ingo Molnar
2018-01-05 17:18 ` Andy Shevchenko
0 siblings, 1 reply; 4+ messages in thread
From: Ingo Molnar @ 2017-12-28 12:34 UTC (permalink / raw)
To: Andy Shevchenko
Cc: Thomas Gleixner, Ingo Molnar, H . Peter Anvin, x86, Andi Kleen,
linux-kernel, Darren Hart, platform-driver-x86, Bhumika Goyal,
julia.lawall
* Andy Shevchenko <andriy.shevchenko@linux.intel.com> wrote:
> v2: low the tone of accusation that this made a regression
BTW., don't worry about that aspect too much: after a long debugging session it's
pretty natural to be upset at whoever introduced a regression.
( In fact a number of times I too got upset at the moron who wrote a particular
piece of buggy code, only for 'git annotate' to remind me that the moron was me. )
I personally just ignore the emotional attributes, and I usually edit changelogs
accordingly as well so the temporary state of mind of finding a regression doesn't
trickle upstream.
Plus in this particular case if we can help type propagation for driver data to
become a bit cleaner then the kernel project has gained a bit through all this
pain.
Thanks,
Ingo
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH v2] x86/platform/intel-mid: Revert "Make 'bt_sfi_data' const"
2017-12-28 12:34 ` Ingo Molnar
@ 2018-01-05 17:18 ` Andy Shevchenko
2018-01-05 17:41 ` Julia Lawall
0 siblings, 1 reply; 4+ messages in thread
From: Andy Shevchenko @ 2018-01-05 17:18 UTC (permalink / raw)
To: Ingo Molnar, Fengguang Wu
Cc: Thomas Gleixner, Ingo Molnar, H . Peter Anvin, x86, Andi Kleen,
linux-kernel, Darren Hart, platform-driver-x86, Bhumika Goyal,
julia.lawall
On Thu, 2017-12-28 at 13:34 +0100, Ingo Molnar wrote:
> * Andy Shevchenko <andriy.shevchenko@linux.intel.com> wrote:
>
> > v2: low the tone of accusation that this made a regression
>
> BTW., don't worry about that aspect too much: after a long debugging
> session it's
> pretty natural to be upset at whoever introduced a regression.
It appears that regression has been introduced by a new dependency to
the hci_bcm.c.
In any case, can we apply this one to 4.15 cycle to make others prevent
do an actual regressions further:
commit 03838ae1e8f692dd2bdbd49820ed668d4b7bfbc2
Author: Andi Kleen <ak@linux.intel.com>
Date: Fri Jan 5 13:26:44 2018 +1100
arch/x86/platform/intel-mid/device_libs/platform_bt.c: fix const
confusion
>
> ( In fact a number of times I too got upset at the moron who wrote a
> particular
> piece of buggy code, only for 'git annotate' to remind me that the
> moron was me. )
>
> I personally just ignore the emotional attributes, and I usually edit
> changelogs
> accordingly as well so the temporary state of mind of finding a
> regression doesn't
> trickle upstream.
>
> Plus in this particular case if we can help type propagation for
> driver data to
> become a bit cleaner then the kernel project has gained a bit through
> all this
> pain.
I has been thinking if 0day can complain about these:
1) castings in new code
2) applying const to older *working* code
Fengguang, what do you think?
--
Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Intel Finland Oy
^ permalink raw reply [flat|nested] 4+ messages in thread* Re: [PATCH v2] x86/platform/intel-mid: Revert "Make 'bt_sfi_data' const"
2018-01-05 17:18 ` Andy Shevchenko
@ 2018-01-05 17:41 ` Julia Lawall
0 siblings, 0 replies; 4+ messages in thread
From: Julia Lawall @ 2018-01-05 17:41 UTC (permalink / raw)
To: Andy Shevchenko
Cc: Ingo Molnar, Fengguang Wu, Thomas Gleixner, Ingo Molnar,
H . Peter Anvin, x86, Andi Kleen, linux-kernel, Darren Hart,
platform-driver-x86, Bhumika Goyal
On Fri, 5 Jan 2018, Andy Shevchenko wrote:
> On Thu, 2017-12-28 at 13:34 +0100, Ingo Molnar wrote:
> > * Andy Shevchenko <andriy.shevchenko@linux.intel.com> wrote:
> >
> > > v2: low the tone of accusation that this made a regression
> >
> > BTW., don't worry about that aspect too much: after a long debugging
> > session it's
> > pretty natural to be upset at whoever introduced a regression.
>
> It appears that regression has been introduced by a new dependency to
> the hci_bcm.c.
>
> In any case, can we apply this one to 4.15 cycle to make others prevent
> do an actual regressions further:
>
> commit 03838ae1e8f692dd2bdbd49820ed668d4b7bfbc2
> Author: Andi Kleen <ak@linux.intel.com>
> Date: Fri Jan 5 13:26:44 2018 +1100
>
> arch/x86/platform/intel-mid/device_libs/platform_bt.c: fix const
> confusion
>
> >
> > ( In fact a number of times I too got upset at the moron who wrote a
> > particular
> > piece of buggy code, only for 'git annotate' to remind me that the
> > moron was me. )
> >
> > I personally just ignore the emotional attributes, and I usually edit
> > changelogs
> > accordingly as well so the temporary state of mind of finding a
> > regression doesn't
> > trickle upstream.
> >
> > Plus in this particular case if we can help type propagation for
> > driver data to
> > become a bit cleaner then the kernel project has gained a bit through
> > all this
> > pain.
>
> I has been thinking if 0day can complain about these:
> 1) castings in new code
> 2) applying const to older *working* code
>
> Fengguang, what do you think?
As suggested previously, I think it would be better if code that retrieves
const structures from nonconst fields would store the result in a const
variable. Then the compiler would pick up the verification from there. A
Coccinelle script can detect cases where this property does not hold, at
least within a single file. This would have protected the given code and
still allowed constant structures to be made const.
julia
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2018-01-05 17:41 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-12-28 12:25 [PATCH v2] x86/platform/intel-mid: Revert "Make 'bt_sfi_data' const" Andy Shevchenko
2017-12-28 12:34 ` Ingo Molnar
2018-01-05 17:18 ` Andy Shevchenko
2018-01-05 17:41 ` Julia Lawall
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox