PowerFlex SDC'er har IO-fejl efter tilføjelse af nyt SDS til klynge

Summary: Når du har føjet et nyt SDS til PowerFlex-klyngen og rebalanceret data til det nye SDS, viser nogle SDC'er I/O-fejl

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 blev føjet til klyngen (fra MDM-hændelser)

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-logfiler viser kernestakspor i forsøget på at oprette forbindelse til det nye SDS. Disse kan vises flere gange, når SDC forsøger at oprette forbindelse til det nye 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-logfiler viser derefter I/O-fejl:
 

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


 

Påvirkning

I/O-fejl på nogle SDC'er



 

Cause

Værtsoperativsystemet, hvor SDC kører, er løbet tør for sammenhængende hukommelsesklumper i 64 KB-området. Ordren "sideallokeringsfejl: Meddelelsen 4" fortæller os, at det er en del på 64 KB, der ikke er tilgængelig. SDC beder operativsystemet om en hukommelsestildeling for at oprette den nye sokkel og oprette forbindelse til det nyligt tilføjede SDS, hvilket er det, der fejler. Hvis SDC ikke kan oprette forbindelse til det nye SDS, og data rebalanceres til det nye SDS, vil IO-fejl på SDC-værten være resultatet.

Resolution

IO-fejlene kan stoppes med det samme ved at sætte det nye SDS i øjeblikkelig vedligeholdelsestilstand. SDC'erne kan få deres data fra de resterende SDS'er. Bring SDS ud af vedligeholdelse, når SDC-hukommelsesproblemet er løst. 

Der er et par ting at gøre her, alle bør overvejes til handlingsplanen:

  1. Hvis en sikker metode er nødvendig for at løse det, løser en genstart af SDC-værten problemet. Den initialiserer operativsystemet igen, og den hukommelsesfragmentering, der var der tidligere, vil være væk
     
  2. Hvis en genstart ikke er mulig, skal du bruge følgende kommando. Det forsøger at genvinde og komprimere den fragmenterede hukommelse så meget som muligt. Der er ingen garanti for, at dette fungerer, og det kan være forstyrrende for aktuelle programmer i nogle få sekunder, hvor det genvinder/komprimerer hukommelsesfragmenter: 

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



    Kontroller hukommelsesforbruget med "cat /proc/buddyinfo" for at se, om ovenstående kommando hjalp eller ej. Brug den før og efter at have kørt ovenstående kommando for at se, om den stiger over nul. Vi ser på den fjerde kolonne i rækken "Node 0, zone Normal", som er en optælling af 64 KB sammenhængende stykker tilgængelig hukommelse. I dette tilfælde vises det, før du kører ovenstående kommando for at genvinde/komprimere:

    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. Kontroller indstillingerne for hukommelsesovercommit på kernen ved hjælp af "sysctl -a." Hvis kernen bruger standard som følger:
    vm.overcommit_memory = 0
    vm.overcommit_ratio = 50

    Det ville være en fordel at tale med OS-leverandøren om at ændre disse parametre som følger, for at give OS mere hukommelse at arbejde med efter en genstart og undgå dette problem i fremtiden:
    vm.overcommit_memory = 2
    vm.overcommit_ratio = 98
     
  4. Linux-kernen skal muligvis opgraderes, hvis dette bliver et almindeligt mønster af OS-hukommelsesfragmentering

 

Påvirkede versioner

Alle PowerFlex SDC'er kan blive påvirket af problemer med fragmentering af OS-hukommelse.
 

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.