Bug 4785 - Errors when using firewire disk on ppc32
Summary: Errors when using firewire disk on ppc32
Status: REJECTED UNREPRODUCIBLE
Alias: None
Product: Drivers
Classification: Unclassified
Component: IEEE1394 (show other bugs)
Hardware: i386 Linux
: P2 normal
Assignee: Ben Collins
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2005-06-23 08:55 UTC by Anton Blanchard
Modified: 2005-08-04 00:13 UTC (History)
2 users (show)

See Also:
Kernel Version: 2.6.12-git (20050623)
Subsystem:
Regression: ---
Bisected commit-id:


Attachments

Description Anton Blanchard 2005-06-23 08:55:20 UTC
Distribution:
Debian Unstable

Hardware Environment:
ppc32 - Aluminum Powerbook

Problem description:
While trying to mount a firewire disk with ext3 on top of dm-crypt the machine
hung for periods and the filesystem was finally mounted read only

ieee1394: Error parsing configrom for node 0-00:1023
ieee1394: Node changed: 0-00:1023 -> 0-01:1023
ieee1394: Node added: ID:BUS[0-00:1023]  GUID[0001d200e0131db8]
scsi0 : SCSI emulation for IEEE-1394 SBP-2 Devices
ieee1394: sbp2: Logged into SBP-2 device
ieee1394: Node 0-00:1023: Max speed [S400] - Max payload [2048]
  Vendor: IC25N040  Model: ATMR04-0          Rev:
  Type:   Unknown                            ANSI SCSI revision: 06
ieee1394: Node changed: 0-01:1023 -> 0-00:1023
ieee1394: Node suspended: ID:BUS[0-00:1023]  GUID[0001d200e0131db8]
ieee1394: Error parsing configrom for node 0-00:1023
ieee1394: Node changed: 0-00:1023 -> 0-01:1023
ieee1394: Node resumed: ID:BUS[0-00:1023]  GUID[0001d200e0131db8]
scsi1 : SCSI emulation for IEEE-1394 SBP-2 Devices
ieee1394: sbp2: Logged into SBP-2 device
ieee1394: Node 0-00:1023: Max speed [S400] - Max payload [2048]
  Vendor: IC25N040  Model: ATMR04-0          Rev:
  Type:   Unknown                            ANSI SCSI revision: 06
SCSI device sda: 78140160 512-byte hdwr sectors (40008 MB)
SCSI device sda: drive cache: write back
SCSI device sda: 78140160 512-byte hdwr sectors (40008 MB)
SCSI device sda: drive cache: write back
 sda: sda1
Attached scsi disk sda at scsi1, channel 0, id 0, lun 0
kjournald starting.  Commit interval 5 seconds
EXT3 FS on dm-0, internal journal
EXT3-fs: mounted filesystem with ordered data mode.
ieee1394: sbp2: sbp2util_node_write_no_wait failed
ieee1394: sbp2: sbp2util_node_write_no_wait failed
ieee1394: sbp2: sbp2util_node_write_no_wait failed
ieee1394: sbp2: sbp2util_node_write_no_wait failed
ieee1394: sbp2: sbp2util_node_write_no_wait failed
ieee1394: sbp2: sbp2util_node_write_no_wait failed
ieee1394: sbp2: sbp2util_node_write_no_wait failed
ieee1394: sbp2: sbp2util_node_write_no_wait failed
ieee1394: sbp2: sbp2util_node_write_no_wait failed
ieee1394: sbp2: aborting sbp2 command
scsi1 : destination target 0, lun 0
        command: cdb[0]=0x2a: 2a 00 00 00 1b 38 00 00 10 00
ieee1394: sbp2: aborting sbp2 command
scsi1 : destination target 0, lun 0
        command: cdb[0]=0x2a: 2a 00 00 00 1b 48 00 00 08 00
ieee1394: sbp2: aborting sbp2 command
scsi1 : destination target 0, lun 0
        command: cdb[0]=0x2a: 2a 00 00 00 1b 50 00 00 10 00
ieee1394: sbp2: aborting sbp2 command
scsi1 : destination target 0, lun 0
        command: cdb[0]=0x2a: 2a 00 00 00 1b 60 00 00 f8 00
ieee1394: sbp2: aborting sbp2 command
scsi1 : destination target 0, lun 0
        command: cdb[0]=0x2a: 2a 00 00 00 1c 58 00 00 f8 00
ieee1394: sbp2: aborting sbp2 command
scsi1 : destination target 0, lun 0
        command: cdb[0]=0x2a: 2a 00 00 00 1d 50 00 00 f8 00
ieee1394: sbp2: aborting sbp2 command
scsi1 : destination target 0, lun 0
        command: cdb[0]=0x2a: 2a 00 00 00 1e 48 00 00 08 00
ieee1394: sbp2: aborting sbp2 command
scsi1 : destination target 0, lun 0
        command: cdb[0]=0x2a: 2a 00 00 00 1e 50 00 00 f8 00
ieee1394: sbp2: sbp2util_node_write_no_wait failed
ieee1394: sbp2: sbp2util_node_write_no_wait failed
ieee1394: sbp2: sbp2util_node_write_no_wait failed
ieee1394: sbp2: sbp2util_node_write_no_wait failed
ieee1394: sbp2: sbp2util_node_write_no_wait failed
ieee1394: sbp2: sbp2util_node_write_no_wait failed
ieee1394: sbp2: sbp2util_node_write_no_wait failed
ieee1394: sbp2: aborting sbp2 command
scsi1 : destination target 0, lun 0
        command: cdb[0]=0x2a: 2a 00 00 00 5e 08 00 00 08 00
ieee1394: sbp2: aborting sbp2 command
scsi1 : destination target 0, lun 0
        command: cdb[0]=0x2a: 2a 00 00 00 5e 10 00 00 08 00
ieee1394: sbp2: aborting sbp2 command
scsi1 : destination target 0, lun 0
        command: cdb[0]=0x2a: 2a 00 00 00 5e 18 00 00 10 00
ieee1394: sbp2: aborting sbp2 command
scsi1 : destination target 0, lun 0
        command: cdb[0]=0x2a: 2a 00 00 00 5e 28 00 00 f8 00
ieee1394: sbp2: aborting sbp2 command
scsi1 : destination target 0, lun 0
        command: cdb[0]=0x2a: 2a 00 00 00 5f 20 00 00 f8 00
ieee1394: sbp2: aborting sbp2 command
scsi1 : destination target 0, lun 0
        command: cdb[0]=0x2a: 2a 00 00 00 60 18 00 00 c8 00
ieee1394: sbp2: aborting sbp2 command
scsi1 : destination target 0, lun 0
        command: cdb[0]=0x2a: 2a 00 00 00 60 e0 00 00 f8 00
ieee1394: sbp2: aborting sbp2 command
scsi1 : destination target 0, lun 0
        command: cdb[0]=0x2a: 2a 00 00 00 61 d8 00 00 f8 00
ieee1394: sbp2: sbp2util_node_write_no_wait failed
ieee1394: sbp2: sbp2util_node_write_no_wait failed
ieee1394: sbp2: sbp2util_node_write_no_wait failed
ieee1394: sbp2: sbp2util_node_write_no_wait failed
ieee1394: sbp2: sbp2util_node_write_no_wait failed
ieee1394: sbp2: sbp2util_node_write_no_wait failed
ieee1394: sbp2: sbp2util_node_write_no_wait failed
ieee1394: sbp2: aborting sbp2 command
scsi1 : destination target 0, lun 0
        command: cdb[0]=0x2a: 2a 00 00 00 88 b0 00 00 28 00
ieee1394: sbp2: aborting sbp2 command
scsi1 : destination target 0, lun 0
        command: cdb[0]=0x2a: 2a 00 00 00 88 d8 00 00 08 00
ieee1394: sbp2: aborting sbp2 command
scsi1 : destination target 0, lun 0
        command: cdb[0]=0x2a: 2a 00 00 00 88 e0 00 00 08 00
ieee1394: sbp2: aborting sbp2 command
scsi1 : destination target 0, lun 0
        command: cdb[0]=0x2a: 2a 00 00 00 88 e8 00 00 f8 00
ieee1394: sbp2: aborting sbp2 command
scsi1 : destination target 0, lun 0
        command: cdb[0]=0x2a: 2a 00 00 00 89 e0 00 00 f8 00
ieee1394: sbp2: aborting sbp2 command
scsi1 : destination target 0, lun 0
        command: cdb[0]=0x2a: 2a 00 00 00 8a d8 00 00 f0 00
EXT3-fs warning (device dm-0): empty_dir: bad directory (dir #2551556) - no `.'
or `..'
EXT3-fs warning (device dm-0): empty_dir: bad directory (dir #2551558) - no `.'
or `..'
EXT3-fs warning (device dm-0): empty_dir: bad directory (dir #2551559) - no `.'
or `..'
EXT3-fs unexpected failure: !buffer_revoked(bh);
inconsistent data on disk
ext3_forget: aborting transaction: IO failure in __ext3_journal_revoke
ext3_abort called.
EXT3-fs error (device dm-0): ext3_forget: error -5 when attempting revoke
Remounting filesystem read-only
Aborting journal on device dm-0.
EXT3-fs error (device dm-0) in ext3_free_blocks_sb: Journal has aborted
EXT3-fs error (device dm-0) in ext3_reserve_inode_write: Journal has aborted
EXT3-fs error (device dm-0) in ext3_truncate: IO failure
EXT3-fs error (device dm-0) in ext3_reserve_inode_write: Journal has aborted
EXT3-fs error (device dm-0) in ext3_orphan_del: Journal has aborted
EXT3-fs error (device dm-0) in ext3_reserve_inode_write: Journal has aborted
EXT3-fs error (device dm-0) in ext3_delete_inode: IO failure
__journal_remove_journal_head: freeing b_committed_data
__journal_remove_journal_head: freeing b_committed_data
__journal_remove_journal_head: freeing b_committed_data
__journal_remove_journal_head: freeing b_committed_data
__journal_remove_journal_head: freeing b_committed_data
Comment 1 Andrew Morton 2005-07-28 22:24:38 UTC
Is this still happening in 2.6.13-rc4?

Thanks.
Comment 2 Stefan Richter 2005-07-31 23:52:30 UTC
Does one of the hints given at http://www.linux1394.org/faq.php#sbp2abort help?
Comment 3 Anton Blanchard 2005-08-03 09:19:34 UTC
Thanks for the suggestions. It looks like current -git is working fine. If I can
recreate I'll reopen
Comment 4 Andrew Morton 2005-08-03 19:50:58 UTC
<looks at the webpage>.  Why on earth does the use of the CFQ I/O
scheduler help?
Comment 5 Stefan Richter 2005-08-04 00:13:09 UTC
How exactly the CFQ scheduler helps is unknown. It helped only in _some_ cases
of "aborting sbp2 command syndrom" anyway. Keep in mind that there are three
fundamentally different classes of causes for the syndrom, like the FAQ says.

I have two hypotheses how the CFQ scheduler might make a difference: a) It might
enqueue commands in a way that is easier to process for some firmwares of SBP-2
bridges. b) It may mask a weakness or bug in sbp2 that is somehow related to I/O
latency. I have even seen once that reducing the 1394 bus arbitration gaps
stopped a series of "aborting sbp2 command"s.

Back to Anton's case: It seems very unlikely to me that the two suggestions of
the FAQ which modify the behaviour of the Linux initiator (serialized I/O, CFQ
scheduler) help in a situation where "aborting sbp2 command" appears together
with "sbp2util_node_write_no_wait failed". But there are other suggestions in
the FAQ that might apply.

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