Commit 56d5f362 authored by Greg Kroah-Hartman's avatar Greg Kroah-Hartman

kobject: kset_uevent_ops: make uevent() callback take a const *

The uevent() callback in struct kset_uevent_ops does not modify the
kobject passed into it, so make the pointer const to enforce this
restriction.  When doing so, fix up all existing uevent() callbacks to
have the correct signature to preserve the build.

Cc: Christine Caulfield <ccaulfie@redhat.com>
Cc: David Teigland <teigland@redhat.com>
Cc: Bob Peterson <rpeterso@redhat.com>
Cc: Andreas Gruenbacher <agruenba@redhat.com>
Acked-by: default avatarRafael J. Wysocki <rafael@kernel.org>
Acked-by: default avatarHans de Goede <hdegoede@redhat.com>
Link: https://lore.kernel.org/r/20230111113018.459199-17-gregkh@linuxfoundation.orgSigned-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 2a81ada3
...@@ -2387,9 +2387,9 @@ static const char *dev_uevent_name(const struct kobject *kobj) ...@@ -2387,9 +2387,9 @@ static const char *dev_uevent_name(const struct kobject *kobj)
return NULL; return NULL;
} }
static int dev_uevent(struct kobject *kobj, struct kobj_uevent_env *env) static int dev_uevent(const struct kobject *kobj, struct kobj_uevent_env *env)
{ {
struct device *dev = kobj_to_dev(kobj); const struct device *dev = kobj_to_dev(kobj);
int retval = 0; int retval = 0;
/* add device node properties if present */ /* add device node properties if present */
......
...@@ -215,9 +215,9 @@ static int do_uevent(struct dlm_ls *ls, int in) ...@@ -215,9 +215,9 @@ static int do_uevent(struct dlm_ls *ls, int in)
return ls->ls_uevent_result; return ls->ls_uevent_result;
} }
static int dlm_uevent(struct kobject *kobj, struct kobj_uevent_env *env) static int dlm_uevent(const struct kobject *kobj, struct kobj_uevent_env *env)
{ {
struct dlm_ls *ls = container_of(kobj, struct dlm_ls, ls_kobj); const struct dlm_ls *ls = container_of(kobj, struct dlm_ls, ls_kobj);
add_uevent_var(env, "LOCKSPACE=%s", ls->ls_name); add_uevent_var(env, "LOCKSPACE=%s", ls->ls_name);
return 0; return 0;
......
...@@ -767,10 +767,10 @@ void gfs2_sys_fs_del(struct gfs2_sbd *sdp) ...@@ -767,10 +767,10 @@ void gfs2_sys_fs_del(struct gfs2_sbd *sdp)
wait_for_completion(&sdp->sd_kobj_unregister); wait_for_completion(&sdp->sd_kobj_unregister);
} }
static int gfs2_uevent(struct kobject *kobj, struct kobj_uevent_env *env) static int gfs2_uevent(const struct kobject *kobj, struct kobj_uevent_env *env)
{ {
struct gfs2_sbd *sdp = container_of(kobj, struct gfs2_sbd, sd_kobj); const struct gfs2_sbd *sdp = container_of(kobj, struct gfs2_sbd, sd_kobj);
struct super_block *s = sdp->sd_vfs; const struct super_block *s = sdp->sd_vfs;
add_uevent_var(env, "LOCKTABLE=%s", sdp->sd_table_name); add_uevent_var(env, "LOCKTABLE=%s", sdp->sd_table_name);
add_uevent_var(env, "LOCKPROTO=%s", sdp->sd_proto_name); add_uevent_var(env, "LOCKPROTO=%s", sdp->sd_proto_name);
......
...@@ -137,7 +137,7 @@ struct kobj_uevent_env { ...@@ -137,7 +137,7 @@ struct kobj_uevent_env {
struct kset_uevent_ops { struct kset_uevent_ops {
int (* const filter)(const struct kobject *kobj); int (* const filter)(const struct kobject *kobj);
const char *(* const name)(const struct kobject *kobj); const char *(* const name)(const struct kobject *kobj);
int (* const uevent)(struct kobject *kobj, struct kobj_uevent_env *env); int (* const uevent)(const struct kobject *kobj, struct kobj_uevent_env *env);
}; };
struct kobj_attribute { struct kobj_attribute {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment