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

Persistent storage #2

Open
wants to merge 40 commits into
base: master
Choose a base branch
from
Open

Persistent storage #2

wants to merge 40 commits into from

Conversation

squimrel
Copy link
Owner

No description provided.

@squimrel squimrel force-pushed the persistent-storage branch 3 times, most recently from 47f26d4 to 5a671da Compare July 10, 2017 21:05
@squimrel squimrel force-pushed the persistent-storage branch 2 times, most recently from 2c57c18 to 10fb6d6 Compare July 11, 2017 02:44
@squimrel squimrel force-pushed the persistent-storage branch 5 times, most recently from 5caf975 to 11ab855 Compare July 24, 2017 08:23
@squimrel squimrel force-pushed the persistent-storage branch 7 times, most recently from 2be5e33 to 1ed1642 Compare August 3, 2017 07:49
@squimrel squimrel force-pushed the persistent-storage branch 4 times, most recently from a4f6424 to fe5d0a5 Compare August 18, 2017 03:02
* Only use platform specific code for drive operations.
* Break windows and mac builds.
* Make linux code obey the new layout.
* Add mount option.
Interrupt the control-flow using exceptions so that there's no need to
check if there was an error after each function call.

This is important because otherwise future code would get very messy.

Always return 1 if an error occurred.
* Guard Drive::open.
* Change Drive::addPartition signature to a format that doesn't look
very portable.
* Make it possible to modify configuration files on the image.
* Try to add overlay partition and file. (Doesn't work yet.)
* Temporarly work around udisks.
* Prepare to do this on Mac and Windows too.
* For all supported platforms.
* Restructure.
* Build mac dependencies.
to get a better overview of process interaction.

Break progress bar.
* Deduplicate a lot of code.
* Report percentage * 100 from helper.
* Never pass temporary path to helper because it stopped dealing with
those some time ago.
* Fix udisks call.
so the user doesn't wonder why it shows him that it has finished writing
when it hasn't.
The bigger issue is that bytes written to the kernel cache report as
being written but actually aren't yet flushed to the disk.
There are ways to avoid this issue but it has a huge impact on the
actual writing speed so it's really not worth fixing.
instead of an invokable method that acts as a setter.
except if it's the drive was created using Windows.
Zero out only the first 64kB of the overlay file because that's
what dracut does when it resets the overlay.
because otherwise it'll be stuck at 10% forever for large files.
With the msdn writeFile one would have to maintain the seek position
with the so called overlap parameter which is a pain since then a
Drive::write call would have to lseek to find the current position and
then update it again for third party programs that use ::write anayways.
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

Successfully merging this pull request may close these issues.

1 participant