RE: 2.6.23.1 - sata_mv (7042) hang with large file operations

Morrison, Tom
2007-11-15T16:26:22Z

Additional information - the ~file size this is caused
is somewhere close to 260Mbytesfiles.

If I create a ~260Mbytes file - my program finishes creating
the file - but ~5 seconds later (I timed this by hitting enter
on the console every second after completion of the command
that should have done a fsync of the created file before exiting)...
It hangs...

I did a little playing around with /proc/sys/dev/scsi/logging_level
(set to 0x7) - and it seems that the kernel/box locks up after
this line:

>> scsi_add_timer: scmd: efca83c0, time: 7500, (c0160660)
>> scsi_delete_timer: scmd: efca83c0, rtn: 1
>> scsi_add_timer: scmd: efca8840, time: 7500, (c0160660)

Further analysis (setting logging level to 65535 (0xFFFF)
Has the following behavior down low) -

>> scsi_add_timer: scmd: efca8960, time: 7500, (c0160660)
>> sd 0:0:0:0: [sda] Send: 0xefca8960
>> sd 0:0:0:0: [sda] CDB: Write(10): 2a 00 00 47 92 27 00 01 48 00
>> buffer = 0xc0553040, bufflen = 167936, done = 0xc016b194,
queuecommand
0xc017ed34
>> leaving scsi_dispatch_cmnd()
>> scsi_delete_timer: scmd: efca8960, rtn: 1
>> sd 0:0:0:0: [sda] Done: 0xefca8960 SUCCESS
>> sd 0:0:0:0: [sda] Result: hostbyte=DID_OK
driverbyte=DRIVER_OK,SUGGEST_OK
>> sd 0:0:0:0: [sda] CDB: Write(10): 2a 00 00 47 92 27 00 01 48 00
>> sd 0:0:0:0: [sda] scsi host busy 1 failed 0
>> sd 0:0:0:0: Notifying upper driver of completion (result 0)
>>
>> scsi_add_timer: scmd: efca82a0, time: 7500, (c0160660)
>> sd 0:0:0:0: [sda] Send: 0xefca82a0
>> sd 0:0:0:0: [sda] CDB: Write(10): 2a 00 00 47 93 6f 00 02 40 00
>> buffer = 0xef5734c0, bufflen = 294912, done = 0xc016b194,
queuecommand
0xc017ed34
>> leaving scsi_dispatch_cmnd()

Nothing more - it hangs!

This is really a nasty problem!!!!