6 Aug 2012 04:02
Oops in loop_clr_fd => bd_set_size
Alan Curry <pacman <at> kosh.dhis.org>
2012-08-06 02:02:45 GMT
2012-08-06 02:02:45 GMT
I got an Oops from running "losetup -d /dev/loop2". The trace shows loop_clr_fd calling bd_set_size, and the parameter bdev appears to have a NULL in its bd_disk field. The losetup command was run as part of a script that did this: losetup -d /dev/loop5 losetup -d /dev/loop4 losetup -d /dev/loop3 losetup -d /dev/loop2 losetup -d /dev/loop1 The kernel was processing a lot of loop_clr_fd's in a quick sequence. The first three worked, and the loop2 Oopsed. After that I ran the losetup -d /dev/loop1 separately and it worked. The process that caused the Oops didn't die: PID TTY STAT TIME COMMAND 5055 pts/1 D 0:00 [losetup] I also tried to query the current state of the device with "losetup loop2" after the Oops. That gave me a second stuck process: PID TTY STAT TIME COMMAND 5059 pts/1 D+ 0:00 losetup /dev/loop2 These processes are still alive, in their permanent D state. The rest of the system is still functional. I'll try to keep it that way for now, in case anyone wants to suggest some debugging actions that I can take. The loop devices were set up to handle an unusual situation: I have a whole hard drive image contained within a partition on another hard drive. Each loop device corresponds to a partition of the imaged drive. They were set(Continue reading)
RSS Feed