Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

parSafe heap can deadlock #19190

Open
jhh67 opened this issue Feb 4, 2022 · 0 comments
Open

parSafe heap can deadlock #19190

jhh67 opened this issue Feb 4, 2022 · 0 comments

Comments

@jhh67
Copy link
Contributor

jhh67 commented Feb 4, 2022

Summary of Problem

A heap created with parSafe=true can deadlock under some sequences of operations, e.g. push followed by pop or top. push followed by push appears to work. I didn't try any other combinations. It wasn't obvious from looking at the code where the problem lies.

Steps to Reproduce

Source Code:

use Heap;

var h = new heap(int, parSafe=true);
h.push(1);
writeln(h.pop());

Compile command:

chpl --no-devel foo.chpl

Execution command:

./foo

Associated Future Test(s):

Configuration Information

  • Output of chpl --version:
chpl version 1.26.0 pre-release (27f3d59788)
Copyright 2020-2022 Hewlett Packard Enterprise Development LP
Copyright 2004-2019 Cray Inc.
(See LICENSE file for more details)
  • Output of $CHPL_HOME/util/printchplenv --anonymize:
CHPL_TARGET_PLATFORM: darwin
CHPL_TARGET_COMPILER: clang
CHPL_TARGET_ARCH: x86_64
CHPL_TARGET_CPU: native
CHPL_LOCALE_MODEL: flat
CHPL_COMM: none *
CHPL_TASKS: qthreads
CHPL_LAUNCHER: none
CHPL_TIMERS: generic
CHPL_UNWIND: none
CHPL_MEM: jemalloc
CHPL_ATOMICS: cstdlib
CHPL_GMP: none *
CHPL_HWLOC: bundled
CHPL_RE2: bundled
CHPL_LLVM: none *
CHPL_AUX_FILESYS: none
  • Back-end compiler and version, e.g. gcc --version or clang --version:
Apple clang version 12.0.0 (clang-1200.0.32.29)
Target: x86_64-apple-darwin19.6.0
Thread model: posix
InstalledDir: /Library/Developer/CommandLineTools/usr/bin
  • (For Cray systems only) Output of module list:
@jhh67 jhh67 added the type: Bug label Feb 4, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant