Home
last modified time | relevance | path

Searched full:disks (Results 1 – 25 of 480) sorted by relevance

12345678910>>...20

/kernel/linux/linux-5.10/crypto/async_tx/
Dasync_pq.c22 * blocks[disks-2] and the 'Q' destination address at blocks[disks-1]
36 const unsigned char *scfs, int disks, in do_async_gen_syndrome() argument
46 int src_cnt = disks - 2; in do_async_gen_syndrome()
76 dma_dest[0] = unmap->addr[disks - 2]; in do_async_gen_syndrome()
77 dma_dest[1] = unmap->addr[disks - 1]; in do_async_gen_syndrome()
107 do_sync_gen_syndrome(struct page **blocks, unsigned int *offsets, int disks, in do_sync_gen_syndrome() argument
112 int start = -1, stop = disks - 3; in do_sync_gen_syndrome()
119 for (i = 0; i < disks; i++) { in do_sync_gen_syndrome()
121 BUG_ON(i > disks - 3); /* P or Q can't be zero */ in do_sync_gen_syndrome()
126 if (i < disks - 2) { in do_sync_gen_syndrome()
[all …]
Draid6test.c35 static void makedata(int disks) in makedata() argument
39 for (i = 0; i < disks; i++) { in makedata()
46 static char disk_type(int d, int disks) in disk_type() argument
48 if (d == disks - 2) in disk_type()
50 else if (d == disks - 1) in disk_type()
57 static void raid6_dual_recov(int disks, size_t bytes, int faila, int failb, in raid6_dual_recov() argument
68 if (failb == disks-1) { in raid6_dual_recov()
69 if (faila == disks-2) { in raid6_dual_recov()
73 disks, bytes, &submit); in raid6_dual_recov()
80 BUG_ON(disks > NDISKS); in raid6_dual_recov()
[all …]
Dasync_raid6_recov.c153 __2data_recov_4(int disks, size_t bytes, int faila, int failb, in __2data_recov_4() argument
168 p = blocks[disks-2]; in __2data_recov_4()
169 p_off = offs[disks-2]; in __2data_recov_4()
170 q = blocks[disks-1]; in __2data_recov_4()
171 q_off = offs[disks-1]; in __2data_recov_4()
203 __2data_recov_5(int disks, size_t bytes, int faila, int failb, in __2data_recov_5() argument
221 for (i = 0; i < disks-2; i++) { in __2data_recov_5()
231 p = blocks[disks-2]; in __2data_recov_5()
232 p_off = offs[disks-2]; in __2data_recov_5()
233 q = blocks[disks-1]; in __2data_recov_5()
[all …]
/kernel/linux/linux-4.19/crypto/async_tx/
Dasync_pq.c38 * blocks[disks-2] and the 'Q' destination address at blocks[disks-1]
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()
[all …]
Draid6test.c47 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 …]
Dasync_raid6_recov.c160 __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 …]
/kernel/linux/linux-5.10/lib/raid6/
Drecov.c20 static void raid6_2data_recov_intx1(int disks, size_t bytes, int faila, in raid6_2data_recov_intx1() argument
28 p = (u8 *)ptrs[disks-2]; in raid6_2data_recov_intx1()
29 q = (u8 *)ptrs[disks-1]; in raid6_2data_recov_intx1()
36 ptrs[disks-2] = dp; in raid6_2data_recov_intx1()
39 ptrs[disks-1] = dq; in raid6_2data_recov_intx1()
41 raid6_call.gen_syndrome(disks, bytes, ptrs); in raid6_2data_recov_intx1()
46 ptrs[disks-2] = p; in raid6_2data_recov_intx1()
47 ptrs[disks-1] = q; in raid6_2data_recov_intx1()
64 static void raid6_datap_recov_intx1(int disks, size_t bytes, int faila, in raid6_datap_recov_intx1() argument
70 p = (u8 *)ptrs[disks-2]; in raid6_datap_recov_intx1()
[all …]
Drecov_neon.c29 static void raid6_2data_recov_neon(int disks, size_t bytes, int faila, in raid6_2data_recov_neon() argument
36 p = (u8 *)ptrs[disks - 2]; in raid6_2data_recov_neon()
37 q = (u8 *)ptrs[disks - 1]; in raid6_2data_recov_neon()
46 ptrs[disks - 2] = dp; in raid6_2data_recov_neon()
49 ptrs[disks - 1] = dq; in raid6_2data_recov_neon()
51 raid6_call.gen_syndrome(disks, bytes, ptrs); in raid6_2data_recov_neon()
56 ptrs[disks - 2] = p; in raid6_2data_recov_neon()
57 ptrs[disks - 1] = q; in raid6_2data_recov_neon()
69 static void raid6_datap_recov_neon(int disks, size_t bytes, int faila, in raid6_datap_recov_neon() argument
75 p = (u8 *)ptrs[disks - 2]; in raid6_datap_recov_neon()
[all …]
Drecov_s390xc.c23 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 …]
Dalgos.c146 void *(*const dptrs)[RAID6_TEST_DISKS], const int disks) in raid6_choose_gen() argument
149 int start = (disks>>1)-1, stop = disks-3; /* work on the second half of the disks */ in raid6_choose_gen()
171 (*algo)->gen_syndrome(disks, PAGE_SIZE, *dptrs); in raid6_choose_gen()
181 (perf * HZ * (disks-2)) >> in raid6_choose_gen()
195 (*algo)->xor_syndrome(disks, start, stop, in raid6_choose_gen()
205 (perf * HZ * (disks-2)) >> in raid6_choose_gen()
214 (bestgenperf * HZ * (disks-2)) >> in raid6_choose_gen()
218 (bestxorperf * HZ * (disks-2)) >> in raid6_choose_gen()
236 const int disks = RAID6_TEST_DISKS; in raid6_select_algo() local
252 for (i = 0; i < disks; i++) in raid6_select_algo()
[all …]
Drecov_avx512.c24 static void raid6_2data_recov_avx512(int disks, size_t bytes, int faila, in raid6_2data_recov_avx512() argument
32 p = (u8 *)ptrs[disks-2]; in raid6_2data_recov_avx512()
33 q = (u8 *)ptrs[disks-1]; in raid6_2data_recov_avx512()
43 ptrs[disks-2] = dp; in raid6_2data_recov_avx512()
46 ptrs[disks-1] = dq; in raid6_2data_recov_avx512()
48 raid6_call.gen_syndrome(disks, bytes, ptrs); in raid6_2data_recov_avx512()
53 ptrs[disks-2] = p; in raid6_2data_recov_avx512()
54 ptrs[disks-1] = q; in raid6_2data_recov_avx512()
227 static void raid6_datap_recov_avx512(int disks, size_t bytes, int faila, in raid6_datap_recov_avx512() argument
234 p = (u8 *)ptrs[disks-2]; in raid6_datap_recov_avx512()
[all …]
Drecov_ssse3.c16 static void raid6_2data_recov_ssse3(int disks, size_t bytes, int faila, in raid6_2data_recov_ssse3() argument
26 p = (u8 *)ptrs[disks-2]; in raid6_2data_recov_ssse3()
27 q = (u8 *)ptrs[disks-1]; in raid6_2data_recov_ssse3()
34 ptrs[disks-2] = dp; in raid6_2data_recov_ssse3()
37 ptrs[disks-1] = dq; in raid6_2data_recov_ssse3()
39 raid6_call.gen_syndrome(disks, bytes, ptrs); in raid6_2data_recov_ssse3()
44 ptrs[disks-2] = p; in raid6_2data_recov_ssse3()
45 ptrs[disks-1] = q; in raid6_2data_recov_ssse3()
191 static void raid6_datap_recov_ssse3(int disks, size_t bytes, int faila, in raid6_datap_recov_ssse3() argument
200 p = (u8 *)ptrs[disks-2]; in raid6_datap_recov_ssse3()
[all …]
/kernel/linux/linux-4.19/lib/raid6/
Drecov.c25 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 …]
Drecov_neon.c33 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 …]
Drecov_s390xc.c23 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 …]
Dalgos.c154 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()
Drecov_ssse3.c22 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 …]
/kernel/linux/linux-5.10/Documentation/driver-api/md/
Draid5-cache.rst6 disks. The role of RAID disks isn't changed with the cache disk. The cache disk
7 caches data to the RAID disks. The cache can be in write-through (supported
28 disks and it's possible the writes don't hit all RAID disks yet before the
35 is safe on the cache disk, the data will be flushed onto RAID disks. The
40 filesystems) after the data is safe on RAID disks, so cache disk failure
52 write. If a write crosses all RAID disks of a stripe, we call it full-stripe
57 RAID disks only after the data becomes a full stripe write. This will
63 disks later after specific conditions met. So cache disk failure will cause
90 order in which MD writes data to cache disk and RAID disks. Specifically, in
92 parity to the log, writes the data and parity to RAID disks after the data and
[all …]
Draid5-ppl.rst7 may become inconsistent with data on other member disks. If the array is also
9 disks is missing. This can lead to silent data corruption when rebuilding the
19 which chunk writes have completed. If one of the not modified data disks of
22 unclean shutdown and all disks are available, eliminating the need to resync
27 parity are dispatched to disks. PPL is a distributed log - it is stored on
44 There is a limitation of maximum 64 disks in the array for PPL. It allows to
45 keep data structures and implementation simple. RAID5 arrays with so many disks
46 are not likely due to high risk of multiple disks failure. Such restriction
/kernel/linux/linux-4.19/Documentation/md/
Draid5-cache.txt4 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 …]
Draid5-ppl.txt5 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
/kernel/linux/linux-4.19/block/partitions/
DKconfig8 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 …]
/kernel/linux/linux-5.10/block/partitions/
DKconfig8 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 …]
/kernel/linux/linux-4.19/drivers/md/
Dmd-linear.c47 if (sector < conf->disks[mid].end_sector) in which_dev()
53 return conf->disks + lo; in which_dev()
58 * mddev->raid_disks to iterate conf->disks[], because conf->raid_disks
59 * and conf->disks[] are created in linear_conf(), they are always
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()
[all …]
/kernel/linux/linux-5.10/drivers/md/
Dmd-linear.c40 if (sector < conf->disks[mid].end_sector) in which_dev()
46 return conf->disks + lo; in which_dev()
69 conf = kzalloc(struct_size(conf, disks, raid_disks), GFP_KERNEL); in linear_conf()
78 struct dev_info *disk = conf->disks + j; in linear_conf()
117 conf->disks[0].end_sector = conf->disks[0].rdev->sectors; in linear_conf()
120 conf->disks[i].end_sector = in linear_conf()
121 conf->disks[i-1].end_sector + in linear_conf()
122 conf->disks[i].rdev->sectors; in linear_conf()
128 * conf->disks[] when it is updated in linear_add() and used to in linear_conf()
129 * iterate old conf->disks[] earray in linear_congested(). in linear_conf()
[all …]

12345678910>>...20