FC (SAN) 장애 증상 조사를 위해 보다 많은 정보를 얻고자 할 때,


[Troubleshooting] How do I turn on additional qla2xxx or qla4xxx driver extended logging and what logging is available?

how do I setup up qlogic driver 'extended_error_logging'
what are the steps for doing this for boot time logging
how can I get additional debug information from the driver
How to enable extended logging on QLogic HBAs?
How to turn-on Fiber Channel HBA extended logging on ?
How to setup logging level for SAN driver ?
How to setup logging level of HBA SAN driver to get better error messages ?

Red Hat Enterprise Linux (RHEL) 4, 5, 6, 7
Qlogic qla2xxx or qla4xxx drivers

Selecting a $MASK value (which extended events to enable)
RHEL 4, 5, and 6.0-6.2, only values 0 or 1 supported/available:
off: $MASK=0
on : $MASK=1

RHEL 6.3+ (2.6.32-279.el6 and later) plus all RHEL 7 releases,

different classes of event messages can be separately turned on or off per the table below for qla2xxx only. If unsure which event classes are needed, use 0x1e400000 which is equivalent to setting 1 in RHEL 4, 5, or 6. See driver sources for exactly what is logged within each class. The above mask value typically will not cause any excessive logging issues except on very large configurations (100s-100s of LUNs).


RHEL 4, 5, and 6.0-6.2, only values 0 or 1 supported/available:
off: $MASK=0
on : $MASK=1

RHEL 6.3+ (2.6.32-279.el6 and later) plus all RHEL 7 releases,

only on ($MASK=2, instead of a value of 1 previously) or off ($MASK=0).

qla2xxx driver RHEL 6.3+ (2.6.32-279.el6 and later including all RHEL 7 versions)
$MASK        Source
Value        Code            Description
----------   --------------  ----------------------------------------------------------------
0x00000000                   default, no logging
0x00001000   ql_dbg_tgt_tmr  Target mode TMF (Task Management Functions such as reset target)
0x00002000   ql_dbg_tgt_mgt  Target mode management 
0x00004000   ql_dbg_tgt      Target mode
0x00008000   ql_dbg_verbose  More verbosity, might not apply to all levels       
0x00010000   ql_dbg_misc     Miscellaneous, everything not covered by other categories
0x00020000   ql_dbg_buffer   Buffer/registers Dump   
0x00040000   ql_dbg_vport    Virtual port debug
0x00080000   ql_dbg_p3p      P3P Specific 
0x00100000   ql_dbg_multiq   MultiQ
0x00200000   ql_dbg_aer      AER/EEH      
0x00400000   ql_dbg_taskm    Task Management
0x00800000   ql_dbg_user     User space    
0x01000000   ql_dbg_timer    Timer routines
0x02000000   ql_dbg_async     Async events
0x04000000   ql_dbg_dpc       DPC Thread
0x08000000   ql_dbg_io        IO tracing   
0x10000000   ql_dbg_disc      Device Discovery
0x20000000   ql_dbg_mbx      Mailbox Cmnds
0x40000000   ql_dbg_init     Module Init & Probe

0x7fffffff - For enabling all logs, can be too many logs
0x1e400000 - Preferred value for capturing essential debug information

                  (equivalent to old ql2xextended_error_logging=1,

                   setting it to 1 in RHEL7 results in this mask value being used)

1) Enable/disable/view during run-time:
Enable:  # echo $MASK > /sys/module/qla2xxx/parameters/ql2xextended_error_logging
Disable: # echo 0     > /sys/module/qla2xxx/parameters/ql2xextended_error_logging
View:    # cat          /sys/module/qla2xxx/parameters/ql2xextended_error_logging

Enable:  # echo $MASK > /sys/module/qla4xxx/parameters/ql4xextended_error_logging
Disable: # echo 0     > /sys/module/qla4xxx/parameters/ql4xextended_error_logging
View:    # cat          /sys/module/qla4xxx/parameters/ql4xextended_error_logging

2) Enable at boot time, change the driver options after which you need to recreate the initrd image file on RHEL 5 or the initramfs image file on RHEL 6 and 7.

RHEL 4,5-5.5: in /etc/modprobe.conf, update the appropriate qla driver options line, add the line if necessary:
qla2xxx: options qla2xxx {extended-logging-parameter-name}=1
qla4xxx: options qla4xxx {extended-logging-parameter-name}=1

RHEL 5.6-5.*: in /etc/modprobe.conf, update the appropriate qla driver options line, add the line if necessary:
qla2xxx: options qla2xxx ql2xextended_error_logging=1
qla4xxx: options qla4xxx ql4xextended_error_logging=1

RHEL 6.0-6.2: in /etc/modprobe.d/qla*.conf, update the qla options line. If the file doesn't exist, create it.
qla2xxx: options qla2xxx ql2xextended_error_logging=1
qla4xxx: options qla4xxx ql4xextended_error_logging=1

RHEL 6.3+ : in /etc/modprobe.d/qla*.conf, update the qla options line. If the file doesn't exist, create it.
qla2xxx: options qla2xxx ql2xextended_error_logging=$MASK
qla4xxx: options qla4xxx ql4xextended_error_logging=2

RHEL 7.* : in /etc/modprobe.d/qla*.conf, update the qla options line. If the file doesn't exist, create it.
qla2xxx: options qla2xxx ql2xextended_error_logging=$MASK
qla4xxx: options qla4xxx ql4xextended_error_logging=2

Additional/Detailed information need to refer Red Hot Documents





Posted by 스쳐가는인연

댓글을 달아 주세요

고객사 방문하여 작업 중 접해서 당혹스러운 상황에 다행히도 도움을 받아 해결했지만, 잊지 않도록(?) 기록해두기 ...

1. Check
# vi -b <% file name %>

2. Remove
Note. '^M' = <Ctrl> + <V> + <M>
         Not! '^'+'M'

Windows/DOS : CRLF(Carriage return) 조합으로 줄바꿈을 정의 (커서의 위치를 앞으로 이동)
Unix/Linux/C : LF(Line Feed) 만으로 줄바꿈을 정의 (현재 위치에서 바로 아래로 이동)

이로 인해(개행 방식 차이), 윈도우에서 작성된 것을 Unix/Linux 계열로 올리면 vi로 편집시 ^M이 붙는 경우가 발생함.

- ftp를 통해 전송하면 방식이 텍스트/2진 중 어떤 것을 이용하는가에 따라 달라질 수 있음
-- 텍스트 방식으로 전송하면 데이터 변환이 생겨 '/r/n' > '/n' 으로 됨. 
-- 2진 모드로 전송하면 변환이 생기지 않아, 윈도우에서 작성된 파일이 컴파일이 안되거나 script작성 된것이 동작 안할 수 있음


tr -d ^M <% file %> <% newfile %>

sed(stream editor):
sed 's/^M//g' <% file %> >  <% newfile %>











Posted by 스쳐가는인연

댓글을 달아 주세요

tar 분할 압축 해제


Syntax: tar cvf(z) - 대상디렉토리or파일 | split -b 용량 - 분할압축파일명

# tar cvf - /tmp | split -b 3000m - ahs_dump.tar



# cat ahs_dump.tar* | tar zxvf -

출처: https://frody.tistory.com/5

Posted by 스쳐가는인연

댓글을 달아 주세요

OS Event log - messages

Oct 14 07:09:07 Hostname kernel: ACPI Error: SMBus/IPMI/GenericSerialBus write requires Buffer of length 66, found length 32 (20130517/exfield-389)

Oct 14 07:09:07 Hostname kernel: ACPI Error: Method parse/execution failed [\_SB_.PMI0._PMM] (Node ffff88016d9e8ed8), AE_AML_BUFFER_LIMIT (20130517/psparse-536)

Oct 14 07:09:07 Hostname kernel: ACPI Exception: AE_AML_BUFFER_LIMIT, Evaluating _PMM (20130517/power_meter-339)


May 10 10:14:56 Hostname kernel: ACPI Error: SMBus or IPMI write requires Buffer of length 66, found length 32 (20090903/exfield-286)

May 10 10:14:56 Hostname kernel: ACPI Error (psparse-0537): Method parse/execution failed [\_SB_.PMI0._GHL] (Node ffff881074e41d08), AE_AML_BUFFER_LIMIT

May 10 10:14:56 Hostname kernel: ACPI Exception: AE_AML_BUFFER_LIMIT, Evaluating _GHL (20090903/power_meter-204)

Why do I see "ACPI Error (psparse-0537): Method parse/execution failed [\_SB_.PMI0._GHL] (Node ffff8101023768f0), AE_SUPPORT" when my RHEL 5 system boots?

No action is required.  These messages cannot be removed at the current time.

ACPI Error(ACPI Error: SMBus or IPMI write requires Buffer of length X, found length Y)

This message can be safely ignored.

Advisory: ProLiant G6 and G7 Servers - Advanced Configuration and Power Interface (ACPI) Errors May Be Reported by Red Hat Enterprise Linux 6 and SUSE Linux Enterprise Server 11 SP1 During Startup


Because the System ROM ACPI interface causing these error messages is not used in the Linux operating system environment, these messages are benign and can be safely ignored.

Posted by 스쳐가는인연

댓글을 달아 주세요

HPE NIC driver update through source rpm file from Ubuntu OS.


Test System
DL380 Gen10+562SFP+(X710 chipset)


1. Install SPP2020.03
2. Set WP to Virtualization - Max Performance.
3. Install Ubuntu 18.04.5 LTS


Check inbox driver (dmesg | grep i40e)
[ 3.733322] i40e: Intel(R) Ethernet Connection XL710 Network Driver - version 2.1.14-k


a. enable root account

# sudo passwd root


b. enable root login via ssh

# vim /etc/ssh/sshd_config

PermitRootLogin yes


# service ssh restart


4.1 Install rpm for use rpm package on Ubuntu

# apt install rpm

# rpm -ivh ./hp-i40e-

rpm: RPM should not be used directly install RPM packages, use Alien instead!
rpm: However assuming you know what you are doing...
Updating / installing...
1:hp-i40e- ################################# [100%]


rpm -ql ./hp-i40e-



>> package installed at



4.2. Install alien for use rpm package on Ubuntu

# apt install alien

# alien hp-i40e-

hp-i40e_2.10.19.30-3_amd64.deb generated


# dpkg -i hp-i40e_2.10.19.30-3_amd64.deb


# dpkg -L hp-i40e



>> package installed at



5. Move source package to temporary space

# mkdir /tmp/i40e

# mv hp-i40e* /tmp/i40e


6. Install new driver.

# tar zxf hp-i40e-

# cd /tmp/i40e/hp-i40e-

# make install


7. remove old driver and then load new driver

# rmmod i40e; modprobe i40e


8. update. seems automatically done during install but. confirm

# update-initramfs -u


Reboot and check new driver loaded.

[ 4.028479] i40e: Intel(R) 40-10 Gigabit Ethernet Connection Network Driver - version

Posted by 스쳐가는인연

댓글을 달아 주세요