<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Mon, Mar 27, 2017 at 10:20 PM, Chris Murphy <span dir="ltr"><<a href="mailto:lists@colorremedies.com" target="_blank">lists@colorremedies.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Ok so the dirty file system problem always happens with all pk offline<br>
updates on Fedora using either ext4 or XFS with any layout; and it's<br>
easy to reproduce.<br>
<br>
1. Clean install any version of Fedora, defaults.<br>
2. Once Gnome Software gives notification of updates, Restart & Install<br>
3. System reboots, updates are applied, system reboots again.<br>
4. Now check the journal filtering for 'fsck' and you'll see it<br>
replayed the journals; if using XFS check the filter for "XFS" and<br>
you'll see the kernel did journal replace at mount time.<br>
<br>
Basically systemd is rebooting even though the remoun-ro fails<br>
multiple times, due to plymouth running off root fs and being exempt<br>
from being killed, and then reboots anyway, leaving the file system<br>
dirty. So it seems like a flaw to me to allow an indefinite exemption<br>
from killing a process that's holding a volume rw, preventing<br>
remount-ro before reboot.<br>
<br>
So there's a risk that in other configurations this makes either ext4<br>
and XFS systems unbootable following an offline update.</blockquote><div><br></div><div>So on the one hand it's probably a Plymouth bug or misconfiguration (it shouldn't mark itself exempt unless it runs off an in-memory initramfs).</div><div><br></div><div>But on the other hand, are filesystems really so fragile? Even though it's after a system upgrade (which updated many files), I was sure systemd at least tries to *sync* all remaining filesystems before reboot, doesn't it?</div></div><div><br></div>-- <br><div class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr">Mantas Mikulėnas <<a href="mailto:grawity@gmail.com" target="_blank">grawity@gmail.com</a>></div></div>
</div></div>