PowerFlex scini-driveren (SDC) rapporterer hukommelsesallokeringsfejl (blkIO_HandleChecksumOnIoStart)

Summary: Hukommelsesallokeringsfejl rapporteres i syslog af scini-driveren (SDC-driveren).

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

Scenario
SDC installeret på Linux
Diskenheder, der er knyttet til SDC, tildeles fra en lagerpulje, der er konfigureret til at bruge kontrolsum.
Systemet oplever hukommelsesmangel eller hukommelsesfragmentering.

Symptomer
Meddelelser, der ligner følgende, vises normalt i sysloggen: /var/log/messages

Dec 12 15:36:09 server002 kernel: kworker/16:2H: page allocation failure: order:8, mode:0x104020 
Dec 12 15:36:09 server002 kernel: CPU: 16 PID: 11460 Comm: kworker/16:2H Tainted: P OE ------------ 3.10.0-514.21.1.el7.x86_64 #1 
Dec 12 15:36:09 server002 kernel: Hardware name: HP ProLiant DL560 Gen9/ProLiant DL560 Gen9, BIOS P85 01/04/2016 
Dec 12 15:36:09 server002 kernel: Workqueue: kblockd blk_delay_work 
Dec 12 15:36:09 server002 kernel: 0000000000104020 0000000054aac964 ffff886aecfd37c0 ffffffff81686e13 
Dec 12 15:36:09 server002 kernel: ffff886aecfd3850 ffffffff81187090 ffff88607ffda000 0000000000000010 
Dec 12 15:36:09 server002 kernel: ffffffffffffff00 0010402000000000 0022522000000000 0000000054aac964 
Dec 12 15:36:09 server002 kernel: Call Trace: 
Dec 12 15:36:09 server002 kernel: [<ffffffff81686e13>] dump_stack+0x19/0x1b 
Dec 12 15:36:09 server002 kernel: [<ffffffff81187090>] warn_alloc_failed+0x110/0x180 
Dec 12 15:36:09 server002 kernel: [<ffffffff816829a7>] __alloc_pages_slowpath+0x6b7/0x725 Dec 12 15:36:09 server002 kernel: [<ffffffff8118b645>] __alloc_pages_nodemask+0x405/0x420 Dec 12 15:36:09 server002 kernel: [<ffffffff811cf7fa>] alloc_pages_current+0xaa/0x170 
Dec 12 15:36:09 server002 kernel: [<ffffffff81185f6e>] __get_free_pages+0xe/0x50 
Dec 12 15:36:09 server002 kernel: [<ffffffff811db09e>] kmalloc_order_trace+0x2e/0xa0 
Dec 12 15:36:09 server002 kernel: [<ffffffff811dd871>] __kmalloc+0x221/0x240 
Dec 12 15:36:09 server002 kernel: [<ffffffff811de7c3>] ? kmem_cache_alloc+0x193/0x1e0 
Dec 12 15:36:09 server002 kernel: [<ffffffffa07b697a>] blkIO_OnChecksumIoStart+0x5a/0x550 [scini] 
Dec 12 15:36:09 server002 kernel: [<ffffffffa07ed587>] ? mosMCAllocator_Alloc+0x57/0xa0 [scini] 
Dec 12 15:36:09 server002 kernel: [<ffffffffa07b3ac1>] blkIO_HandleChecksumOnIoStart+0xc1/0x220 [scini] 
Dec 12 15:36:09 server002 kernel: [<ffffffffa07b7ea8>] mapVolIO_Do_CK+0x398/0x1e80 [scini] Dec 12 15:36:09 server002 kernel: [<ffffffffa07b4306>] blkIO_Do_CK+0x266/0xa00 [scini] 
Dec 12 15:36:09 server002 kernel: [<ffffffffa07e9838>] mosMit_EntryWrapper+0x128/0x1b0 [scini] 
Dec 12 15:36:09 server002 kernel: [<ffffffffa07e9a2c>] mosMit_StartNow+0x7c/0x90 [scini] 
Dec 12 15:36:09 server002 kernel: [<ffffffffa07b4ea6>] blkIO_Request+0x356/0x730 [scini] 
Dec 12 15:36:09 server002 kernel: [<ffffffff810cf27e>] ? dequeue_task_fair+0x41e/0x660 
Dec 12 15:36:09 server002 kernel: [<ffffffff812eb7e3>] __blk_run_queue+0x33/0x40 
Dec 12 15:36:09 server002 kernel: [<ffffffff812ed915>] blk_delay_work+0x25/0x60 
Dec 12 15:36:09 server002 kernel: [<ffffffff810a845b>] process_one_work+0x17b/0x470 
Dec 12 15:36:09 server002 kernel: [<ffffffff810a9296>] worker_thread+0x126/0x410 
Dec 12 15:36:09 server002 kernel: [<ffffffff810a9170>] ? rescuer_thread+0x460/0x460 
Dec 12 15:36:09 server002 kernel: [<ffffffff810b0a4f>] kthread+0xcf/0xe0 
Dec 12 15:36:09 server002 kernel: [<ffffffff810b0980>] ? kthread_create_on_node+0x140/0x140 Dec 12 15:36:09 server002 kernel: [<ffffffff81697418>] ret_from_fork+0x58/0x90 
Dec 12 15:36:09 server002 kernel: [<ffffffff810b0980>] ? kthread_create_on_node+0x140/0x140

Meddelelserne begynder med: page allocation failure
Staksporingen omfatter: blkIO_HandleChecksumOnIoStart

Indvirkning
Den interne ScaleIO-kontrolsummekanisme verificerer muligvis ikke visse I/O-handlinger.

Bemærk: TCP-meddelelserne, der sendes mellem SDC og SDS, indeholder en kontrolsum på TCP-niveau, uanset den kontrolsum, der tilføjes af SDC, som bruges til at verificere indholdet af meddelelsen som en del af TCP-stakken.

 

Cause

Når kontrolsumsfunktionen er aktiveret på en lagerpulje, har I/O-handlinger på diskenheder, der er allokeret fra lagerpuljen, en kontrolsum inkluderet i netværksmeddelelserne mellem SDC og SDS.
For at beregne disse kontrolsumværdier tildeler SDC dynamisk hukommelse.
Hvis værten lider af hukommelsesmangel eller hukommelsesfragmentering, kan den hukommelsesallokering, der kræves til kontrolsummen, mislykkes.

Når hukommelsesallokeringen mislykkes, kan SDC ikke beregne kontrolsummen og vedhæfter den ikke til netværksmeddelelsen.
Når SDS modtager en meddelelse fra SDC, som ikke indeholder en kontrolsum, udfører den I / O-operationen uden at kontrollere indholdet af meddelelsen på sin side.

Det kan konkluderes, at hukommelsesallokeringsfejlene ikke har nogen indvirkning på programmernes I/O-handlinger eller ScaleIO-ydeevne.

 

Resolution

Hvis det er muligt, skal du sørge for, at værten har tilstrækkelig ledig ufragmenteret hukommelse.

Påvirkede versioner
Alle ScaleIO-versioner – fungerer efter designet

Løst i version
NIELSEN

 

Article Properties
Article Number: 000161109
Article Type: Solution
Last Modified: 03 Sept 2025
Version:  7
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.