/Linux-v4.19/crypto/async_tx/ |
D | raid6test.c | 47 static void makedata(int disks) in makedata() argument 51 for (i = 0; i < disks; i++) { in makedata() 57 static char disk_type(int d, int disks) in disk_type() argument 59 if (d == disks - 2) in disk_type() 61 else if (d == disks - 1) in disk_type() 68 static void raid6_dual_recov(int disks, size_t bytes, int faila, int failb, struct page **ptrs) in raid6_dual_recov() argument 78 if (failb == disks-1) { in raid6_dual_recov() 79 if (faila == disks-2) { in raid6_dual_recov() 82 tx = async_gen_syndrome(ptrs, 0, disks, bytes, &submit); in raid6_dual_recov() 89 BUG_ON(disks > NDISKS); in raid6_dual_recov() [all …]
|
D | async_pq.c | 52 const unsigned char *scfs, int disks, in do_async_gen_syndrome() argument 62 int src_cnt = disks - 2; in do_async_gen_syndrome() 92 dma_dest[0] = unmap->addr[disks - 2]; in do_async_gen_syndrome() 93 dma_dest[1] = unmap->addr[disks - 1]; in do_async_gen_syndrome() 123 do_sync_gen_syndrome(struct page **blocks, unsigned int offset, int disks, in do_sync_gen_syndrome() argument 128 int start = -1, stop = disks - 3; in do_sync_gen_syndrome() 135 for (i = 0; i < disks; i++) { in do_sync_gen_syndrome() 137 BUG_ON(i > disks - 3); /* P or Q can't be zero */ in do_sync_gen_syndrome() 141 if (i < disks - 2) { in do_sync_gen_syndrome() 151 raid6_call.xor_syndrome(disks, start, stop, len, srcs); in do_sync_gen_syndrome() [all …]
|
D | async_raid6_recov.c | 160 __2data_recov_4(int disks, size_t bytes, int faila, int failb, in __2data_recov_4() argument 172 p = blocks[disks-2]; in __2data_recov_4() 173 q = blocks[disks-1]; in __2data_recov_4() 199 __2data_recov_5(int disks, size_t bytes, int faila, int failb, in __2data_recov_5() argument 214 for (i = 0; i < disks-2; i++) { in __2data_recov_5() 224 p = blocks[disks-2]; in __2data_recov_5() 225 q = blocks[disks-1]; in __2data_recov_5() 273 __2data_recov_n(int disks, size_t bytes, int faila, int failb, in __2data_recov_n() argument 285 p = blocks[disks-2]; in __2data_recov_n() 286 q = blocks[disks-1]; in __2data_recov_n() [all …]
|
/Linux-v4.19/lib/raid6/ |
D | recov.c | 25 static void raid6_2data_recov_intx1(int disks, size_t bytes, int faila, in raid6_2data_recov_intx1() argument 33 p = (u8 *)ptrs[disks-2]; in raid6_2data_recov_intx1() 34 q = (u8 *)ptrs[disks-1]; in raid6_2data_recov_intx1() 41 ptrs[disks-2] = dp; in raid6_2data_recov_intx1() 44 ptrs[disks-1] = dq; in raid6_2data_recov_intx1() 46 raid6_call.gen_syndrome(disks, bytes, ptrs); in raid6_2data_recov_intx1() 51 ptrs[disks-2] = p; in raid6_2data_recov_intx1() 52 ptrs[disks-1] = q; in raid6_2data_recov_intx1() 69 static void raid6_datap_recov_intx1(int disks, size_t bytes, int faila, in raid6_datap_recov_intx1() argument 75 p = (u8 *)ptrs[disks-2]; in raid6_datap_recov_intx1() [all …]
|
D | recov_neon.c | 33 static void raid6_2data_recov_neon(int disks, size_t bytes, int faila, in raid6_2data_recov_neon() argument 40 p = (u8 *)ptrs[disks - 2]; in raid6_2data_recov_neon() 41 q = (u8 *)ptrs[disks - 1]; in raid6_2data_recov_neon() 50 ptrs[disks - 2] = dp; in raid6_2data_recov_neon() 53 ptrs[disks - 1] = dq; in raid6_2data_recov_neon() 55 raid6_call.gen_syndrome(disks, bytes, ptrs); in raid6_2data_recov_neon() 60 ptrs[disks - 2] = p; in raid6_2data_recov_neon() 61 ptrs[disks - 1] = q; in raid6_2data_recov_neon() 73 static void raid6_datap_recov_neon(int disks, size_t bytes, int faila, in raid6_datap_recov_neon() argument 79 p = (u8 *)ptrs[disks - 2]; in raid6_datap_recov_neon() [all …]
|
D | recov_s390xc.c | 23 static void raid6_2data_recov_s390xc(int disks, size_t bytes, int faila, in raid6_2data_recov_s390xc() argument 31 p = (u8 *)ptrs[disks-2]; in raid6_2data_recov_s390xc() 32 q = (u8 *)ptrs[disks-1]; in raid6_2data_recov_s390xc() 39 ptrs[disks-2] = dp; in raid6_2data_recov_s390xc() 42 ptrs[disks-1] = dq; in raid6_2data_recov_s390xc() 44 raid6_call.gen_syndrome(disks, bytes, ptrs); in raid6_2data_recov_s390xc() 49 ptrs[disks-2] = p; in raid6_2data_recov_s390xc() 50 ptrs[disks-1] = q; in raid6_2data_recov_s390xc() 72 static void raid6_datap_recov_s390xc(int disks, size_t bytes, int faila, in raid6_datap_recov_s390xc() argument 79 p = (u8 *)ptrs[disks-2]; in raid6_datap_recov_s390xc() [all …]
|
D | recov_avx2.c | 22 static void raid6_2data_recov_avx2(int disks, size_t bytes, int faila, in raid6_2data_recov_avx2() argument 30 p = (u8 *)ptrs[disks-2]; in raid6_2data_recov_avx2() 31 q = (u8 *)ptrs[disks-1]; in raid6_2data_recov_avx2() 38 ptrs[disks-2] = dp; in raid6_2data_recov_avx2() 41 ptrs[disks-1] = dq; in raid6_2data_recov_avx2() 43 raid6_call.gen_syndrome(disks, bytes, ptrs); in raid6_2data_recov_avx2() 48 ptrs[disks-2] = p; in raid6_2data_recov_avx2() 49 ptrs[disks-1] = q; in raid6_2data_recov_avx2() 192 static void raid6_datap_recov_avx2(int disks, size_t bytes, int faila, in raid6_datap_recov_avx2() argument 199 p = (u8 *)ptrs[disks-2]; in raid6_datap_recov_avx2() [all …]
|
D | recov_avx512.c | 29 static void raid6_2data_recov_avx512(int disks, size_t bytes, int faila, in raid6_2data_recov_avx512() argument 37 p = (u8 *)ptrs[disks-2]; in raid6_2data_recov_avx512() 38 q = (u8 *)ptrs[disks-1]; in raid6_2data_recov_avx512() 48 ptrs[disks-2] = dp; in raid6_2data_recov_avx512() 51 ptrs[disks-1] = dq; in raid6_2data_recov_avx512() 53 raid6_call.gen_syndrome(disks, bytes, ptrs); in raid6_2data_recov_avx512() 58 ptrs[disks-2] = p; in raid6_2data_recov_avx512() 59 ptrs[disks-1] = q; in raid6_2data_recov_avx512() 232 static void raid6_datap_recov_avx512(int disks, size_t bytes, int faila, in raid6_datap_recov_avx512() argument 239 p = (u8 *)ptrs[disks-2]; in raid6_datap_recov_avx512() [all …]
|
D | recov_ssse3.c | 22 static void raid6_2data_recov_ssse3(int disks, size_t bytes, int faila, in raid6_2data_recov_ssse3() argument 32 p = (u8 *)ptrs[disks-2]; in raid6_2data_recov_ssse3() 33 q = (u8 *)ptrs[disks-1]; in raid6_2data_recov_ssse3() 40 ptrs[disks-2] = dp; in raid6_2data_recov_ssse3() 43 ptrs[disks-1] = dq; in raid6_2data_recov_ssse3() 45 raid6_call.gen_syndrome(disks, bytes, ptrs); in raid6_2data_recov_ssse3() 50 ptrs[disks-2] = p; in raid6_2data_recov_ssse3() 51 ptrs[disks-1] = q; in raid6_2data_recov_ssse3() 197 static void raid6_datap_recov_ssse3(int disks, size_t bytes, int faila, in raid6_datap_recov_ssse3() argument 206 p = (u8 *)ptrs[disks-2]; in raid6_datap_recov_ssse3() [all …]
|
D | avx512.c | 49 static void raid6_avx5121_gen_syndrome(int disks, size_t bytes, void **ptrs) in raid6_avx5121_gen_syndrome() argument 55 z0 = disks - 3; /* Highest data disk */ in raid6_avx5121_gen_syndrome() 106 static void raid6_avx5121_xor_syndrome(int disks, int start, int stop, in raid6_avx5121_xor_syndrome() argument 114 p = dptr[disks-2]; /* XOR parity */ in raid6_avx5121_xor_syndrome() 115 q = dptr[disks-1]; /* RS syndrome */ in raid6_avx5121_xor_syndrome() 176 static void raid6_avx5122_gen_syndrome(int disks, size_t bytes, void **ptrs) in raid6_avx5122_gen_syndrome() argument 182 z0 = disks - 3; /* Highest data disk */ in raid6_avx5122_gen_syndrome() 238 static void raid6_avx5122_xor_syndrome(int disks, int start, int stop, in raid6_avx5122_xor_syndrome() argument 246 p = dptr[disks-2]; /* XOR parity */ in raid6_avx5122_xor_syndrome() 247 q = dptr[disks-1]; /* RS syndrome */ in raid6_avx5122_xor_syndrome() [all …]
|
D | avx2.c | 42 static void raid6_avx21_gen_syndrome(int disks, size_t bytes, void **ptrs) in raid6_avx21_gen_syndrome() argument 48 z0 = disks - 3; /* Highest data disk */ in raid6_avx21_gen_syndrome() 90 static void raid6_avx21_xor_syndrome(int disks, int start, int stop, in raid6_avx21_xor_syndrome() argument 98 p = dptr[disks-2]; /* XOR parity */ in raid6_avx21_xor_syndrome() 99 q = dptr[disks-1]; /* RS syndrome */ in raid6_avx21_xor_syndrome() 149 static void raid6_avx22_gen_syndrome(int disks, size_t bytes, void **ptrs) in raid6_avx22_gen_syndrome() argument 155 z0 = disks - 3; /* Highest data disk */ in raid6_avx22_gen_syndrome() 200 static void raid6_avx22_xor_syndrome(int disks, int start, int stop, in raid6_avx22_xor_syndrome() argument 208 p = dptr[disks-2]; /* XOR parity */ in raid6_avx22_xor_syndrome() 209 q = dptr[disks-1]; /* RS syndrome */ in raid6_avx22_xor_syndrome() [all …]
|
D | sse2.c | 41 static void raid6_sse21_gen_syndrome(int disks, size_t bytes, void **ptrs) in raid6_sse21_gen_syndrome() argument 47 z0 = disks - 3; /* Highest data disk */ in raid6_sse21_gen_syndrome() 92 static void raid6_sse21_xor_syndrome(int disks, int start, int stop, in raid6_sse21_xor_syndrome() argument 100 p = dptr[disks-2]; /* XOR parity */ in raid6_sse21_xor_syndrome() 101 q = dptr[disks-1]; /* RS syndrome */ in raid6_sse21_xor_syndrome() 151 static void raid6_sse22_gen_syndrome(int disks, size_t bytes, void **ptrs) in raid6_sse22_gen_syndrome() argument 157 z0 = disks - 3; /* Highest data disk */ in raid6_sse22_gen_syndrome() 203 static void raid6_sse22_xor_syndrome(int disks, int start, int stop, in raid6_sse22_xor_syndrome() argument 211 p = dptr[disks-2]; /* XOR parity */ in raid6_sse22_xor_syndrome() 212 q = dptr[disks-1]; /* RS syndrome */ in raid6_sse22_xor_syndrome() [all …]
|
D | algos.c | 154 void *(*const dptrs)[(65536/PAGE_SIZE)+2], const int disks) in raid6_choose_gen() argument 157 int start = (disks>>1)-1, stop = disks-3; /* work on the second half of the disks */ in raid6_choose_gen() 174 (*algo)->gen_syndrome(disks, PAGE_SIZE, *dptrs); in raid6_choose_gen() 197 (*algo)->xor_syndrome(disks, start, stop, in raid6_choose_gen() 231 const int disks = (65536/PAGE_SIZE)+2; in raid6_select_algo() local 239 for (i = 0; i < disks-2; i++) in raid6_select_algo() 250 dptrs[disks-2] = syndromes; in raid6_select_algo() 251 dptrs[disks-1] = syndromes + PAGE_SIZE; in raid6_select_algo() 254 gen_best = raid6_choose_gen(&dptrs, disks); in raid6_select_algo()
|
D | neon.c | 33 static void raid6_neon ## _n ## _gen_syndrome(int disks, \ 39 raid6_neon ## _n ## _gen_syndrome_real(disks, \ 43 static void raid6_neon ## _n ## _xor_syndrome(int disks, \ 50 raid6_neon ## _n ## _xor_syndrome_real(disks, \
|
D | mmx.c | 40 static void raid6_mmx1_gen_syndrome(int disks, size_t bytes, void **ptrs) in raid6_mmx1_gen_syndrome() argument 46 z0 = disks - 3; /* Highest data disk */ in raid6_mmx1_gen_syndrome() 88 static void raid6_mmx2_gen_syndrome(int disks, size_t bytes, void **ptrs) in raid6_mmx2_gen_syndrome() argument 94 z0 = disks - 3; /* Highest data disk */ in raid6_mmx2_gen_syndrome()
|
D | sse1.c | 45 static void raid6_sse11_gen_syndrome(int disks, size_t bytes, void **ptrs) in raid6_sse11_gen_syndrome() argument 51 z0 = disks - 3; /* Highest data disk */ in raid6_sse11_gen_syndrome() 104 static void raid6_sse12_gen_syndrome(int disks, size_t bytes, void **ptrs) in raid6_sse12_gen_syndrome() argument 110 z0 = disks - 3; /* Highest data disk */ in raid6_sse12_gen_syndrome()
|
D | vpermxor.uc | 43 static void noinline raid6_vpermxor$#_gen_syndrome_real(int disks, size_t bytes, 51 z0 = disks - 3; /* Highest data disk */ 72 static void raid6_vpermxor$#_gen_syndrome(int disks, size_t bytes, void **ptrs) 77 raid6_vpermxor$#_gen_syndrome_real(disks, bytes, ptrs);
|
D | int.uc | 82 static void raid6_int$#_gen_syndrome(int disks, size_t bytes, void **ptrs) 90 z0 = disks - 3; /* Highest data disk */ 110 static void raid6_int$#_xor_syndrome(int disks, int start, int stop, 120 p = dptr[disks-2]; /* XOR parity */ 121 q = dptr[disks-1]; /* RS syndrome */
|
/Linux-v4.19/Documentation/md/ |
D | raid5-cache.txt | 4 disks. The role of RAID disks isn't changed with the cache disk. The cache disk 5 caches data to the RAID disks. The cache can be in write-through (supported 26 disks and it's possible the writes don't hit all RAID disks yet before the 33 is safe on the cache disk, the data will be flushed onto RAID disks. The 38 filesystems) after the data is safe on RAID disks, so cache disk failure 50 write. If a write crosses all RAID disks of a stripe, we call it full-stripe 55 RAID disks only after the data becomes a full stripe write. This will 61 disks later after specific conditions met. So cache disk failure will cause 88 order in which MD writes data to cache disk and RAID disks. Specifically, in 90 parity to the log, writes the data and parity to RAID disks after the data and [all …]
|
D | raid5-ppl.txt | 5 may become inconsistent with data on other member disks. If the array is also 7 disks is missing. This can lead to silent data corruption when rebuilding the 17 which chunk writes have completed. If one of the not modified data disks of 20 unclean shutdown and all disks are available, eliminating the need to resync 25 parity are dispatched to disks. PPL is a distributed log - it is stored on 42 There is a limitation of maximum 64 disks in the array for PPL. It allows to 43 keep data structures and implementation simple. RAID5 arrays with so many disks 44 are not likely due to high risk of multiple disks failure. Such restriction
|
/Linux-v4.19/drivers/md/ |
D | md-linear.c | 47 if (sector < conf->disks[mid].end_sector) in which_dev() 53 return conf->disks + lo; in which_dev() 71 struct request_queue *q = bdev_get_queue(conf->disks[i].rdev->bdev); in linear_congested() 109 struct dev_info *disk = conf->disks + j; in linear_conf() 148 conf->disks[0].end_sector = conf->disks[0].rdev->sectors; in linear_conf() 151 conf->disks[i].end_sector = in linear_conf() 152 conf->disks[i-1].end_sector + in linear_conf() 153 conf->disks[i].rdev->sectors; in linear_conf()
|
D | raid5.c | 127 if (sh->qd_idx == sh->disks - 1) in raid6_d0() 231 for (i = sh->disks; i--; ) in do_release_stripe() 512 sh->disks = previous ? conf->previous_raid_disks : conf->raid_disks; in init_stripe() 517 for (i = sh->disks; i--; ) { in init_stripe() 573 struct md_rdev *rdev = rcu_dereference(conf->disks[i].rdev); in raid5_calc_degraded() 575 rdev = rcu_dereference(conf->disks[i].replacement); in raid5_calc_degraded() 599 struct md_rdev *rdev = rcu_dereference(conf->disks[i].rdev); in raid5_calc_degraded() 601 rdev = rcu_dereference(conf->disks[i].replacement); in raid5_calc_degraded() 710 BUG_ON(sh->overwrite_disks > (sh->disks - sh->raid_conf->max_degraded)); in is_full_stripe_write() 711 return sh->overwrite_disks == (sh->disks - sh->raid_conf->max_degraded); in is_full_stripe_write() [all …]
|
/Linux-v4.19/tools/testing/selftests/zram/ |
D | README | 6 (<id> = 0, 1, ...). Pages written to these disks are compressed and stored 7 in memory itself. These disks allow very fast I/O and compression provides 9 use as swap disks, various caches under /var and maybe many more :) 26 zram01.sh: creates general purpose ram disks with ext4 filesystems
|
/Linux-v4.19/block/partitions/ |
D | Kconfig | 8 Say Y here if you would like to use hard disks under Linux which 22 Support hard disks partitioned under Acorn operating systems. 29 Say Y here if you would like to use hard disks under Linux which 42 Say Y here if you would like to use hard disks under Linux which 70 to read disks partitioned under RISCiX. 78 "logical volumes" can be spread across one or multiple disks, 87 Say Y here if you would like to use hard disks under Linux which 94 Say Y here if you would like to use hard disks under Linux which 101 Say Y here if you would like to use hard disks under Linux which 109 partition table format used by IBM DASD disks operating under CMS. [all …]
|
/Linux-v4.19/drivers/block/zram/ |
D | Kconfig | 9 Pages written to these disks are compressed and stored in memory 10 itself. These disks allow very fast I/O and compression provides 14 disks and maybe many more.
|