Kernel: ad0: FAILURE - READ_DMA status=51 <ready,dsc,error>error=10</ready,dsc,error>



  • Постоянно возникают ошибки
    kernel: ad0: FAILURE - READ_DMA status=51 <ready,dsc,error>error=10 <nid_not_found>с разными значениями lba
    вроде бы это означает проблему в адресации
    тоесть система пытается обратится к несуществующему в адресации lba сектору

    Как мне исправить эти ошибки?

    дистр pfHacom для флешек но с вга был залит на флешку целиком

    Protocol              ATA/ATAPI revision 0
    device model          SanDisk SDCFH-004G
    serial number         CBZ032211203644
    firmware revision     HDX 6.02
    cylinders             7751
    heads                 16
    sectors/track         63
    CFA supported
    lba supported         7813120 sectors
    lba48 supported       7813120 sectors
    dma supported
    overlap not supported
    
    Feature                      Support  Enable    Value           Vendor
    write cache                    yes      yes
    read ahead                     no       no
    Tagged Command Queuing (TCQ)   no       no      0/0x00
    SMART                          no       no
    microcode download             no       no
    security                       no       no
    power management               no       no
    advanced power management      yes      no      0/0x00
    automatic acoustic management  no       no      0/0x00  0/0x00
    
    Geom name: ad0
    fwheads: 16
    fwsectors: 63
    last: 7813070
    first: 63
    entries: 4
    scheme: MBR
    Providers:
    1\. Name: ad0s1
       Mediasize: 1965809664 (1.8G)
       Sectorsize: 512
       Mode: r1w0e2
       attrib: active
       rawtype: 165
       length: 1965809664
       offset: 32256
       type: freebsd
       index: 1
       end: 3839534
       start: 63
    2\. Name: ad0s2
       Mediasize: 1965809664 (1.8G)
       Sectorsize: 512
       Mode: r0w0e0
       rawtype: 165
       length: 1965809664
       offset: 1965874176
       type: freebsd
       index: 2
       end: 7679069
       start: 3839598
    3\. Name: ad0s3
       Mediasize: 57576960 (55M)
       Sectorsize: 512
       Mode: r1w0e2
       rawtype: 165
       length: 57576960
       offset: 3931683840
       type: freebsd
       index: 3
       end: 7791524
       start: 7679070
    Consumers:
    1\. Name: ad0
       Mediasize: 4000317440 (3.7G)
       Sectorsize: 512
       Mode: r2w0e4
    
    Geom name: ad0s1
    fwheads: 16
    fwsectors: 63
    last: 3839471
    first: 0
    entries: 8
    scheme: BSD
    Providers:
    1\. Name: ad0s1a
       Mediasize: 1965801472 (1.8G)
       Sectorsize: 512
       Mode: r1w0e2
       rawtype: 0
       length: 1965801472
       offset: 8192
       type: !0
       index: 1
       end: 3839471
       start: 16
    Consumers:
    1\. Name: ad0s1
       Mediasize: 1965809664 (1.8G)
       Sectorsize: 512
       Mode: r1w0e2
    
    Geom name: ad0s2
    fwheads: 16
    fwsectors: 63
    last: 3839471
    first: 0
    entries: 8
    scheme: BSD
    Providers:
    1\. Name: ad0s2a
       Mediasize: 1965801472 (1.8G)
       Sectorsize: 512
       Mode: r0w0e0
       rawtype: 0
       length: 1965801472
       offset: 8192
       type: !0
       index: 1
       end: 3839471
       start: 16
    Consumers:
    1\. Name: ad0s2
       Mediasize: 1965809664 (1.8G)
       Sectorsize: 512
       Mode: r0w0e0
    

    если делать dd if=/dev/da0 of=/dev/null то в конце всегда появляется ошибка
    kernel: ad0: FAILURE - READ_DMA status=51 <ready,dsc,error>error=10 <nid_not_found>LBA=7813024</nid_not_found></ready,dsc,error></nid_not_found></ready,dsc,error>



  • dd if=/dev/da0s1 of=/dev/null
    dd if=/dev/da0s2 of=/dev/null
    dd if=/dev/da0s3 of=/dev/null
    выполняются без ошибок



  • Это "косяк" переходника CF-IDE и самой CF. Нужно в БИОС-сетап матери принудительно отключить для CF режим UDMA и оставить только PIO. Какой именно - поиграйтесь с соотв. настройками, но думаю, что максимальный будет флэхой "съеден" нормально.



  • @QWERTik:

    Это "косяк" переходника CF-IDE и самой CF. Нужно в БИОС-сетап матери принудительно отключить для CF режим UDMA и оставить только PIO. Какой именно - поиграйтесь с соотв. настройками, но думаю, что максимальный будет флэхой "съеден" нормально.

    если бы дело было в дма тогда бы ошибки возникали при любой операции с диском
    а у меня как будто неправильная лба адресация
    до lba 7813024 всё нормально а после диск как бы внезапно кончается
    причём на диске три раздела и все они нормально читаются
    а в конце пустое место и оттуда чтото пытается прочитатся
    чаще всего с лба 7813119 и 7813120

    как я понял мне надо ограничить размер диска ad0 с
    лба 7813120 х 512 байт сектор = 4000317440 байт -> 3906560 Кб -> 3815 Мб до
    лба 7813023 х 512 байт сектор = 4000267776 байт -> 3906511,5 Кб -> 3814,95 Мб
    но вот как это сделать незнаю
    может кто посоветует какие мануалы мне стоит курить на эту тему ?



  • Меняйте переходник на адекватный и добейтесь, чтобы у вас такого не было

    если делать dd if=/dev/da0 of=/dev/null то в конце всегда появляется ошибка
    kernel: ad0: FAILURE - READ_DMA status=51 <ready,dsc,error>error=10 <nid_not_found>LBA=7813024</nid_not_found></ready,dsc,error>

    а там, глядишь и проблема уйдёт.

    Да и покажите, что говорит виктория о вашей флэшке.



  • @aleksvolgin:

    Да и покажите, что говорит виктория о вашей флэшке.

    50 ERR INDX CORR DREQ DRSC WRFT DRDY BUSY        AMNF T0NF ABRT IDNF UNCR BBK 00
     [SanDisk SDCFH-004G    ] [    7,813,120] [             ] [                   ] 
    
    Removable Media Device:                                                         
    SanDisk SDCFH-004G  LBA:7,813,120  BIOS: 81H                                    
    SN:CBZ032211203644   FW:HDX 6.02   CACHE:1KB   Size = 3815MB                    
    To see enhanced information, use command EID <shift+f2>Init drive: Done                                                                
    
    Removable Media Device:                                                         
    SanDisk SDCFH-004G  LBA:7,813,120  BIOS: 81H                                    
    SN:CBZ032211203644   FW:HDX 6.02   CACHE:1KB                                    
    Supports: LBA48 LBA MS1 DMA (UDMA4,MWDMA2)                                      
    Size = 3815MB                                                                   
    MHDD>id                                                                         
    Removable Media Device:                                                         
    SanDisk SDCFH-004G  LBA:7,813,120  BIOS: 81H                                    
    SN:CBZ032211203644   FW:HDX 6.02   CACHE:1KB   Size = 3815MB                    
    
     | Scan a drive : <f4>| 09:05:41</f4></shift+f2> 
    
     Victoria 3.52 freeware | (c) 2002-2006  Sergei Kazanskij  | http://hdd-911.com 
    ERR INX CORR DRQ DRSC WRFT DRDY BUSY        AMNF T0NF ABRT IDNF UNC BBK 09:07:39
     Всего 7813120    LBA            SanDisk SDCFH-004G     SN: CBZ032211203644     
    │                                                           Mb: ...... | .... % 
    │                                                           ░ ( 5 ms)-         │
    │                                                           ▒ (20 ms)-         │
    │                                                           ▓ (50 ms)-         │
    │                                                           █ (200ms)-         │
    │   GenuineIntel CPU, 1398 MHz                              █ (500ms)-         │
    │                                                           █ (1.5 s)-         │
    │Init drive...... OK                                          Сообщения:        
    │                                                          │                   │
    │Model: SanDisk SDCFH-004G; f/w: HDX 6.02                  │                   │
    │S/N: CBZ032211203644; LBAs: 7813120                       │                   │
    │Pass size: 3815 Mb; CHS: 7751/16/63/3813 Mb               │                   │
    │SMART: Unknown (press F9)                                 │                   │
    │CACHE: 1 kb; Look-ahead = OFF; Write = ON                 │                   │
    │Supp: 48bit LBA,DMA(MWDMA2,UDMA4),APM,FLC                 │                   │
    │Current APM value = 0                                     │                   │
    │Current power mode = Active                               │                   │
    │Master PWD revision = 65534                               │                   │
    │Security: Not supported.                                  │ Speed:     0 kb/s │
    │                                                          │ Remain: 00:00:00  │
      Primary Master channel, port 1F0h                                             
    1HELP│2INIT│3RESET│4SCAN│5AAM│6HPA│7SEEK│8PSWD│9SMART│10DisPWD│[+]COMM│STOP│EXIT
    
    


  • Ваша флэш поддерживает UDMA4, соответственно используйте корректный переходник CF -> IDE/SATA. Если не поможет - ставлю на несовместимость IDE/SATA контроллера матери и CF карты (такое не часто, но бывает). И далее либо замена карты, либо обновление биоса матери, возможно, поможет. Более ничего сказать не могу.



  • @aleksvolgin:

    Ваша флэш поддерживает UDMA4, соответственно используйте корректный переходник CF -> IDE/SATA. Если не поможет - ставлю на несовместимость IDE/SATA контроллера матери и CF карты (такое не часто, но бывает). И далее либо замена карты, либо обновление биоса матери, возможно, поможет. Более ничего сказать не могу.

    а можно ли програмно запретить системе лезть в сектора больше заданного значения через sysctl или loader.conf например?
    ведь там расположена неразмеченная область и система туда вообще не должна лезть



  • Попробуйте всё-таки для начала в BIOS-setup матери на канале вашей флэшки отключить UDMA и оставить только PIO и посмотрите, уйдёт проблема или нет. Если уйдёт - разбирайтесь с флэхой/переходником, как написал АлексВолгин, если останется - ищите источник проблемы дальше.



  • @QWERTik:

    Попробуйте всё-таки для начала в BIOS-setup матери на канале вашей флэшки отключить UDMA и оставить только PIO и посмотрите, уйдёт проблема или нет. Если уйдёт - разбирайтесь с флэхой/переходником, как написал АлексВолгин, если останется - ищите источник проблемы дальше.

    Проблема 100% не в переходнике
    я гуглил
    вот такаяже ошибка на ALIX.2D13 http://mygeekshed.wordpress.com/2011/01/26/pfsense-embedded-on-a-alix-2d13-board/
    а вот на Soekris net5501 http://lists.soekris.com/pipermail/soekris-tech/2011-January/017002.html
    на них флешка ставится прямо на плату

    проблема скорее всего во фрибсд потому как в других системах всё нормально читается
    а в фрибсд читается до сектора 7813008
    /dev/ad0  |–-читается нормально до лба7813008 ----|ххх все с ошибками error=10<nid_not_found>ххх|

    [2.0-RELEASE][root@pfsense.localdomain]/root(1): dd if=/dev/ad0 of=/dev/null bs=512 skip=7812000
    dd: /dev/ad0: Input/output error
    1008+0 records in
    1008+0 records out
    516096 bytes transferred in 0.467578 secs (1103765 bytes/sec)
    [2.0-RELEASE][root@pfsense.localdomain]/root(2): dd if=/dev/ad0 of=/dev/null bs=512 skip=7813000
    dd: /dev/ad0: Input/output error
    8+0 records in
    8+0 records out
    4096 bytes transferred in 0.005148 secs (795659 bytes/sec)
    [2.0-RELEASE][root@pfsense.localdomain]/root(3): dd if=/dev/ad0 of=/dev/null bs=512 skip=7813009
    dd: /dev/ad0: Input/output error
    0+0 records in
    0+0 records out
    0 bytes transferred in 0.000960 secs (0 bytes/sec)
    [2.0-RELEASE][root@pfsense.localdomain]/root(4):
    
    

    соответственно

    Nov 6 07:56:04 	kernel: ad0: FAILURE - READ_DMA status=51 <ready,dsc,error>error=10 <nid_not_found>LBA=7813008
    Nov 6 07:56:20 	kernel: ad0: FAILURE - READ_DMA status=51 <ready,dsc,error>error=10 <nid_not_found>LBA=7813008
    Nov 6 07:56:33 	kernel: ad0: FAILURE - READ_DMA status=51 <ready,dsc,error>error=10 <nid_not_found>LBA=7813009</nid_not_found></ready,dsc,error></nid_not_found></ready,dsc,error></nid_not_found></ready,dsc,error>
    

    Проблемы скорее всего даже две т.к. после сектора 7791524 идёт неразмеченая область и система её вообще не должна использовать</nid_not_found>



  • Поменяйте что-нибудь одно, либо флэш, либо маршрутизатор.



  • @aleksvolgin:

    Поменяйте что-нибудь одно, либо флэш, либо маршрутизатор.

    в досе то всё нормально я тестил mhdd и викторией все блоки менше 3ms и 5ms соответственно
    проблема явно програмная



  • проблема явно програмная

    а кто спорит? Поэтому и предлагаю: меняйте либо карту, либо маршрутизатор.



  • @aleksvolgin:

    проблема явно програмная

    а кто спорит? Поэтому и предлагаю: меняйте либо карту, либо маршрутизатор.

    для начала надо отправить куданибудь багрепорты
    вот только куда и как это правильно по английски оформить ?

    потом надо отследить какая программа пытается прочесть в той области диска
    как отследить ? может какойнибудь отладочный режим есть нужно чтонибудь типа procmon только для freebsd


Locked