[PATCH 4.9 39/61] kobject: dont use WARN for registration failures

From: Greg Kroah-Hartman
Date: Mon Apr 30 2018 - 16:18:53 EST


4.9-stable review patch. If anyone has any objections, please let me know.

------------------

From: Dmitry Vyukov <dvyukov@xxxxxxxxxx>

commit 3e14c6abbfb5c94506edda9d8e2c145d79375798 upstream.

This WARNING proved to be noisy. The function still returns an error
and callers should handle it. That's how most of kernel code works.
Downgrade the WARNING to pr_err() and leave WARNINGs for kernel bugs.

Signed-off-by: Dmitry Vyukov <dvyukov@xxxxxxxxxx>
Reported-by: syzbot+209c0f67f99fec8eb14b@xxxxxxxxxxxxxxxxxxxxxxxxx
Reported-by: syzbot+7fb6d9525a4528104e05@xxxxxxxxxxxxxxxxxxxxxxxxx
Reported-by: syzbot+2e63711063e2d8f9ea27@xxxxxxxxxxxxxxxxxxxxxxxxx
Reported-by: syzbot+de73361ee4971b6e6f75@xxxxxxxxxxxxxxxxxxxxxxxxx
Cc: stable <stable@xxxxxxxxxxxxxxx>
Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

---
lib/kobject.c | 12 +++++-------
1 file changed, 5 insertions(+), 7 deletions(-)

--- a/lib/kobject.c
+++ b/lib/kobject.c
@@ -234,14 +234,12 @@ static int kobject_add_internal(struct k

/* be noisy on error issues */
if (error == -EEXIST)
- WARN(1, "%s failed for %s with "
- "-EEXIST, don't try to register things with "
- "the same name in the same directory.\n",
- __func__, kobject_name(kobj));
+ pr_err("%s failed for %s with -EEXIST, don't try to register things with the same name in the same directory.\n",
+ __func__, kobject_name(kobj));
else
- WARN(1, "%s failed for %s (error: %d parent: %s)\n",
- __func__, kobject_name(kobj), error,
- parent ? kobject_name(parent) : "'none'");
+ pr_err("%s failed for %s (error: %d parent: %s)\n",
+ __func__, kobject_name(kobj), error,
+ parent ? kobject_name(parent) : "'none'");
} else
kobj->state_in_sysfs = 1;