Skip to contentSkip to conversation

Very slow read syscall

2.5.69-mm2 Andrew Morton 1 participant 1 message May 7, 2003 1 message not in the archive

lore
Share & tools
lore

A message that is not in the archive (sent off-list or not yet received): [email protected]

#1 lore raw
Quoted 10 lines · Thomas Schlichter

Hi,

I've noticed that the read syscall is very slow with 2.5.69-mm2 compared to 2.5.69-bk2. I especially could 'feel' it while using kmail. When kmail is closed and it compresses its Mail folder I could measure it.

The straces and oprofiles for this action are attached for the two kernel versions mentioned above.

Quoted 8 lines

As you can see the time for closing kmail increased from about 2 seconds to about 155 seconds. A read system call needs 931usecs instead of 12usecs... The profile shows that the most time is spent in __copy_to_user_ll. As CONFIG_X86_WP_WORKS_OK is defined in my config this function should be the same in -mm2 and -bk2, so it seems it simply is called more often...

I am using the anticipatory scheduling elevator, but it 'feels' the same with CFQ or DL. But I can mesure it if you want...

This is due to a bug in kmail, and the reiserfs_file_write patch.

One thing which that patch does is to increase the stat.st_blksize hint which reiserfs provides to applications. By a lot - from 4k to 128k I think.

Problem is, some KDE apps see that hint and then promptly balls it up. They read 128k at offset 0, then 128k at offset 4k, then 128k at offset 8k, etc.

Apparently, upgrading kmail will fix it.