안녕하세요..

현재 NAND는 BootLoader, Kernel, Ramdisk, application로 4개의 영역으로 나뉘어져 있습니다.

부트로드 상에서 출력 되는 배드블럭은 BootLoader, Kernel, Ramdisk 영역만을 검사합니다.

그리고 커널 메세지에서 나오는 배드 블럭은 커널에서 나누어 놓은 파티션 영역( Kernel, Ramdisk, application) 의 배드 블럭을 검사합니다.
따라서 커널에서 배드블럭이 나온것은 어플리케이션 영역에 있는 배드 블럭입니다.
이 배드블럭은 커널에서 이 배드블럭은 건너뛰게 됩니다. 따라서 사용하는데 전혀 문제가 없습니다.
단지 용량이 줄어들 뿐입니다. df 명령을 쳐 보시면 /app 영역에 활당된 부분에 bad block 만큼 사용을
하고 있게됩니다.

그럼 수고하세요.




>부트로더 상에서 출력되는 부분에는 배드 블럭이 0개라고 나옵니다.
>
>NAND Chip Check .......................
>  NAND Maker ID [EC]    NAND Size  ID [76]
>  Detect SAMSUNG [ec:76] 64MByte
>  BAD BLOCK SCAN ->
>      BootLoader, Kernel, Ramdisk Bad Block [0]
>
>하지만 부팅과정이 출력되는 부분에는 아래와 같이 Bad eraseblock이 표시가 됩니다.
>
>Scanning device for bad blocks
>Bad eraseblock 3049 at 0x02fa4000
>Bad eraseblock 4079 at 0x03fbc000
>
>커널 소스를 살펴본 결과 Nand_bbt.c에서 체크되는 것 같습니다.
>bbt는 bad block table이라고 하네요.
>
>위의 메세지로 봐서 배드 블럭이 생긴거라고 생각이 듭니다.
>
>또한 위의 메세지가 나오는 보드와 안나오는 보드의 차이점은
>
>배드블럭이 표시되는 보드는 부팅이 매우 불안정합니다.
>
>특히 아래부분에서 넘어가지를 않습니다.
>INIT: version 2.86 booting
>EXT2-fs warning: mounting unchecked fs, running e2fsck is recommended
>INIT: Entering runlevel: 3
>
>그러나 배드블럭이 표시되지 않는 보드는 부팅이 매우 원활하게 돌아갑니다.
>
>제가 램디스크를 조금 수정하여서 autologin과 nfs서버를 마운트하여 파일을 받아오는것을 /etc/rc.d/rc.local에 넣어놨는데 이것때문에 문제일것 같지는 않거든요..
>
>분면 nand flash와 관계가 있는것 같은데..  (어디까지나 제 짧은 생각이에요..^^)
>
>위의 현상에 대해서 자세하게 설명좀 부탁드리겠습니다.
>
>그리고 만약 배드 블럭 발생시에 nea, ner, nek등의 명령을 사용하게 되면
>
>배드 블럭은 안쓰는 블럭으로 만들수 있는 것인지 궁금합니다.
>
>빠른 답변 부탁드리겠습니다.
>