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

Missing flushes #13

Open
hgorjiara opened this issue Nov 25, 2020 · 1 comment
Open

Missing flushes #13

hgorjiara opened this issue Nov 25, 2020 · 1 comment

Comments

@hgorjiara
Copy link

hgorjiara commented Nov 25, 2020

Hi @deukyeon ,

Recently, we were working on a test framework to identify bugs in frameworks that use persistent memory. We used our tool to check FAST_FAIR benchmark and we were able to find some bugs in them. More descriptions about these bugs and the corresponding fixes are listed below. We fixed these bugs in our local repository, but I thought maybe you are interested in fixing them in your repository as well. Thank you for sharing your work with the community. It helped us a lot to develop and test our tool. Feel free to reach out and ask us any questions about the fixes.

  1. Missing flush in btree constructor(btree.h:824 in constructor of btree() ):
    clflush((char*)root, sizeof(page));

  2. Missing flush in btree constructor (btree.h:825 in the constructor of btree() ):
    clflush((char*)this, sizeof(btree), false, true);

@deukyeon
Copy link
Contributor

Hi @hgorjiara,

Thank you for contributing to our work. That makes sense. I fixed codes (https://github.com/DICL/FAST_FAIR/blob/issue-13/single/src/btree.h#L823).
Hoping your work is going well.

@Skian12 Why don't you add codes to persist page and btree objects in the btree constructor for the pmdk version?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants