projects
/
urcu.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
lfstack: fix: add missing __cds_lfs_init
[urcu.git]
/
rculfhash.c
diff --git
a/rculfhash.c
b/rculfhash.c
index 8a8ede7a6cadd1027a2c55c450ac3016f696fa6c..57f1a04d46dd3d446ca88fa74267660dd7a26fe2 100644
(file)
--- a/
rculfhash.c
+++ b/
rculfhash.c
@@
-1176,6
+1176,10
@@
void partition_resize_helper(struct cds_lfht *ht, unsigned long i,
int thread, ret;
unsigned long nr_threads;
int thread, ret;
unsigned long nr_threads;
+ assert(nr_cpus_mask != -1);
+ if (nr_cpus_mask < 0 || len < 2 * MIN_PARTITION_PER_THREAD)
+ goto fallback;
+
/*
* Note: nr_cpus_mask + 1 is always power of 2.
* We spawn just the number of threads we need to satisfy the minimum
/*
* Note: nr_cpus_mask + 1 is always power of 2.
* We spawn just the number of threads we need to satisfy the minimum
@@
-1268,13
+1272,6
@@
static
void init_table_populate(struct cds_lfht *ht, unsigned long i,
unsigned long len)
{
void init_table_populate(struct cds_lfht *ht, unsigned long i,
unsigned long len)
{
- assert(nr_cpus_mask != -1);
- if (nr_cpus_mask < 0 || len < 2 * MIN_PARTITION_PER_THREAD) {
- ht->flavor->thread_online();
- init_table_populate_partition(ht, i, 0, len);
- ht->flavor->thread_offline();
- return;
- }
partition_resize_helper(ht, i, len, init_table_populate_partition);
}
partition_resize_helper(ht, i, len, init_table_populate_partition);
}
@@
-1367,14
+1364,6
@@
void remove_table_partition(struct cds_lfht *ht, unsigned long i,
static
void remove_table(struct cds_lfht *ht, unsigned long i, unsigned long len)
{
static
void remove_table(struct cds_lfht *ht, unsigned long i, unsigned long len)
{
-
- assert(nr_cpus_mask != -1);
- if (nr_cpus_mask < 0 || len < 2 * MIN_PARTITION_PER_THREAD) {
- ht->flavor->thread_online();
- remove_table_partition(ht, i, 0, len);
- ht->flavor->thread_offline();
- return;
- }
partition_resize_helper(ht, i, len, remove_table_partition);
}
partition_resize_helper(ht, i, len, remove_table_partition);
}
This page took
0.023884 seconds
and
4
git commands to generate.