This is simply the bin_attribute analog to sysfs_remove_file_self(). Signed-off-by: Zev Weiss <zev@xxxxxxxxxxxxxxxxx> --- fs/sysfs/file.c | 13 +++++++++++++ include/linux/sysfs.h | 1 + 2 files changed, 14 insertions(+) diff --git a/fs/sysfs/file.c b/fs/sysfs/file.c index d019d6ac6ad0..b2b85be95adf 100644 --- a/fs/sysfs/file.c +++ b/fs/sysfs/file.c @@ -572,6 +572,19 @@ void sysfs_remove_bin_file(struct kobject *kobj, } EXPORT_SYMBOL_GPL(sysfs_remove_bin_file); +/** + * sysfs_remove_file_self - remove binary object attribute from its own method + * @kobj: object to operate on + * @attr: binary attribute descriptor + * + * See kernfs_remove_self() for details. + */ +bool sysfs_remove_bin_file_self(struct kobject *kobj, const struct bin_attribute *attr) +{ + return sysfs_remove_file_self(kobj, &attr->attr); +} +EXPORT_SYMBOL_GPL(sysfs_remove_bin_file_self); + static int internal_change_owner(struct kernfs_node *kn, kuid_t kuid, kgid_t kgid) { diff --git a/include/linux/sysfs.h b/include/linux/sysfs.h index e3f1e8ac1f85..49de5189cf88 100644 --- a/include/linux/sysfs.h +++ b/include/linux/sysfs.h @@ -273,6 +273,7 @@ int __must_check sysfs_create_bin_file(struct kobject *kobj, const struct bin_attribute *attr); void sysfs_remove_bin_file(struct kobject *kobj, const struct bin_attribute *attr); +bool sysfs_remove_bin_file_self(struct kobject *kobj, const struct bin_attribute *attr); int __must_check sysfs_create_link(struct kobject *kobj, struct kobject *target, const char *name); -- 2.33.0