PowerFlex SDC's hebben IO-fouten na het toevoegen van nieuwe SDS aan cluster

Summary: Na het toevoegen van een nieuwe SDS aan het PowerFlex-cluster en het opnieuw verdelen van data naar de nieuwe SDS, vertonen sommige SDC's I/O-fouten

This article applies to This article does not apply to This article is not tied to any specific product. Not all product versions are identified in this article.

Symptoms

- SDS is toegevoegd aan het cluster (van MDM-gebeurtenissen)

2022-03-07 18:28:07.080 MDM_CLI_CONF_COMMAND_RECEIVED INFO     	 Command add_sds received, User: 'admin'. [4576114] protection_domain with ID a876543f00000000, fault_set N/A, 

New SDS name: sds12, Hostnames: 172.1.0.12, Port: 7072
2022-03-07 18:28:07.324 CLI_COMMAND_SUCCEEDED         INFO     	 Command add_sds succeeded. [4576114] ID: 7d120650000002f

 - SDC-logboeken tonen sporen van kernelstacks bij het maken van verbinding met de nieuwe SDS. Deze kunnen meerdere keren worden weergegeven wanneer de SDC verbinding probeert te maken met de nieuwe SDS:

 
022-03-07T18:29:02.880040-05:00 sdc32 kernel: net_sched: page allocation failure: order:4, mode:0x104020
2022-03-07T18:29:02.880170-05:00 sdc32 kernel: CPU: 16 PID: 5662 Comm: net_sched Kdump: loaded Tainted: P           OE  ------------   3.10.0-1062.el7.x86_64 #1
2022-03-07T18:29:02.880242-05:00 sdc32 kernel: Hardware name: Dell Inc. PowerEdge R740xd/5XXXXX, BIOS 2.4.8 11/26/2019
2022-03-07T18:29:02.880355-05:00 sdc32 kernel: Call Trace:
2022-03-07T18:29:02.880453-05:00 sdc32 kernel: [<ffffffffbb179262>] dump_stack+0x19/0x1b
2022-03-07T18:29:02.880553-05:00 sdc32 kernel: [<ffffffffbabc23d0>] warn_alloc_failed+0x110/0x180
2022-03-07T18:29:02.880623-05:00 sdc32 kernel: [<ffffffffbb1747fc>] __alloc_pages_slowpath+0x6b6/0x724
2022-03-07T18:29:02.880709-05:00 sdc32 kernel: [<ffffffffc09c021e>] ? netAddress_ToStrCopy+0x2de/0x520 [scini]
2022-03-07T18:29:02.880787-05:00 sdc32 kernel: [<ffffffffbabc6b84>] __alloc_pages_nodemask+0x404/0x420
2022-03-07T18:29:02.880851-05:00 sdc32 kernel: [<ffffffffbac14c68>] alloc_pages_current+0x98/0x110
2022-03-07T18:29:02.880922-05:00 sdc32 kernel: [<ffffffffbabc117e>] __get_free_pages+0xe/0x40
2022-03-07T18:29:02.880995-05:00 sdc32 kernel: [<ffffffffbac2052e>] kmalloc_order_trace+0x2e/0xa0
2022-03-07T18:29:02.881053-05:00 sdc32 kernel: [<ffffffffbac24571>] __kmalloc+0x211/0x230
2022-03-07T18:29:02.881110-05:00 sdc32 kernel: [<ffffffffc0988274>] mapClass_AllocAndInitObj+0x44/0x140 [scini]
2022-03-07T18:29:02.881167-05:00 sdc32 kernel: [<ffffffffc098959e>] mapClass_UpdateAll+0x40e/0x9b0 [scini]
2022-03-07T18:29:02.881229-05:00 sdc32 kernel: [<ffffffffc09c9994>] ? mosMitSchedThrd_CurThrdOurs+0x64/0x90 [scini]
2022-03-07T18:29:02.881298-05:00 sdc32 kernel: [<ffffffffc099aa07>] mapMdm_HandleObjUpdate_CK+0x327/0x730 [scini]
2022-03-07T18:29:02.881360-05:00 sdc32 kernel: [<ffffffffc099c070>] ? mapMdm_SendUpdateReq_CK+0xf0/0xed0 [scini]
2022-03-07T18:29:02.881419-05:00 sdc32 kernel: [<ffffffffc099c4b0>] mapMdm_SendUpdateReq_CK+0x530/0xed0 [scini]
2022-03-07T18:29:02.881480-05:00 sdc32 kernel: [<ffffffffc09a704f>] ? netSock_DoIO+0xef/0x7d0 [scini]
2022-03-07T18:29:02.881543-05:00 sdc32 kernel: [<ffffffffc09aaf47>] ? netChanThrottler_TryToWakeupWaiterOfCond+0x27/0x100 [scini]
2022-03-07T18:29:02.881606-05:00 sdc32 kernel: [<ffffffffc09ab118>] ? netChanThrottler_TryToWakeupWaiter+0x58/0x80 [scini]
2022-03-07T18:29:02.881660-05:00 sdc32 kernel: [<ffffffffc095cc80>] ? netChan_SendReq_CK+0x90/0xa70 [scini]
2022-03-07T18:29:02.881716-05:00 sdc32 kernel: [<ffffffffc095cdd0>] netChan_SendReq_CK+0x1e0/0xa70 [scini]
2022-03-07T18:29:02.881775-05:00 sdc32 kernel: [<ffffffffc09699c5>] netCon_SendReq_CK+0x175/0x590 [scini]
2022-03-07T18:29:02.881835-05:00 sdc32 kernel: [<ffffffffc0963cf7>] ? netRPC_SendDone_CK+0x47/0xab0 [scini]
2022-03-07T18:29:02.881890-05:00 sdc32 kernel: [<ffffffffc0963dd3>] netRPC_SendDone_CK+0x123/0xab0 [scini]
2022-03-07T18:29:02.881959-05:00 sdc32 kernel: [<ffffffffc09c9c24>] mosMit_RunWithTLS+0x54/0x60 [scini]
2022-03-07T18:29:02.882017-05:00 sdc32 kernel: [<ffffffffc09cbb92>] mosMitSchedThrd_ThrdEntry+0x1a2/0x500 [scini]
2022-03-07T18:29:02.882071-05:00 sdc32 kernel: [<ffffffffc09c82f0>] ? mosTicks_DestroyEnvSpecific+0x10/0x10 [scini]
2022-03-07T18:29:02.882126-05:00 sdc32 kernel: [<ffffffffc09c8310>] mosOsThrd_Entry+0x20/0x50 [scini]
2022-03-07T18:29:02.882185-05:00 sdc32 kernel: [<ffffffffbaac50d1>] kthread+0xd1/0xe0
2022-03-07T18:29:02.882240-05:00 sdc32 kernel: [<ffffffffbaac5000>] ? insert_kthread_work+0x40/0x40
2022-03-07T18:29:02.882294-05:00 sdc32 kernel: [<ffffffffbb18bd37>] ret_from_fork_nospec_begin+0x21/0x21
2022-03-07T18:29:02.882351-05:00 sdc32 kernel: [<ffffffffbaac5000>] ? insert_kthread_work+0x40/0x40
2022-03-07T18:29:02.891431-05:00 sdc32 kernel: ScaleIO mapClass_AllocAndInitObj:1301 :Error: Failed to allocate memory 38480.Cannot process MDM response



 SDC-logboeken tonen dan I/O-fouten:
 

2022-03-07T18:49:03.652009-05:00 sdc32 kernel: ScaleIO mapMultiHead_UpdateInPlace:561 :Warning: Invalid primaryTgtIdx 47 at 2. Multi-head ID dd990042.
2022-03-07T18:49:03.652130-05:00 sdc32 kernel: ScaleIO mapClass_UpdateAll:614 :Error: Object ffff948c7f350000 (class multi_head) failed to update in place.status NO_RESOURCES (67)
2022-03-07T18:49:04.662144-05:00 sdc32 kernel: ScaleIO mapVolIO_ReportIOErrorIfNeeded:491 :[67641433832] IO-ERROR Type READ. comb: 6ecc80210154. offsetInComb 14536800. SizeInLB 256. SDS_ID 7dd0d24700000033. Comb Gen 21c1. Head Gen 222c. StartLB 5fb1ac860.
2022-03-07T18:49:04.662268-05:00 sdc32 kernel: blk_update_request: I/O error, dev scinic, sector 25687672672


 

Impact

I/O-fouten op sommige SDC-exemplaren



 

Cause

Het hostbesturingssysteem waarop de SDC wordt uitgevoerd, heeft geen aaneengesloten geheugenblokken in het bereik van 64 KB. De "page allocation failure: order: Bericht 4 inch vertelt ons dat het een stuk van 64 KB is dat niet beschikbaar is. De SDC vraagt het besturingssysteem om een geheugentoewijzing om de nieuwe socket te maken en verbinding te maken met de nieuw toegevoegde SDS, en dat is wat mislukt. Als de SDC geen verbinding kan maken met de nieuwe SDS en de data opnieuw in balans worden gebracht met de nieuwe SDS, zijn IO-fouten op de SDC-host het gevolg.

Resolution

De IO-fouten kunnen onmiddellijk worden gestopt door de nieuwe SDS in de directe onderhoudsmodus te plaatsen. De SDC's kunnen hun data ophalen uit de resterende SDS-exemplaren. Zorg dat de SDS niet meer in onderhoud is wanneer het probleem met het SDC-geheugen is opgelost. 

Er zijn een paar dingen die u hier moet doen, die allemaal in overweging moeten worden genomen voor het actieplan:

  1. Als er een zekere methode nodig is om het probleem op te lossen, wordt het probleem opgelost door de SDC-host opnieuw op te starten. Het besturingssysteem wordt opnieuw geïnitialiseerd en de geheugenfragmentatie die er eerder was, zal verdwenen zijn
     
  2. Als opnieuw opstarten niet mogelijk is, gebruikt u de volgende opdracht. Het probeert het gefragmenteerde geheugen zoveel mogelijk terug te winnen en te comprimeren. Het is niet gegarandeerd dat dit werkt en kan de huidige applicaties onderbreken gedurende de paar seconden dat geheugenfragmenten worden hersteld/gecomprimeerd: 

    sync; echo 1 > /proc/sys/vm/drop_caches; echo 1 > /proc/sys/vm/compact_memory



    Controleer het geheugengebruik met "cat /proc/buddyinfo" om te zien of de bovenstaande opdracht heeft geholpen of niet. Gebruik het voor en na het uitvoeren van de bovenstaande opdracht om te zien of het boven nul uitkomt. We kijken naar de vierde kolom in de rij "Knooppunt 0, zone normaal", wat een telling is van 64 KB aaneengesloten stukken geheugen die beschikbaar zijn. In dit geval wordt weergegeven voordat de bovenstaande opdracht wordt uitgevoerd om te herstellen/comprimeren:

    sdc32:~ # cat /proc/buddyinfo
    Node 0, zone      DMA        1        0       0      1      2      1      1      0      1      1      2
    Node 0, zone    DMA32        9        5       7      5      9      6      8      6      7      5    295
    Node 0, zone   Normal   909921  1263646  202478      0<===  0      0      0      0      0      0      0
    Node 1, zone   Normal	 39085	      0	      0      0      0      0      0      0      0      0      0

     

  3. Controleer de instellingen voor overcommit van het geheugen op de kernel met behulp van "sysctl -a". Als de kernel de standaardwaarde als volgt gebruikt:
    vm.overcommit_memory = 0
    vm.overcommit_ratio = 50

    Het zou voordelig zijn om met de leverancier van het besturingssysteem te praten over het wijzigen van deze parameters als volgt, om het besturingssysteem meer geheugen te geven om mee te werken na een herstart en dit probleem in de toekomst te voorkomen:
    vm.overcommit_memory = 2
    vm.overcommit_ratio = 98
     
  4. De Linux-kernel moet mogelijk worden geüpgraded als dit een regelmatig patroon van geheugenfragmentatie van het besturingssysteem wordt

 

Versies waarop dit van toepassing is

Alle PowerFlex SDC's kunnen worden beïnvloed door problemen met geheugenfragmentatie van het besturingssysteem.
 

Affected Products

PowerFlex Software
Article Properties
Article Number: 000197199
Article Type: Solution
Last Modified: 09 Jun 2025
Version:  2
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.