hc
2023-12-11 d2ccde1c8e90d38cee87a1b0309ad2827f3fd30d
kernel/drivers/md/dm-raid1.c
....@@ -83,7 +83,7 @@
8383 struct work_struct trigger_event;
8484
8585 unsigned nr_mirrors;
86
- struct mirror mirror[0];
86
+ struct mirror mirror[];
8787 };
8888
8989 DECLARE_DM_KCOPYD_THROTTLE_WITH_MODULE_PARM(raid1_resync_throttle,
....@@ -779,7 +779,7 @@
779779 wakeup_mirrord(ms);
780780 } else {
781781 map_bio(get_default_mirror(ms), bio);
782
- generic_make_request(bio);
782
+ submit_bio_noacct(bio);
783783 }
784784 }
785785 }
....@@ -878,12 +878,9 @@
878878 struct dm_target *ti,
879879 struct dm_dirty_log *dl)
880880 {
881
- size_t len;
882
- struct mirror_set *ms = NULL;
881
+ struct mirror_set *ms =
882
+ kzalloc(struct_size(ms, mirror, nr_mirrors), GFP_KERNEL);
883883
884
- len = sizeof(*ms) + (sizeof(ms->mirror[0]) * nr_mirrors);
885
-
886
- ms = kzalloc(len, GFP_KERNEL);
887884 if (!ms) {
888885 ti->error = "Cannot allocate mirror context";
889886 return NULL;