Bug 22802 - Freeze in raid condition (sync write)
Summary: Freeze in raid condition (sync write)
Status: RESOLVED OBSOLETE
Alias: None
Product: IO/Storage
Classification: Unclassified
Component: Other (show other bugs)
Hardware: All Linux
: P1 normal
Assignee: io_other
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-11-12 15:41 UTC by alpha_one_x86
Modified: 2012-08-14 12:44 UTC (History)
1 user (show)

See Also:
Kernel Version:
Subsystem:
Regression: No
Bisected commit-id:


Attachments

Description alpha_one_x86 2010-11-12 15:41:32 UTC
Hello, I have 6x Hdd as raid6, with 8GB of memory. I have hdd with problem reported via smart:
Raw_Read_Error_Rate     0x002f   195   195   051    Pre-fail  Always       -       6786
My raid:
md2 : active raid5 sdf2[3] sde2[2] sdd2[5] sdc2[0] sdb2[1] sda2[4]
      97655680 blocks level 5, 64k chunk, algorithm 2 [6/6] [UUUUUU]
md3 : active raid5 sdf3[3] sde3[2] sdd3[5] sdc3[0] sdb3[1] sda3[4]
      24413440 blocks level 5, 64k chunk, algorithm 2 [6/6] [UUUUUU]
md4 : active raid6 sdf4[3] sde4[2] sdd4[5] sdc4[0] sdb4[1] sda4[4]
      5762507008 blocks level 6, 64k chunk, algorithm 2 [6/6] [UUUUUU]
The actual behavior:
Freeze when a application do read (the same file, normally in cache)/write. All seem be synchron.
Desired behavior:
Never freeze.
How:
Write into buffer and keep running the application, and use the cache before raid access or without this blocking bug.
I don't know if the kernel cache is for IO (type block), or file then before the VFS, or both. But this last method should be the best. Because hard reboot erase all buffer and application, then freeze the application or not, the data is in memory and will be lost, but multiple write into the same file at the same place can be grouped in one write, same for near place.

That's highlight other problem:
Gentoo emerge systeme do this kind of manupulation:
1) write file/folder into /tmp (source of software)
2) compile it (mixed read/write)
3) remove it
All comments about gentoo say that's /tmp mounted as tmpfs is really more fast than ext4/btrfs/... in some case like me where all file manipulation should be leave in memory.
I don't know if in this case it wait the buffer is writing before resend this content or directly send at the first read access the buffer content.

I have try touch all key into /sys ... I can do test. But if no have buffer/cache before VFS should be easy way to optimize linux (and do some operation like keep socket in memory).

Note You need to log in before you can comment on or make changes to this bug.