Vraag


Acties:
  • 0 Henk 'm!

  • Mijzelf
  • Registratie: September 2004
  • Niet online
Recent heb ik een SSD (Crucial BX200) in mijn laptop (Dell Mini 1010, Atom Z530, Poulsbo chipset) gebouwd. Aangezien de chipset alleen PATA poorten heeft, zit er blijkbaar PATA naar SATA chip in. De SSD komt dan ook niet tot zijn recht, met 60MB/sec lezen en 53MB/sec schrijven. Maar meer mag je mogelijk niet verwachten van een PATA 100 poort.

Mijn echte probleem zit hem in de boot. Om de een of andere reden is hij 20 seconden bezig om die schijf te detecteren:
[    3.027633] pata_sch 0000:00:1f.1: version 0.2
[    3.029363] scsi host0: pata_sch
[    3.037898] scsi host1: pata_sch
[    3.046083] ata1: PATA max UDMA/100 cmd 0x1f0 ctl 0x3f6 bmdma 0x1810 irq 14
[    3.054199] ata2: PATA max UDMA/100 cmd 0x170 ctl 0x376 bmdma 0x1818 irq 15
[    3.216503] ata1.00: ATA-9: CT240BX200SSD1, MU01.4, max UDMA/133
[    3.224357] ata1.00: 468862128 sectors, multi 2: LBA48 NCQ (depth 0/32)
[    8.232458] ata1.00: qc timeout (cmd 0x47)
[    8.240458] ata1.00: READ LOG DMA EXT failed, trying unqueued
[    8.248367] ata1.00: failed to get Identify Device Data, Emask 0x40
[    8.248394] ata1.00: failed to set xfermode (err_mask=0x40)
[   13.305395] ata1: link is slow to respond, please be patient (ready=0)
[   18.260385] ata1: device not ready (errno=-16), forcing hardreset
[   18.419612] ata1.00: NODEV after polling detection
[   18.419621] ata1.00: revalidation failed (errno=-2)
[   23.576163] ata1.00: configured for UDMA/100
[   23.584453] scsi 0:0:0:0: Direct-Access     ATA      CT240BX200SSD1   .4   PQ: 0 ANSI: 5
[   23.593266] sd 0:0:0:0: [sda] 468862128 512-byte logical blocks: (240 GB/223 GiB)
[   23.601461] sd 0:0:0:0: [sda] 4096-byte physical blocks
[   23.609807] sd 0:0:0:0: [sda] Write Protect is off
[   23.617797] sd 0:0:0:0: [sda] Mode Sense: 00 3a 00 00
[   23.617878] sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
[   23.636101]  sda: sda1 sda2 < sda5 sda6 >
[   23.645772] sd 0:0:0:0: [sda] Attached SCSI disk
[   23.804327] Uniform Multi-Platform E-IDE driver
Weet iemand wat hier gebeurd, en hoe ik het oplos? Dat zal neem ik aan met een boot parameter moeten, of met een kernel patch.

Op die laptop staat ook nog een Windows XP installatie. Voor zover ik kan nagaan heeft die dit probleem niet, of in mindere mate. In elk geval boot die sneller.

Alle reacties


Acties:
  • 0 Henk 'm!

  • Hero of Time
  • Registratie: Oktober 2004
  • Laatst online: 19:28

Hero of Time

Moderator LNX

There is only one Legend

Bij het opstarten wordt wel direct het aantal sectoren gevonden, dus dat is an sich wel goed snel. Ik denk dat het doorheeft dat 't een SATA schijf is het probeert te proben als een sata schijf en dat mislukt, waardoor het moet terugvallen op oudere methoden. Heb je nog de oude pata schijf, of wat er ook maar in zat? Test het dan daar eens mee wat je in je boot log krijgt.

Heb je zelf nog iets gevonden voor de mogelijke oplossing die je aandraag (kernel parameter)?

Commandline FTW | Tweakt met mate


Acties:
  • 0 Henk 'm!

  • Mijzelf
  • Registratie: September 2004
  • Niet online
De oude schijf was ook al een SATA. Hier de corresponderende log met de oude schijf:
[    3.018515] pata_sch 0000:00:1f.1: version 0.2
[    3.020198] scsi host0: pata_sch
[    3.028615] scsi host1: pata_sch
[    3.036648] ata1: PATA max UDMA/100 cmd 0x1f0 ctl 0x3f6 bmdma 0x1810 irq 14
[    3.044628] ata2: PATA max UDMA/100 cmd 0x170 ctl 0x376 bmdma 0x1818 irq 15
[    3.249103] ata1.00: ATA-8: WDC WD1600BEVT-75ZCT2, 11.01A11, max UDMA/133
[    3.257064] ata1.00: 312581808 sectors, multi 16: LBA48 NCQ (depth 0/32)
[    3.271962] ata1.00: configured for UDMA/100
[    3.280141] scsi 0:0:0:0: Direct-Access     ATA      WDC WD1600BEVT-7 1A11 PQ: 0 ANSI: 5
[    3.288769] sd 0:0:0:0: [sda] 312581808 512-byte logical blocks: (160 GB/149 GiB)
[    3.297173] sd 0:0:0:0: [sda] Write Protect is off
[    3.305104] sd 0:0:0:0: [sda] Mode Sense: 00 3a 00 00
[    3.305182] sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
[    3.363172]  sda: sda1 sda2 < sda5 sda6 >
[    3.372850] sd 0:0:0:0: [sda] Attached SCSI disk
[    3.490231] Uniform Multi-Platform E-IDE driver
Hero of Time schreef op zaterdag 16 januari 2016 @ 12:12:
Heb je zelf nog iets gevonden voor de mogelijke oplossing die je aandraag (kernel parameter)?
Ik heb hier een aantal 'libata' parameters gevonden, maar daarvan hebben een aantal weer argumenten. Om het juiste argument te kiezen moet ik weten wat er nou eigenlijk misgaat. Ik lees dat niet in de kernel log, en ik hoop dat iemand anders dat wel ziet.

Acties:
  • 0 Henk 'm!

  • Hero of Time
  • Registratie: Oktober 2004
  • Laatst online: 19:28

Hero of Time

Moderator LNX

There is only one Legend

Nou, je hebt wel een aanknopingspunt:
[    8.232458] ata1.00: qc timeout (cmd 0x47)
[    8.240458] ata1.00: READ LOG DMA EXT failed, trying unqueued
[    8.248367] ata1.00: failed to get Identify Device Data, Emask 0x40
[    8.248394] ata1.00: failed to set xfermode (err_mask=0x40)

Iets gaat niet goed met qc, mogelijk dat 't bij een SSD niet meer aanwezig is.

Commandline FTW | Tweakt met mate


Acties:
  • 0 Henk 'm!

  • Mijzelf
  • Registratie: September 2004
  • Niet online
Niet meer aanwezig is? Ik vond ata_qc_timeout — Handle timeout of queued command . Dus mogelijk ncq. Maar 'libata.force=noncq' geeft
[    3.215349] ata1.00: FORCE: horkage modified (noncq)
[    3.223266] ata1.00: ATA-9: CT240BX200SSD1, MU01.4, max UDMA/133
[    3.231136] ata1.00: 468862128 sectors, multi 2: LBA48 NCQ (not used)
[    8.239416] ata1.00: qc timeout (cmd 0x47)
[    8.247453] ata1.00: READ LOG DMA EXT failed, trying unqueued

'libata.force=udma100' geeft
[    3.052858] ata2: PATA max UDMA/100 cmd 0x170 ctl 0x376 bmdma 0x1818 irq 15
[    3.214855] ata1.00: ATA-9: CT240BX200SSD1, MU01.4, max UDMA/133
[    3.222716] ata1.00: 468862128 sectors, multi 2: LBA48 NCQ (depth 0/32)
[    8.230350] ata1.00: qc timeout (cmd 0x47)
[    8.238399] ata1.00: READ LOG DMA EXT failed, trying unqueued
[    8.246343] ata1.00: failed to get Identify Device Data, Emask 0x40
[    8.246365] ata1.00: FORCE: xfer_mask set to udma100
[    8.254203] ata1.00: failed to set xfermode (err_mask=0x40)
[   13.311317] ata1: link is slow to respond, please be patient (ready=0)
[   18.266382] ata1: device not ready (errno=-16), forcing hardreset
[   18.425612] ata1.00: NODEV after polling detection
[   18.425625] ata1.00: revalidation failed (errno=-2)
[   23.580662] ata1.00: FORCE: xfer_mask set to udma100
[   23.589899] ata1.00: configured for UDMA/100
Dus blijkbaar treed het probleem al op voordat de transferrate gezet is.

Als ik dit lees:
[   18.260385] ata1: device not ready (errno=-16), forcing hardreset
[   18.419612] ata1.00: NODEV after polling detection
[   18.419621] ata1.00: revalidation failed (errno=-2)
[   23.576163] ata1.00: configured for UDMA/100
heb ik de indruk dat libata iets probeert te doen, daar niet in slaagt, daarom een harde reset uivoert, vervolgens lukt het nog niet (revalidation failed) en daarom gewoon doorgaan op hoop van zegen. Het zou mooi zijn als je dat 'iets' gewoon uit kon zetten.