Handlers are currently the only blocker to compile the kernel with gcc 7
and KASAN+use-after-scope enabled:
drivers/gpu/drm/i915/gvt/handlers.c:2200:1: error: the frame size of 43760 bytes is larger than 2048 bytes [-Werror=frame-larger-than=]
drivers/gpu/drm/i915/gvt/handlers.c:2402:1: error: the frame size of 9400 bytes is larger than 2048 bytes [-Werror=frame-larger-than=]
drivers/gpu/drm/i915/gvt/handlers.c:2628:1: error: the frame size of 11256 bytes is larger than 2048 bytes [-Werror=frame-larger-than=]
It is due to many expansions of MMIO_* macros in init_generic_mmio_info.
INTEL_GVT_MMIO_OFFSET generates for each such line a __reg and an
offset. There are too many for KASAN to keep up.
So disable KASAN for this file.
Signed-off-by: Jiri Slaby <[email protected]>
Cc: Martin Liska <[email protected]>
Cc: Zhenyu Wang <[email protected]>
Cc: Zhi Wang <[email protected]>
Cc: Daniel Vetter <[email protected]>
Cc: Jani Nikula <[email protected]>
Cc: David Airlie <[email protected]>
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
---
drivers/gpu/drm/i915/gvt/Makefile | 2 ++
1 file changed, 2 insertions(+)
diff --git a/drivers/gpu/drm/i915/gvt/Makefile b/drivers/gpu/drm/i915/gvt/Makefile
index b123c20e2097..942f1849d194 100644
--- a/drivers/gpu/drm/i915/gvt/Makefile
+++ b/drivers/gpu/drm/i915/gvt/Makefile
@@ -6,3 +6,5 @@ GVT_SOURCE := gvt.o aperture_gm.o handlers.o vgpu.o trace_points.o firmware.o \
ccflags-y += -I$(src) -I$(src)/$(GVT_DIR) -Wall
i915-y += $(addprefix $(GVT_DIR)/, $(GVT_SOURCE))
obj-$(CONFIG_DRM_I915_GVT_KVMGT) += $(GVT_DIR)/kvmgt.o
+
+KASAN_SANITIZE_handlers.o := n
--
2.12.2
On 2017.03.30 11:46:27 +0200, Jiri Slaby wrote:
> Handlers are currently the only blocker to compile the kernel with gcc 7
> and KASAN+use-after-scope enabled:
> drivers/gpu/drm/i915/gvt/handlers.c:2200:1: error: the frame size of 43760 bytes is larger than 2048 bytes [-Werror=frame-larger-than=]
> drivers/gpu/drm/i915/gvt/handlers.c:2402:1: error: the frame size of 9400 bytes is larger than 2048 bytes [-Werror=frame-larger-than=]
> drivers/gpu/drm/i915/gvt/handlers.c:2628:1: error: the frame size of 11256 bytes is larger than 2048 bytes [-Werror=frame-larger-than=]
>
> It is due to many expansions of MMIO_* macros in init_generic_mmio_info.
> INTEL_GVT_MMIO_OFFSET generates for each such line a __reg and an
> offset. There are too many for KASAN to keep up.
>
> So disable KASAN for this file.
>
> Signed-off-by: Jiri Slaby <[email protected]>
> Cc: Martin Liska <[email protected]>
> Cc: Zhenyu Wang <[email protected]>
> Cc: Zhi Wang <[email protected]>
> Cc: Daniel Vetter <[email protected]>
> Cc: Jani Nikula <[email protected]>
> Cc: David Airlie <[email protected]>
> Cc: [email protected]
> Cc: [email protected]
> Cc: [email protected]
> ---
> drivers/gpu/drm/i915/gvt/Makefile | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/drivers/gpu/drm/i915/gvt/Makefile b/drivers/gpu/drm/i915/gvt/Makefile
> index b123c20e2097..942f1849d194 100644
> --- a/drivers/gpu/drm/i915/gvt/Makefile
> +++ b/drivers/gpu/drm/i915/gvt/Makefile
> @@ -6,3 +6,5 @@ GVT_SOURCE := gvt.o aperture_gm.o handlers.o vgpu.o trace_points.o firmware.o \
> ccflags-y += -I$(src) -I$(src)/$(GVT_DIR) -Wall
> i915-y += $(addprefix $(GVT_DIR)/, $(GVT_SOURCE))
> obj-$(CONFIG_DRM_I915_GVT_KVMGT) += $(GVT_DIR)/kvmgt.o
> +
> +KASAN_SANITIZE_handlers.o := n
> --
> 2.12.2
>
Applied this, we'd better cleanup legacy usage to current i915 mmio reg define. Thanks!
--
Open Source Technology Center, Intel ltd.
$gpg --keyserver wwwkeys.pgp.net --recv-keys 4D781827
On Fri, 31 Mar 2017, Zhenyu Wang <[email protected]> wrote:
> On 2017.03.30 11:46:27 +0200, Jiri Slaby wrote:
>> Handlers are currently the only blocker to compile the kernel with gcc 7
>> and KASAN+use-after-scope enabled:
>> drivers/gpu/drm/i915/gvt/handlers.c:2200:1: error: the frame size of 43760 bytes is larger than 2048 bytes [-Werror=frame-larger-than=]
>> drivers/gpu/drm/i915/gvt/handlers.c:2402:1: error: the frame size of 9400 bytes is larger than 2048 bytes [-Werror=frame-larger-than=]
>> drivers/gpu/drm/i915/gvt/handlers.c:2628:1: error: the frame size of 11256 bytes is larger than 2048 bytes [-Werror=frame-larger-than=]
>>
>> It is due to many expansions of MMIO_* macros in init_generic_mmio_info.
>> INTEL_GVT_MMIO_OFFSET generates for each such line a __reg and an
>> offset. There are too many for KASAN to keep up.
>>
>> So disable KASAN for this file.
>>
>> Signed-off-by: Jiri Slaby <[email protected]>
>> Cc: Martin Liska <[email protected]>
>> Cc: Zhenyu Wang <[email protected]>
>> Cc: Zhi Wang <[email protected]>
>> Cc: Daniel Vetter <[email protected]>
>> Cc: Jani Nikula <[email protected]>
>> Cc: David Airlie <[email protected]>
>> Cc: [email protected]
>> Cc: [email protected]
>> Cc: [email protected]
>> ---
>> drivers/gpu/drm/i915/gvt/Makefile | 2 ++
>> 1 file changed, 2 insertions(+)
>>
>> diff --git a/drivers/gpu/drm/i915/gvt/Makefile b/drivers/gpu/drm/i915/gvt/Makefile
>> index b123c20e2097..942f1849d194 100644
>> --- a/drivers/gpu/drm/i915/gvt/Makefile
>> +++ b/drivers/gpu/drm/i915/gvt/Makefile
>> @@ -6,3 +6,5 @@ GVT_SOURCE := gvt.o aperture_gm.o handlers.o vgpu.o trace_points.o firmware.o \
>> ccflags-y += -I$(src) -I$(src)/$(GVT_DIR) -Wall
>> i915-y += $(addprefix $(GVT_DIR)/, $(GVT_SOURCE))
>> obj-$(CONFIG_DRM_I915_GVT_KVMGT) += $(GVT_DIR)/kvmgt.o
>> +
>> +KASAN_SANITIZE_handlers.o := n
>> --
>> 2.12.2
>>
>
> Applied this, we'd better cleanup legacy usage to current i915 mmio
> reg define. Thanks!
Hmmh, that was a bit fast, there was a related discussion going in [1].
BR,
Jani.
[1] http://mid.mail-archive.com/[email protected]
--
Jani Nikula, Intel Open Source Technology Center
On Fri, Mar 31, 2017 at 12:29 PM, Jani Nikula
<[email protected]> wrote:
> On Fri, 31 Mar 2017, Zhenyu Wang <[email protected]> wrote:
>> On 2017.03.30 11:46:27 +0200, Jiri Slaby wrote:
>>> Handlers are currently the only blocker to compile the kernel with gcc 7
>>> and KASAN+use-after-scope enabled:
>>> drivers/gpu/drm/i915/gvt/handlers.c:2200:1: error: the frame size of 43760 bytes is larger than 2048 bytes [-Werror=frame-larger-than=]
>>> drivers/gpu/drm/i915/gvt/handlers.c:2402:1: error: the frame size of 9400 bytes is larger than 2048 bytes [-Werror=frame-larger-than=]
>>> drivers/gpu/drm/i915/gvt/handlers.c:2628:1: error: the frame size of 11256 bytes is larger than 2048 bytes [-Werror=frame-larger-than=]
>>>
>>> It is due to many expansions of MMIO_* macros in init_generic_mmio_info.
>>> INTEL_GVT_MMIO_OFFSET generates for each such line a __reg and an
>>> offset. There are too many for KASAN to keep up.
>>>
>>> So disable KASAN for this file.
>>>
>>> Signed-off-by: Jiri Slaby <[email protected]>
>>> Cc: Martin Liska <[email protected]>
>>> Cc: Zhenyu Wang <[email protected]>
>>> Cc: Zhi Wang <[email protected]>
>>> Cc: Daniel Vetter <[email protected]>
>>> Cc: Jani Nikula <[email protected]>
>>> Cc: David Airlie <[email protected]>
>>> Cc: [email protected]
>>> Cc: [email protected]
>>> Cc: [email protected]
>>> ---
>>> drivers/gpu/drm/i915/gvt/Makefile | 2 ++
>>> 1 file changed, 2 insertions(+)
>>>
>>> diff --git a/drivers/gpu/drm/i915/gvt/Makefile b/drivers/gpu/drm/i915/gvt/Makefile
>>> index b123c20e2097..942f1849d194 100644
>>> --- a/drivers/gpu/drm/i915/gvt/Makefile
>>> +++ b/drivers/gpu/drm/i915/gvt/Makefile
>>> @@ -6,3 +6,5 @@ GVT_SOURCE := gvt.o aperture_gm.o handlers.o vgpu.o trace_points.o firmware.o \
>>> ccflags-y += -I$(src) -I$(src)/$(GVT_DIR) -Wall
>>> i915-y += $(addprefix $(GVT_DIR)/, $(GVT_SOURCE))
>>> obj-$(CONFIG_DRM_I915_GVT_KVMGT) += $(GVT_DIR)/kvmgt.o
>>> +
>>> +KASAN_SANITIZE_handlers.o := n
>>> --
>>> 2.12.2
>>>
>>
>> Applied this, we'd better cleanup legacy usage to current i915 mmio
>> reg define. Thanks!
>
> Hmmh, that was a bit fast, there was a related discussion going in [1].
>
> BR,
> Jani.
>
>
> [1] http://mid.mail-archive.com/[email protected]
Sorry about that, it looked like I never replied to your last mail.
There is also a related problem that I had sent another fix for:
https://patchwork.kernel.org/patch/9601349/
I still think that my two patches are correct and they should both be applied.
Arnd
On 03/31/2017, 01:23 PM, Arnd Bergmann wrote:
> On Fri, Mar 31, 2017 at 12:29 PM, Jani Nikula
> <[email protected]> wrote:
>> On Fri, 31 Mar 2017, Zhenyu Wang <[email protected]> wrote:
>>> On 2017.03.30 11:46:27 +0200, Jiri Slaby wrote:
>>>> Handlers are currently the only blocker to compile the kernel with gcc 7
>>>> and KASAN+use-after-scope enabled:
>>>> drivers/gpu/drm/i915/gvt/handlers.c:2200:1: error: the frame size of 43760 bytes is larger than 2048 bytes [-Werror=frame-larger-than=]
>>>> drivers/gpu/drm/i915/gvt/handlers.c:2402:1: error: the frame size of 9400 bytes is larger than 2048 bytes [-Werror=frame-larger-than=]
>>>> drivers/gpu/drm/i915/gvt/handlers.c:2628:1: error: the frame size of 11256 bytes is larger than 2048 bytes [-Werror=frame-larger-than=]
>>>>
>>>> It is due to many expansions of MMIO_* macros in init_generic_mmio_info.
>>>> INTEL_GVT_MMIO_OFFSET generates for each such line a __reg and an
>>>> offset. There are too many for KASAN to keep up.
>>>>
>>>> So disable KASAN for this file.
>>>>
>>>> Signed-off-by: Jiri Slaby <[email protected]>
>>>> Cc: Martin Liska <[email protected]>
>>>> Cc: Zhenyu Wang <[email protected]>
>>>> Cc: Zhi Wang <[email protected]>
>>>> Cc: Daniel Vetter <[email protected]>
>>>> Cc: Jani Nikula <[email protected]>
>>>> Cc: David Airlie <[email protected]>
>>>> Cc: [email protected]
>>>> Cc: [email protected]
>>>> Cc: [email protected]
>>>> ---
>>>> drivers/gpu/drm/i915/gvt/Makefile | 2 ++
>>>> 1 file changed, 2 insertions(+)
>>>>
>>>> diff --git a/drivers/gpu/drm/i915/gvt/Makefile b/drivers/gpu/drm/i915/gvt/Makefile
>>>> index b123c20e2097..942f1849d194 100644
>>>> --- a/drivers/gpu/drm/i915/gvt/Makefile
>>>> +++ b/drivers/gpu/drm/i915/gvt/Makefile
>>>> @@ -6,3 +6,5 @@ GVT_SOURCE := gvt.o aperture_gm.o handlers.o vgpu.o trace_points.o firmware.o \
>>>> ccflags-y += -I$(src) -I$(src)/$(GVT_DIR) -Wall
>>>> i915-y += $(addprefix $(GVT_DIR)/, $(GVT_SOURCE))
>>>> obj-$(CONFIG_DRM_I915_GVT_KVMGT) += $(GVT_DIR)/kvmgt.o
>>>> +
>>>> +KASAN_SANITIZE_handlers.o := n
>>>> --
>>>> 2.12.2
>>>>
>>>
>>> Applied this, we'd better cleanup legacy usage to current i915 mmio
>>> reg define. Thanks!
>>
>> Hmmh, that was a bit fast, there was a related discussion going in [1].
>>
>> BR,
>> Jani.
>>
>>
>> [1] http://mid.mail-archive.com/[email protected]
>
> Sorry about that, it looked like I never replied to your last mail.
>
> There is also a related problem that I had sent another fix for:
> https://patchwork.kernel.org/patch/9601349/
>
> I still think that my two patches are correct and they should both be applied.
Hi,
have they been applied yet? Or was this fixed some other way?
thanks,
--
js
suse labs