struct ddebug_class_param keeps a ref to the state-storage of the
param, make both flavors use the same unsigned long under-type.
ISTM this is simpler and safer.

Signed-off-by: Jim Cromie <jim.cro...@gmail.com>
---
 include/linux/dynamic_debug.h | 2 +-
 lib/dynamic_debug.c           | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/include/linux/dynamic_debug.h b/include/linux/dynamic_debug.h
index 061dd84d09f3..dc41e70dc2e1 100644
--- a/include/linux/dynamic_debug.h
+++ b/include/linux/dynamic_debug.h
@@ -122,7 +122,7 @@ struct _ddebug_info {
 struct ddebug_class_param {
        union {
                unsigned long *bits;
-               unsigned int *lvl;
+               unsigned long *lvl;
        };
        char flags[8];
        const struct ddebug_class_map *map;
diff --git a/lib/dynamic_debug.c b/lib/dynamic_debug.c
index fdd6d9800a70..22a3182bf89f 100644
--- a/lib/dynamic_debug.c
+++ b/lib/dynamic_debug.c
@@ -795,7 +795,7 @@ int param_get_dyndbg_classes(char *buffer, const struct 
kernel_param *kp)
 
        case DD_CLASS_TYPE_LEVEL_NAMES:
        case DD_CLASS_TYPE_LEVEL_NUM:
-               return scnprintf(buffer, PAGE_SIZE, "%d\n", *dcp->lvl);
+               return scnprintf(buffer, PAGE_SIZE, "%ld\n", *dcp->lvl);
        default:
                return -1;
        }
-- 
2.41.0

Reply via email to