'vmcore'에 해당되는 글 6건

  1. 2018.02.22 :: Kernel Dump Analysis #16
  2. 2018.02.19 :: Kernel Dump Analysis #15
  3. 2018.02.13 :: Kernel Dump Analysis #14
  4. 2017.04.03 :: Kernel dump 분석 추가..
  5. 2014.03.12 :: Kernel Dump Analysis - #11
  6. 2009.05.05 :: 커널 코어덤프 분석하기...
Skills/mY Technutz 2018.02.22 13:27

와.. 대박... 일이 엄청나게 들어와..

공격적으로 오라클 리눅스를 장사하면 내가 쓰일만한 일이 있긴 하구나 하면서도

일이 이렇게 많아지면 개빡쳐서 아무것도 하기 싫어지는 현자타임같은게 온다는..

무튼, 요즘 핫하게 밀려들어오는 업무량 덕에 코어분석 일도 숭풍숭풍 막 쳐 들어오는..

이번에는 레드햇 커널 즉, Oracle Linux 에서 Cmompatibility 를 위해 제공하는

Redhat Compatible Kernel ( RHCK ) 와 관련된 커널 덤프 분석을 해주시겠다.

Technical Preview 이기 때문에 해당 부분에 대한 코드는

ASSERTCMP(op->state, ==, FSCACHE_OP_ST_DEAD);

로 수정되는 식으로 상황을 정리하는 코드가 추가된 것 같다.
( 수정된 코드 다운받거나 찾기 귀찮다! 바쁘다. 점심안에 써야한다 글을. )

물론 픽스는 해당 fscache 모듈을 사용하지 않도록 하거나,

( cachefilesd 데몬을 Disable 한다. )

ELSA-2017-0307 또는 ELSA-2017-0817 ( RHSA-2017-0817 대응) 에서 권고하는

kernel-2.6.32-696.el6 이후의 최신 버젼으로 업그레이드 하거나

6.8 GA kernel-2.6.32-642.el6 이하 커널로 다운그레이드 하면 된다고

Redhat 에서 이야기 하는 것 같다.

사실 개인생각으로는 커널 업그레이드를 해봤자 동일할것 같긴 해서

구지 필요하지 않다면 Cachefilesd 를 Off 하는게 더 좋을것 같다고 생각된다.

mount option 에서 fsc 가 생겼는데 이게 없으면 자동으로 fscache 가 활성화 된다고 하는 것 같다.

레드햇 이슈라 명확하게 솔루션 코드가 확인되지 않는 상태라 잘 모르겠으나

분석 방법이랑 워크어라운드 기입되 있음 이미 난 충분히 세계를 위해 기여한거시다...

'Skills > mY Technutz' 카테고리의 다른 글

Kernel Dump Analysis #17  (0) 2019.04.04
libfc: Update rport reference counting bug - 1368175  (0) 2018.03.29
Kernel Dump Analysis #16  (0) 2018.02.22
Kernel Dump Analysis #15  (0) 2018.02.19
Kernel Dump Analysis #14  (0) 2018.02.13
Kernel Crash dump Analysis - #13  (0) 2017.12.20
posted by mirr

댓글을 달아 주세요

Skills/mY Technutz 2018.02.19 13:18

저번 14 에 이어진 내용이라고 볼 수 있다.

지난시간 왜 시스템 커널 분석에서 fc_stat, fc_lport 에 집중했는지 나오는 부분이다.

이전 게시글에서와 동일하게 ffff880103e67a00  를 참조하는 부분에서 문제가 발생하였다.

따라서 fc_lport 에 관련되어 메모리를 사용함에 있어, 이미 해제된 메모리를 재참조하거나,

메모리 corruption 조건이 발생되고 있다는 것을 의미한다.

역시 저번 게시글과 같이 해당 코드에 논리적 오류나 Race condition 발생 여부,

Used-after-freed 현상에 대해서 더 살펴봐야 하는 상태이지만,

코드 상 특별히 문제될만한 부분은 발견되지 않았다는 점이 현 문제의 가장 큰 난관이다.

지금은 개발팀에서 in-house 로 동일 환경을 구성 후 재현테스트를 하고 있는 중이다.

이는 장비에 대한 특성 ( 펌웨어 문제 또는 하드웨어 관련 된 정보의 괴리 ),

즉 하드웨어 문제를 배제할 수 없는 의심스러운 부분이 있다는 것을 의미한다.



posted by mirr

댓글을 달아 주세요

Skills/mY Technutz 2018.02.13 23:40

이젠 뭐, 커널에 대한 덤프 분석이라기 보다는

CRASH tool 의 사용법과, 이슈에 따라서 분석을 진행하는 방법에 대한 Guide 가 되어가는 것 같다.

이전엔 주절주절 말을 많이한것 같았는데, 오늘은 주로 코드나 어셈의 흐름을 위주로 설명해 볼까 한다.

시스템이 갑작스럽게 코어와 함께 리붓되었단다.

참고로 현재 이슈는 다른 이슈와 연결되어 발생한 이슈로써,

아직 해결되지는 않은 이슈이며, fc_lport 의 값을 찾기 위한 이유에 대해서 밝히지 않고 있었다.

물론 이어지는 덤프분석이 또 있을 것이며, 거기서 이유가 밝혀질 것이다.

여기서 중요한 부분은 위의 로그에서 빨간색으로 표현한 두줄의 스택로그이다.

현재 의심되는 부분은 RBX 로 들어가는 메모리가 Corruption 되거나 used-after-freed 현상인데,

두줄의 로그를 보았을 경우 used-after-freed 가 되지 않을까 싶다.

이번 경우에는 확실히 used-after-freed 현상이 가장 가깝기 때문이다.

즉, 해제된 것을 다시 사용하거나, Double free race condition 등이 발생하고 있다는 것이다.

물론... 소스코드상에서는 아직 오류를 찾을 수 없는 상황이다.

보다 자세하고 큰 그림은 다음 분석을 통해 함께 그려보도록 하겠다.

'Skills > mY Technutz' 카테고리의 다른 글

Kernel Dump Analysis #16  (0) 2018.02.22
Kernel Dump Analysis #15  (0) 2018.02.19
Kernel Dump Analysis #14  (0) 2018.02.13
Kernel Crash dump Analysis - #13  (0) 2017.12.20
커널이 지원하는 기능을 확인하는 습관.  (1) 2017.02.06
Kexec/Kdump 의 제약사항에 대해서  (4) 2016.01.14
posted by mirr

댓글을 달아 주세요

Skills/System 2017.04.03 17:44

흥미있는 버그를 발견했다.. 물론 알려진 버그인데,

분석하는 과정을 개인적으로 업데이트하고 공유한다.

이슈는 엑사데이타에서 사용하는 UEK2 (2.6.39-400.264.1) 커널의 crash 이다.

이는 사실상 Async/Direct IO 상태로 사용시 ext4 의 io end 처리 구조체 및 펑션에서

더블프리가 될 수 있는 버그로 알려져있으며 패치가 나와있다.

Fixed -> UEK2 2.6.39-400.277.1


posted by mirr

댓글을 달아 주세요

Skills/mY Technutz 2014.03.12 15:47

Kernel Crash 분석 업데이트 하나 더.


일이.... 있긴있는데, 분석하기 좀 집중안되는 놈이라 다른짓 하고 있음..


(우선순위가 이게 더 높기에 하고 있는거다. 절대 우선순위 무시하는법 없다... )


백업용도로 사용하는 몇개 서버군들중 두대의 서버가 비 동시적 시간에 Crash 되어


리붓되었다는 것이 배경...



사실, 이 과정만 보아서는 igxbe 드라이버가 Invalid data 를 넘겨주었기 때문인지,

애초에 Kernel 에서 skb allocation 에 논리적 이슈가 있었던 것인지 알 수 없으나,


어찌되었든, 둘다 커널에 포함되어 제공되는 Internal 부분이고,


Shipped driver 이며, allocation 이슈이기 때문에,


커널 Defect 로 판단되어 업그레이드나 픽스가 필요 한 상황...


(실제로 UEK2 커널의 sk_buff allocation 부분을 보면, memory allocation 체크하는 부분이

더 간결하게 정리되어 있다. )


게다가 역시나 이녀석도 UEK R1 인지라.... UEK Release 2 로 업그레이드를


하라는 것으로 가이드 할 수 밖에 없었다..........


이번엔 좀 더 Advanced crash 사용법을 보여준것 같아서.....


별로 뿌듯하진 않은데, 어차피 알아듣는 사람은 안알랴줌에도 스스로  깨우칠 것이고,


깨우치려 들지 않는 자는 알랴줌에도 깨우치지 못할 것이기에....


"밥줄" 좀 품....막 confidential 위반이라고 머라카면,

( 아... UEK 소스라인이 문제되려나? 근데 별반 차이 없는데 Vanila 커널이랑 ㅋ )


"옴마~? 앙대욤"



2014/01/06 - [Skills/System] - Kernel dump analysis about the bug called as "devide by zero"

2012/01/01 - [Skills/mY Technutz] - Kernel Dump Analysis #10



'Skills > mY Technutz' 카테고리의 다른 글

Kexec/Kdump 의 제약사항에 대해서  (4) 2016.01.14
Patch of Egypt timezone data - Urgent  (0) 2014.06.18
Kernel Dump Analysis - #11  (0) 2014.03.12
HAL 데몬 사용하기 (Simple)  (0) 2012.04.03
Enhanced Using Sar data collector  (1) 2012.03.18
Kernel Dump Analysis #10  (2) 2012.01.01
posted by mirr

댓글을 달아 주세요

Skills/System 2009.05.05 02:15
아직 계속 정리중이지만 ( case by 부분 )

일단 crash 라는 커널덤프 분석도구의 강력함을 소개하기 위해 포스팅....

실제 문서는 스프링노트에 있다..... 커널 코어덤프 분석... 그 빡씨디 빡씬 세계 흑....

Kernel Crash Dump Analysis


'Skills > System' 카테고리의 다른 글

효율적 데이타베이스관리를 위한 MySQL 세미나..  (0) 2009.06.17
VMware Essential Plus 구축..  (0) 2009.06.17
커널 코어덤프 분석하기...  (0) 2009.05.05
advise path 메시지 로그  (0) 2009.04.22
CentOS 5.3 Released..  (0) 2009.04.01
QLogic HBA 2460 카드 Failover  (0) 2008.11.01
posted by mirr

댓글을 달아 주세요