Giter VIP home page Giter VIP logo

Comments (4)

pgreenland avatar pgreenland commented on July 17, 2024 1

Thanks for replying. Thats exactly what I was thinking of doing! A conservative value that allows for a bunch of bad blocks in the future :-)

from dhara.

mirkomatontispire avatar mirkomatontispire commented on July 17, 2024

Hello there, some updates:

We manage to isolate the issue to dhara_journal_capacity() in particular

const dhara_block_t max_bad = j->bb_last > j->bb_current ?
		j->bb_last : j->bb_current;

For some reasons max_bad is 32 after the first format and then it goes to 0 after we do some writes and we experience the issue afore mentioned.

from dhara.

pgreenland avatar pgreenland commented on July 17, 2024

Just hit a very similar issue to this myself....my disk appeared to get larger after writing some data.

Following your hint above, it seems this behaviour may be normal.

When initialising a map we see a call flow dhara_map_init -> dhara_journal_init -> reset_journal

Inside there we prepare the last and current bad blocks:

/* We don't yet have a bad block estimate, so make a
 * conservative guess.
 */
j->epoch = 0;
j->bb_last = j->nand->num_blocks >> 6;
j->bb_current = 0;

Looks like it may make a guess until it knows. which makes me think as well as going up, it could go back down in the future as blocks fail. Which is slightly more worrying.

Did you find a solution?

Thanks,

Phil

from dhara.

mirkomatontispire avatar mirkomatontispire commented on July 17, 2024

Hey Phil,

Not a solution but as a patch you could just assign a fixed sector count and relay on that. I know it's not the best, but if you know exactly your use case and do sporadic writes it's not a big issue

from dhara.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.