OSDN Git Service

Merge branch 'devlink-sanitize-per-port-region-creation-destruction'
authorJakub Kicinski <kuba@kernel.org>
Sat, 1 Oct 2022 01:17:22 +0000 (18:17 -0700)
committerJakub Kicinski <kuba@kernel.org>
Sat, 1 Oct 2022 01:17:23 +0000 (18:17 -0700)
commit2483223e19b16b423b71e775be2359c2c0c8949c
tree03eeb395f256a2b127980740d47c74ef6448ff95
parent3406079bbb279e33ab4b8d9a30e4dd68ce7bcafe
parent61e4a51621587c939672d6a9354f6d0aa3d4e131
Merge branch 'devlink-sanitize-per-port-region-creation-destruction'

Jiri Pirko says:

====================
devlink: sanitize per-port region creation/destruction

Currently the only user of per-port devlink regions is DSA. All drivers
that use regions register them before devlink registration. For DSA,
this was not possible as the internals of struct devlink_port needed for
region creation are initialized during port registration.

This introduced a mismatch in creation flow of devlink and devlink port
regions. As you can see, it causes the DSA driver to make the port
init/exit flow a bit cumbersome.

Fix this by introducing port_init/fini() which could be optionally
called by drivers like DSA, to prepare struct devlink_port to be used
for region creation purposes before devlink port register is called.

Tested by Vladimir on his setup.
====================

Link: https://lore.kernel.org/r/20220929072902.2986539-1-jiri@resnulli.us
Signed-off-by: Jakub Kicinski <kuba@kernel.org>