kr
subRL[5] = kr;
ROLDQ(kl, kr, 30);
subRL[11] = kr;
ROLDQ(kl, kr, 15);
subRL[13] = kr;
ROLDQ(kl, kr, 17);
subRL[17] = kr;
ROLDQ(kl, kr, 17);
subRL[19] = kr;
ROLDQ(kl, kr, 17);
subRL[23] = kr;
kr = subRL[1];
kr ^= ww;
CAMELLIA_F(kr, CAMELLIA_SIGMA2L, CAMELLIA_SIGMA2R, kl);
CAMELLIA_F(kl, CAMELLIA_SIGMA3L, CAMELLIA_SIGMA3R, kr);
kr ^= ww;
CAMELLIA_F(kr, CAMELLIA_SIGMA4L, CAMELLIA_SIGMA4R, ww);
subRL[3] = kr;
ROLDQ(kl, kr, 15);
subRL[7] = kr;
ROLDQ(kl, kr, 15);
subRL[9] = kr;
ROLDQ(kl, kr, 15);
ROLDQ(kl, kr, 15);
subRL[15] = kr;
ROLDQ(kl, kr, 34);
subRL[21] = kr;
ROLDQ(kl, kr, 17);
subRL[25] = kr;
u64 kl, kr; /* left half of key */
kr = get_unaligned_be64(key + 8);
subRL[1] = kr;
ROLDQ(kl, kr, 45);
subRL[13] = kr;
ROLDQ(kl, kr, 15);
subRL[17] = kr;
ROLDQ(kl, kr, 17);
subRL[23] = kr;
ROLDQ(kl, kr, 34);
subRL[31] = kr;
kr = subRL[1] ^ krr;
kr ^= ww;
CAMELLIA_F(kr, CAMELLIA_SIGMA2L, CAMELLIA_SIGMA2R, kl);
CAMELLIA_F(kl, CAMELLIA_SIGMA3L, CAMELLIA_SIGMA3R, kr);
kr ^= ww ^ krr;
CAMELLIA_F(kr, CAMELLIA_SIGMA4L, CAMELLIA_SIGMA4R, ww);
krr ^= kr;
ROLDQ(kl, kr, 15);
subRL[7] = kr;
ROLDQ(kl, kr, 30);
subRL[15] = kr;
ROLDQ(kl, kr, 32);
subRL[25] = kr;
ROLDQ(kl, kr, 17);
subRL[29] = kr;
#define CAMELLIA_F(x, kl, kr, y) ({ \
u64 ii = x ^ (((u64)kl << 32) | kr); \
u64 kl, kr, ww;
kr = get_unaligned_be64(key + 8);
subRL[1] = kr;
ROLDQ(kl, kr, 15);
key_ref_t kr;
kr = key_create_or_update(make_key_ref(sed_opal_keyring, true), "user",
if (IS_ERR(kr)) {
pr_err("Error adding SED key (%ld)\n", PTR_ERR(kr));
return PTR_ERR(kr);
struct key *kr;
kr = keyring_alloc(".sed_opal",
if (IS_ERR(kr))
return PTR_ERR(kr);
sed_opal_keyring = kr;
#define CAMELLIA_F(xl, xr, kl, kr, yl, yr, il, ir, t0, t1) ({ \
ir = xr ^ kr; \
#define CAMELLIA_ROUNDSM(xl, xr, kl, kr, yl, yr, il, ir) ({ \
yr ^= kr; \
int64_t kr;
+ (p->kr + p->kir*i + p->ki2r*i*i +
struct mtd_erase_region_info *kr;
kr = &(mtd->eraseregions[ur_idx]);
if (put_user(kr->offset, &(ur->offset))
|| put_user(kr->erasesize, &(ur->erasesize))
|| put_user(kr->numblocks, &(ur->numblocks)))
MODULE_ALIAS_NLS(euc-kr);
(kr->rx_buf_len &&
(nla_put_u32(skb, ETHTOOL_A_RINGS_RX_BUF_LEN, kr->rx_buf_len))) ||
(kr->tcp_data_split &&
kr->tcp_data_split))) ||
(kr->cqe_size &&
(nla_put_u32(skb, ETHTOOL_A_RINGS_CQE_SIZE, kr->cqe_size))) ||
nla_put_u8(skb, ETHTOOL_A_RINGS_TX_PUSH, !!kr->tx_push) ||
nla_put_u8(skb, ETHTOOL_A_RINGS_RX_PUSH, !!kr->rx_push) ||
kr->tx_push_buf_max_len) ||
kr->tx_push_buf_len))) ||
kr->hds_thresh) ||
kr->hds_thresh_max))))
const struct kernel_ethtool_ringparam *kr = &data->kernel_ringparam;
WARN_ON(kr->tcp_data_split > ETHTOOL_TCP_DATA_SPLIT_ENABLED);