]> git.baikalelectronics.ru Git - kernel.git/commit
net/sched: cls_flower: allocate mask dynamically in fl_change()
authorIvan Vecera <ivecera@redhat.com>
Wed, 16 Jan 2019 15:53:52 +0000 (16:53 +0100)
committerDavid S. Miller <davem@davemloft.net>
Thu, 17 Jan 2019 22:40:59 +0000 (14:40 -0800)
commitec98919166f0c26f6865a6f94a44da1cb2bd2b93
tree9dfc70e9a76e7ed7e0eeaccd67586087c3dc6e41
parent32e0a0f1343317408b52319e6ab532ac079f3060
net/sched: cls_flower: allocate mask dynamically in fl_change()

Recent changes (especially f09ec3067657 ("cls_flower: Support multiple
masks per priority")) in the fl_flow_mask structure grow it and its
current size e.g. on x86_64 with defconfig is 760 bytes and more than
1024 bytes with some debug options enabled. Prior the mentioned commit
its size was 176 bytes (using defconfig on x86_64).
With regard to this fact it's reasonable to allocate this structure
dynamically in fl_change() to reduce its stack size.

v2:
- use kzalloc() instead of kcalloc()

Fixes: f09ec3067657 ("cls_flower: Support multiple masks per priority")
Cc: Jiri Pirko <jiri@resnulli.us>
Cc: Paul Blakey <paulb@mellanox.com>
Acked-by: Jiri Pirko <jiri@mellanox.com>
Signed-off-by: Ivan Vecera <ivecera@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/sched/cls_flower.c