기존 이솝 임베디드 포럼의 지식인 서비스가 게시판 형태로 변경되었습니다.

커널 디바이스 드라이버 작업 도중에 커널패닉을 만났습니다.

Unable to handle kernel NULL pointer dereference at virtual address 00000098
...

원인이 되는 지점을 찾았는데, 어찌된 상황인지 이해가 안가고 있습니다..;;


실제 커널패닉을 일으키는 지점은 다음과 같습니다.


static void transmit_chars(struct uart_omap_port *up)
{
struct circ_buf *xmit = &up->port.state->xmit;
int count;

if (up->port.irq == 73) {
printk(KERN_DEBUG "\n %d : %s / %s", __LINE__, __FUNCTION__, __FILE__);
printk(KERN_DEBUG "\n &(up->port.x_char) = 0x%08x", &(up->port.x_char));
}

if (up->port.x_char) { // <- 여기서 커널패닉이 남
serial_out(up, UART_TX, up->port.x_char);
up->port.icount.tx++;
up->port.x_char = 0;
return;
}

if (up->port.x_char) 구문을 만나는 순간 커널패닉이 납니다.

희한한 것은 up->port.x_char의 주소는 null이 아니라는 겁니다.

제가 뭔가 잘 못 이해하고 있는걸까요?

갑자기 뭔가 미궁에 빠진 기분입니다...;;
List of Articles
번호 제목 글쓴이 날짜 조회 수
5368 디바이스 드라이버에서 메모리를 잡으니 다른 스택메모리에 영향을 주... [1] bwparc 2012-05-23 1541
5367 USB Ethernet CDC로 RNDIS를 이용한 NFS구성 문의 [4] people2 2012-05-23 1597
5366 C110 소비전류가 어떻게 되나요? [6] 땜철학자 2012-05-22 1517
5365 s3c2440 usb host 질문 입니다. (꼭) kingdomy 2012-05-22 749
» NULL pointer dereference로 커널패닉이 났지만, 실제 원인이 되... bwparc 2012-05-21 1351
5363 eth0 에서 eth1로 소켓통신을 하려면 어떻게 해야되나요? [12] 은민아빠 2012-05-19 1730
5362 HDMI 연결시 제품에 화면 출력 여부 설정 방법 문의 [2] 현쓰 2012-05-18 1501
5361 삼성 V210 동시 인코딩/디코딩이 가능한가요? [5] 이영재 2012-05-18 1641
5360 안녕하세요. fork() 가 안되는 문제점이 있습니다. [2] 자미 2012-05-17 1425
5359 USB host와 gadget을 동시에 사용하는게 가능한가요? [2] 문철민 2012-05-17 1665
5358 SPI를 이용한 t-flash제어 방법 문의 [4] 김정희 2012-05-17 1378
5357 프레임 버퍼 픽셀 값 쉬프트 연산하는 방법 [1] 박용순 2012-05-17 1527
5356 [V210] I2C #1 에 관한 질문입니다. 물소래 2012-05-16 957
5355 임베디드 리눅스에서 t-login(hsdpa 3g modem)을 사용하려고 합니다. kirari83 2012-05-16 1142
5354 MountService 구조에 대해서 의문점 [3] 민이아빠 2012-05-16 1362
5353 SDCARD 영역에 App 설치 히히히 2012-05-16 810
5352 DMA 컨트롤 관련 문의 드립니다. [3] 개그맨 2012-05-15 1693
5351 LCD가 256 컬러 처럼 나오는데요... [2] 현쓰 2012-05-15 1595
5350 bootargs에서 mem은 정확히 무엇을 하는 것인가요? [2] 혜민아빠 2012-05-14 1150
5349 s3c24X usb host [1] kingdomy 2012-05-13 1418

사용자 로그인