aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/hwtracing/stm/dummy_stm.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/hwtracing/stm/dummy_stm.c')
-rw-r--r--drivers/hwtracing/stm/dummy_stm.c14
1 files changed, 5 insertions, 9 deletions
diff --git a/drivers/hwtracing/stm/dummy_stm.c b/drivers/hwtracing/stm/dummy_stm.c
index 310adf57e7a1..a86612d989f9 100644
--- a/drivers/hwtracing/stm/dummy_stm.c
+++ b/drivers/hwtracing/stm/dummy_stm.c
@@ -46,9 +46,7 @@ static struct stm_data dummy_stm[DUMMY_STM_MAX];
46 46
47static int nr_dummies = 4; 47static int nr_dummies = 4;
48 48
49module_param(nr_dummies, int, 0600); 49module_param(nr_dummies, int, 0400);
50
51static unsigned int dummy_stm_nr;
52 50
53static unsigned int fail_mode; 51static unsigned int fail_mode;
54 52
@@ -65,12 +63,12 @@ static int dummy_stm_link(struct stm_data *data, unsigned int master,
65 63
66static int dummy_stm_init(void) 64static int dummy_stm_init(void)
67{ 65{
68 int i, ret = -ENOMEM, __nr_dummies = ACCESS_ONCE(nr_dummies); 66 int i, ret = -ENOMEM;
69 67
70 if (__nr_dummies < 0 || __nr_dummies > DUMMY_STM_MAX) 68 if (nr_dummies < 0 || nr_dummies > DUMMY_STM_MAX)
71 return -EINVAL; 69 return -EINVAL;
72 70
73 for (i = 0; i < __nr_dummies; i++) { 71 for (i = 0; i < nr_dummies; i++) {
74 dummy_stm[i].name = kasprintf(GFP_KERNEL, "dummy_stm.%d", i); 72 dummy_stm[i].name = kasprintf(GFP_KERNEL, "dummy_stm.%d", i);
75 if (!dummy_stm[i].name) 73 if (!dummy_stm[i].name)
76 goto fail_unregister; 74 goto fail_unregister;
@@ -86,8 +84,6 @@ static int dummy_stm_init(void)
86 goto fail_free; 84 goto fail_free;
87 } 85 }
88 86
89 dummy_stm_nr = __nr_dummies;
90
91 return 0; 87 return 0;
92 88
93fail_unregister: 89fail_unregister:
@@ -105,7 +101,7 @@ static void dummy_stm_exit(void)
105{ 101{
106 int i; 102 int i;
107 103
108 for (i = 0; i < dummy_stm_nr; i++) { 104 for (i = 0; i < nr_dummies; i++) {
109 stm_unregister_device(&dummy_stm[i]); 105 stm_unregister_device(&dummy_stm[i]);
110 kfree(dummy_stm[i].name); 106 kfree(dummy_stm[i].name);
111 } 107 }