PowerPath for Linux : Unable to start PowerPath on Linux system || Getting error "Address for lookup function is missing"

Summary: Unable to start PowerPath on Linux system where OS and Kernel versions are in supported level. The error we are getting is similar to what we usually get for non supported kernel versions. ...

Αυτό το άρθρο ισχύει για Αυτό το άρθρο δεν ισχύει για Αυτό το άρθρο δεν συνδέεται με κάποιο συγκεκριμένο προϊόν. Δεν προσδιορίζονται όλες οι εκδόσεις προϊόντων σε αυτό το άρθρο.

Symptoms

Installed PowerPath on Linux system and tried to start the PowerPath but it failed.

# systemctl start PowerPath.service
PowerPath could not load module emcp
Error loading PowerPath kernel modules

From messages file --
systemd[1]: Starting PowerPath startup script...                                                  
kernel: emcp: module license 'Proprietary' taints kernel.                                         
kernel: Disabling lock debugging due to kernel taint                                              
kernel: emcp: module verification failed: signature and/or required key missing - tainting kernel 
kernel: emcp: applying kernel_stack fix up                                                        
systemd-udevd[604]: specified group 'lp' unknown                                                  
kernel: Warning:emcp:emcp: Address for lookup function is missing                                 
PowerPath[2869]: Starting PowerPath: PowerPath could not load module emcp                         
PowerPath[2869]: Error loading PowerPath kernel modules                                           
PowerPath[2869]: failed                                                                           
systemd[1]: Stopping PowerPath startup script...    

Cause

The Linux system kernel was tuned by 

kernel.randomize_va_space = 2
kernel.kptr_restrict = 2

# cat /proc/sys/kernel/kptr_restrict
2

Above settings/tuning made all the addresses in "/proc/kallsyms" as 0x0000000000 which is not normal and it is not expected by PowerPath startup script. Hence PowerPath service was failing to start. 

This option nullifies the kernel symbols exported to user space via /proc/kallsyms.

Powerpath startup script looks at /proc/kallsyms to get addresses of some kernel functions and passes these addresses as a parameter while loading emcp module. Since the expected kernel symbols are no longer available to Powerpath startup script, emcp module fails to load and as a result startup script fails.

Resolution

To fix the issue, you need to revert back the below parameters to the default value so that "/proc/ kallsyms" starts listing proper addresses.

# echo 0 >/proc/sys/kernel/kptr_restrict
# echo 0 >/proc/sys/kernel/randomize_va_space

# cat /proc/sys/kernel/kptr_restrict
0

And then try to start PowerPath service. It should start !

# systemctl start PowerPath.service

Additional Information

If you are not sure why the "kernel.randomize_va_space" and the "kernel.kptr_restrict" parameters were changed, please involve your OS vendor since this is usually a tuning parameter.

Επηρεαζόμενα προϊόντα

PowerPath for Linux

Προϊόντα

PowerPath for Linux
Ιδιότητες άρθρου
Article Number: 000050401
Article Type: Solution
Τελευταία τροποποίηση: 22 Αυγ 2025
Version:  4
Βρείτε απαντήσεις στις ερωτήσεις σας από άλλους χρήστες της Dell
Υπηρεσίες υποστήριξης
Ελέγξτε αν η συσκευή σας καλύπτεται από τις Υπηρεσίες υποστήριξης.