hc
2024-02-20 102a0743326a03cd1a1202ceda21e175b7d3575c
kernel/drivers/md/dm-stats.c
....@@ -188,7 +188,7 @@
188188 atomic_read(&shared->in_flight[WRITE]);
189189 }
190190
191
-void dm_stats_init(struct dm_stats *stats)
191
+int dm_stats_init(struct dm_stats *stats)
192192 {
193193 int cpu;
194194 struct dm_stats_last_position *last;
....@@ -196,11 +196,16 @@
196196 mutex_init(&stats->mutex);
197197 INIT_LIST_HEAD(&stats->list);
198198 stats->last = alloc_percpu(struct dm_stats_last_position);
199
+ if (!stats->last)
200
+ return -ENOMEM;
201
+
199202 for_each_possible_cpu(cpu) {
200203 last = per_cpu_ptr(stats->last, cpu);
201204 last->last_sector = (sector_t)ULLONG_MAX;
202205 last->last_rw = UINT_MAX;
203206 }
207
+
208
+ return 0;
204209 }
205210
206211 void dm_stats_cleanup(struct dm_stats *stats)