summaryrefslogtreecommitdiff
path: root/Documentation
diff options
context:
space:
mode:
authorWedson Almeida Filho <wedsonaf@google.com>2021-12-25 02:13:45 +0300
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2021-12-27 12:40:00 +0300
commitee6d3dd4ed48ab24b74bab3c3977b8218518247d (patch)
treef5d2c211fb55a757d64e74b2b8fcb6e7211ae19e /Documentation
parent67e532a42cf4c6c214ed39e33e617bca29508f4e (diff)
downloadlinux-ee6d3dd4ed48ab24b74bab3c3977b8218518247d.tar.xz
driver core: make kobj_type constant.
This way instances of kobj_type (which contain function pointers) can be stored in .rodata, which means that they cannot be [easily/accidentally] modified at runtime. Signed-off-by: Wedson Almeida Filho <wedsonaf@google.com> Link: https://lore.kernel.org/r/20211224231345.777370-1-wedsonaf@google.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'Documentation')
-rw-r--r--Documentation/core-api/kobject.rst4
1 files changed, 2 insertions, 2 deletions
diff --git a/Documentation/core-api/kobject.rst b/Documentation/core-api/kobject.rst
index 2739f8b72575..d3b5bf9f643a 100644
--- a/Documentation/core-api/kobject.rst
+++ b/Documentation/core-api/kobject.rst
@@ -118,7 +118,7 @@ Initialization of kobjects
Code which creates a kobject must, of course, initialize that object. Some
of the internal fields are setup with a (mandatory) call to kobject_init()::
- void kobject_init(struct kobject *kobj, struct kobj_type *ktype);
+ void kobject_init(struct kobject *kobj, const struct kobj_type *ktype);
The ktype is required for a kobject to be created properly, as every kobject
must have an associated kobj_type. After calling kobject_init(), to
@@ -156,7 +156,7 @@ kobject_name()::
There is a helper function to both initialize and add the kobject to the
kernel at the same time, called surprisingly enough kobject_init_and_add()::
- int kobject_init_and_add(struct kobject *kobj, struct kobj_type *ktype,
+ int kobject_init_and_add(struct kobject *kobj, const struct kobj_type *ktype,
struct kobject *parent, const char *fmt, ...);
The arguments are the same as the individual kobject_init() and