I had to write this application as a university project.

The task was to generate a word ladder, which starts and ends on provided words. Both words have to be in a dictionary.

Every single step in the ladder must only differ in one character from the word before. The aim of the word-ladder is to find the shortest path from start word to end word in the whole graph.

Continue reading

I check today some old CDs, some of them were from ’90 so of course they didn’t work. With one of them was a problem with reading… and ejecting CD-ROM. My PC wasn’t able to eject the CD even calling this command from root:

eject sr0 -rm

didn’t work.

DMESG said:

[ 1067.416522] Buffer I/O error on device sr0, logical block 0
[ 1075.923084] sr 1:0:0:0: [sr0] Unhandled sense code
[ 1075.923088] sr 1:0:0:0: [sr0] Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE
[ 1075.923097] sr 1:0:0:0: [sr0] Sense Key : Hardware Error [current]
[ 1075.923105] sr 1:0:0:0: [sr0] Add. Sense: Timeout on logical unit
[ 1075.923115] sr 1:0:0:0: [sr0] CDB: Read(10): 28 00 00 00 00 00 00 00 02 00
[ 1075.923130] end_request: I/O error, dev sr0, sector 0
[ 1075.923137] Buffer I/O error on device sr0, logical block

The CD wasn’t mounted, there was only a thread for the device, which wasn’t even mounted (I also wasn’t able to mount it from root):

umount: /dev/sr0: not mounted



root@Agilob-PC:# lsof /dev/sr0
blkid 4079 root 3r BLK 11,0 0t0 7203 /dev/sr0

root@Agilob-PC:# kill -s 9 4079
root@Agilob-PC:# eject

Worked for me!