summary refs log tree commit diff
path: root/Documentation/core-api
diff options
context:
space:
mode:
authorWedson Almeida Filho <wedsonaf@google.com>2021-12-24 23:13:45 +0000
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2021-12-27 10:40:00 +0100
commitee6d3dd4ed48ab24b74bab3c3977b8218518247d (patch)
treef5d2c211fb55a757d64e74b2b8fcb6e7211ae19e /Documentation/core-api
parent67e532a42cf4c6c214ed39e33e617bca29508f4e (diff)
downloadlinux-ee6d3dd4ed48ab24b74bab3c3977b8218518247d.tar.gz
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/core-api')
-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