fsck.reiserfs hangs the system at boot for 5 secs per partition

Bug #67301 reported by Aaron Whitehouse
34
This bug affects 2 people
Affects Status Importance Assigned to Milestone
reiserfsprogs (Ubuntu)
Fix Released
Undecided
Unassigned

Bug Description

I am running a fully updated Edgy (RC). I have always had a Reiser partition for my / partition and my /home partition. I noticed, when doing a bootchart

https://wiki.ubuntu.com/LaptopTestingTeam/DellInspiron510m?action=AttachFile&do=get&target=bootchart-edgy-20060920-7.png

that there was 5 seconds where there was no CPU or I/O at the same time when fsck.reiserfs was meant to be running.

I just reinstalled and changed my root partition to ext3 instead of Reiser and one of the 5 second stalls is gone. My new bootchart can be found here:

https://wiki.ubuntu.com/LaptopTestingTeam/DellInspiron510m?action=AttachFile&do=get&target=bootchart-edgy-RC-ext3.png

As you can see, there is now only one 5 second stall (I assume for my Home partition, which is still Reiserfs) instead of two. Consequently, my machine boots 5 seconds faster.

I like Reiserfs, but if it is going to cost me an extra 10 seconds each boot (25%!) then I will change to ext3.

Revision history for this message
Aaron Whitehouse (aaron-whitehouse) wrote :

Note that this didn't seem to occur on Dapper. Here is a link to the bootchart for my Dapper install:
https://wiki.ubuntu.com/BootCharting?action=AttachFile&do=get&target=dell-inspiron-510m-20060715.png

Revision history for this message
x-Na (pekka-tiittanen-pp) wrote :

I'm having the same problem with my three (3) reiserfs partitions. 6-7 second stall on every boot. Runs fsck.reiserfs for every partition on every boot.

Revision history for this message
Aaron Whitehouse (aaron-whitehouse) wrote :

Another machine experiencing the same issue.

Revision history for this message
stef70 (stephane-chauveau-central) wrote :

Same for me.

I looked at the source code and in fsck/main.c, I found a strange call of fsck_sleep() just before quitting.

All that function is doing is fork and let the child process sleep for 5s before returning.

The only comment is "Do not allow buffers to be flushed after finishing to avoid another bitmap reading on mounting."

I believe that this is an ugly trick to 'speed-up' the mount that usually follows the check. The sleeping background process is supposed to keep the header of the reiser in memory. If I am right, removing the call to fsck_sleep() should be safe. Any volunteer ? :-) OK! I'll try. I have nothing useful on that partition anyways.

A goggle search on fsck_sleep does not turn a lot except that the call was removed in opensuse 10.2.

Revision history for this message
Andreas Moog (ampelbein) wrote :

Thank you for taking the time to report this bug and helping to make Ubuntu better. You reported this bug a while ago and there hasn't been any activity in it recently. We were wondering is this still an issue for you? Can you try with latest Ubuntu release? Thanks in advance.

Changed in reiserfsprogs:
status: New → Incomplete
Revision history for this message
Glyphobet (glyphobet) wrote :

I can confirm that this issue still exists as of Ubuntu 8.04. See attached bootchart for evidence.

Andreas Moog (ampelbein)
Changed in reiserfsprogs:
status: Incomplete → Confirmed
Revision history for this message
slapper (miltsatsakis) wrote :

in My ubuntu Hardy installation i have the same issue...every time the machine boot check the reiserfs partition..is there any option too disable it??

Revision history for this message
grauscho (grauscho) wrote :

I can confirm that the problem still exists with Intrepid.

The following message appears *twice* in /var/log/fsck/checkfs:

Reiserfs super block in block 16 on 0x803 of format 3.6 with standard journal
Blocks (total/free): 4419952/2196275 by 4096 bytes
Filesystem is clean

The ReiserFS partition is not my root partition.

Attached is the bootchart output. Please note the complete inactivity of the system between seconds 35 and 40.

This behavior is extremely annoying.

Revision history for this message
Giovanni Bajo (giovannibajo) wrote :

I have exactly the same problem. I don't attach my bootchart because it does not offer any further evidence over Thomas'. The only difference here is that I have 2 reiserfs partitions so I'm wasting a whopping 10 seconds during my boot...

I really hope Ubuntu developers can integrate the OpenSuse patch to ReiserFS:
http://www.spinics.net/lists/reiserfs-devel/msg00678.html

Revision history for this message
Giovanni Bajo (giovannibajo) wrote :

FWIW, I downloaded Ubuntu's reiserfsprogs source (apt-get source reiserfsprogs), applied the patch above, compiled it (./configure && make) and manually installed reiserfsck (sudo cp fsck/reiserfsck /sbin/). Then I rebooted and the 10 seconds of delay were gone: my boot is now 10 seconds faster.

So I can confirm that the very simple patch above, that simply removes a sleep of 5 seconds, works as expected for me. I hope this patch can be integrated into ubuntu.

[[[ I'll notice that ReiserFS is still the worst offender in my boot time: it still takes around 20 seconds to mount (thought it's now full I/O time, the idle is gone). I think this is because of the scan check performed each time the drive is mounted. This is handled by another, more invasive, patch here:
http://www.spinics.net/lists/reiserfs-devel/msg00682.html
But this is for another day (and another bug). ]]]

Revision history for this message
Felix Zielcke (fzielcke) wrote :

This has been fixed in the new upstream version I uploaded to Debian and which has reached karmic now.
I didn't bother to look at the Launchpad bugs but seems like I should have done so :)
The 5 second sleep has just been removed.

Changed in reiserfsprogs (Ubuntu):
status: Confirmed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.