mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-28 02:32:09 -04:00
Merge branch 'linus' into perf/core, to pick up fixes
Signed-off-by: Ingo Molnar <[email protected]>
This commit is contained in:
commit
9ed8f1a6e7
756 changed files with 7346 additions and 3904 deletions
|
|
@ -768,9 +768,11 @@ all_leaves_cluster_together:
|
|||
new_s0->index_key[i] =
|
||||
ops->get_key_chunk(index_key, i * ASSOC_ARRAY_KEY_CHUNK_SIZE);
|
||||
|
||||
blank = ULONG_MAX << (level & ASSOC_ARRAY_KEY_CHUNK_MASK);
|
||||
pr_devel("blank off [%zu] %d: %lx\n", keylen - 1, level, blank);
|
||||
new_s0->index_key[keylen - 1] &= ~blank;
|
||||
if (level & ASSOC_ARRAY_KEY_CHUNK_MASK) {
|
||||
blank = ULONG_MAX << (level & ASSOC_ARRAY_KEY_CHUNK_MASK);
|
||||
pr_devel("blank off [%zu] %d: %lx\n", keylen - 1, level, blank);
|
||||
new_s0->index_key[keylen - 1] &= ~blank;
|
||||
}
|
||||
|
||||
/* This now reduces to a node splitting exercise for which we'll need
|
||||
* to regenerate the disparity table.
|
||||
|
|
|
|||
|
|
@ -206,8 +206,8 @@ u32 __pure __weak __crc32c_le(u32 crc, unsigned char const *p, size_t len)
|
|||
EXPORT_SYMBOL(crc32_le);
|
||||
EXPORT_SYMBOL(__crc32c_le);
|
||||
|
||||
u32 crc32_le_base(u32, unsigned char const *, size_t) __alias(crc32_le);
|
||||
u32 __crc32c_le_base(u32, unsigned char const *, size_t) __alias(__crc32c_le);
|
||||
u32 __pure crc32_le_base(u32, unsigned char const *, size_t) __alias(crc32_le);
|
||||
u32 __pure __crc32c_le_base(u32, unsigned char const *, size_t) __alias(__crc32c_le);
|
||||
|
||||
/*
|
||||
* This multiplies the polynomials x and y modulo the given modulus.
|
||||
|
|
|
|||
|
|
@ -541,38 +541,45 @@ static unsigned int __init print_ht(struct rhltable *rhlt)
|
|||
static int __init test_insert_dup(struct test_obj_rhl *rhl_test_objects,
|
||||
int cnt, bool slow)
|
||||
{
|
||||
struct rhltable rhlt;
|
||||
struct rhltable *rhlt;
|
||||
unsigned int i, ret;
|
||||
const char *key;
|
||||
int err = 0;
|
||||
|
||||
err = rhltable_init(&rhlt, &test_rht_params_dup);
|
||||
if (WARN_ON(err))
|
||||
rhlt = kmalloc(sizeof(*rhlt), GFP_KERNEL);
|
||||
if (WARN_ON(!rhlt))
|
||||
return -EINVAL;
|
||||
|
||||
err = rhltable_init(rhlt, &test_rht_params_dup);
|
||||
if (WARN_ON(err)) {
|
||||
kfree(rhlt);
|
||||
return err;
|
||||
}
|
||||
|
||||
for (i = 0; i < cnt; i++) {
|
||||
rhl_test_objects[i].value.tid = i;
|
||||
key = rht_obj(&rhlt.ht, &rhl_test_objects[i].list_node.rhead);
|
||||
key = rht_obj(&rhlt->ht, &rhl_test_objects[i].list_node.rhead);
|
||||
key += test_rht_params_dup.key_offset;
|
||||
|
||||
if (slow) {
|
||||
err = PTR_ERR(rhashtable_insert_slow(&rhlt.ht, key,
|
||||
err = PTR_ERR(rhashtable_insert_slow(&rhlt->ht, key,
|
||||
&rhl_test_objects[i].list_node.rhead));
|
||||
if (err == -EAGAIN)
|
||||
err = 0;
|
||||
} else
|
||||
err = rhltable_insert(&rhlt,
|
||||
err = rhltable_insert(rhlt,
|
||||
&rhl_test_objects[i].list_node,
|
||||
test_rht_params_dup);
|
||||
if (WARN(err, "error %d on element %d/%d (%s)\n", err, i, cnt, slow? "slow" : "fast"))
|
||||
goto skip_print;
|
||||
}
|
||||
|
||||
ret = print_ht(&rhlt);
|
||||
ret = print_ht(rhlt);
|
||||
WARN(ret != cnt, "missing rhltable elements (%d != %d, %s)\n", ret, cnt, slow? "slow" : "fast");
|
||||
|
||||
skip_print:
|
||||
rhltable_destroy(&rhlt);
|
||||
rhltable_destroy(rhlt);
|
||||
kfree(rhlt);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue