Lines Matching +full:p +full:- +full:256
1 // SPDX-License-Identifier: GPL-2.0
3 * RAID-6 data recovery in dual failure mode based on the XC instruction.
13 typedef struct { u8 _[256]; } addrtype; in xor_block()
16 " xc 0(256,%[p1]),0(%[p2])\n" in xor_block()
25 u8 *p, *q, *dp, *dq; in raid6_2data_recov_s390xc() local
26 const u8 *pbmul; /* P multiplier table for B data */ in raid6_2data_recov_s390xc()
30 p = (u8 *)ptrs[disks-2]; in raid6_2data_recov_s390xc()
31 q = (u8 *)ptrs[disks-1]; in raid6_2data_recov_s390xc()
35 delta p and delta q */ in raid6_2data_recov_s390xc()
38 ptrs[disks-2] = dp; in raid6_2data_recov_s390xc()
41 ptrs[disks-1] = dq; in raid6_2data_recov_s390xc()
48 ptrs[disks-2] = p; in raid6_2data_recov_s390xc()
49 ptrs[disks-1] = q; in raid6_2data_recov_s390xc()
52 pbmul = raid6_gfmul[raid6_gfexi[failb-faila]]; in raid6_2data_recov_s390xc()
57 xor_block(dp, p); in raid6_2data_recov_s390xc()
59 for (i = 0; i < 256; i++) in raid6_2data_recov_s390xc()
62 p += 256; in raid6_2data_recov_s390xc()
63 q += 256; in raid6_2data_recov_s390xc()
64 dp += 256; in raid6_2data_recov_s390xc()
65 dq += 256; in raid6_2data_recov_s390xc()
66 bytes -= 256; in raid6_2data_recov_s390xc()
70 /* Recover failure of one data block plus the P block */
74 u8 *p, *q, *dq; in raid6_datap_recov_s390xc() local
78 p = (u8 *)ptrs[disks-2]; in raid6_datap_recov_s390xc()
79 q = (u8 *)ptrs[disks-1]; in raid6_datap_recov_s390xc()
85 ptrs[disks-1] = dq; in raid6_datap_recov_s390xc()
91 ptrs[disks-1] = q; in raid6_datap_recov_s390xc()
99 for (i = 0; i < 256; i++) in raid6_datap_recov_s390xc()
101 xor_block(p, dq); in raid6_datap_recov_s390xc()
102 p += 256; in raid6_datap_recov_s390xc()
103 q += 256; in raid6_datap_recov_s390xc()
104 dq += 256; in raid6_datap_recov_s390xc()
105 bytes -= 256; in raid6_datap_recov_s390xc()