Skip to contentSkip to conversation

2.5.44-ac2 cdrom eject panic

Bug Nyk Tarr 4 participants 18 messages Oct 25, 2002 – Oct 28, 2002 Block layer

lore
Share & tools
lore

Nyk Tarr

author
#0 lore raw

Hi,

I got this nice error after doing an 'eject /cdrom'

Oct 25 11:28:29 natsu kernel: Kernel panic: Unable to find device associated with request
Oct 25 11:28:29 natsu kernel: Debug: sleeping function called from illegal context at include/linux/rwsem.h:43
Oct 25 11:28:29 natsu kernel: Call Trace:
Oct 25 11:28:29 natsu kernel:  [get_super_to_sync+127/176] get_super_to_sync+0x7f/0xb0
Oct 25 11:28:29 natsu kernel:  [sync_inodes+21/160] sync_inodes+0x15/0xa0
Oct 25 11:28:29 natsu kernel:  [sys_sync+27/64] sys_sync+0x1b/0x40
Oct 25 11:28:29 natsu kernel:  [panic+255/272] panic+0xff/0x110
Oct 25 11:28:29 natsu kernel:  [scsi_request_fn+637/1200] scsi_request_fn+0x27d/0x4b0
Oct 25 11:28:29 natsu kernel:  [generic_unplug_device+102/112] generic_unplug_device+0x66/0x70
Oct 25 11:28:29 natsu kernel:  [blk_do_rq+93/144] blk_do_rq+0x5d/0x90
Oct 25 11:28:29 natsu kernel:  [scsi_cmd_ioctl+471/656] scsi_cmd_ioctl+0x1d7/0x460
Oct 25 11:28:29 natsu kernel:  [cdrom_ioctl+69/3376] cdrom_ioctl+0x45/0xd30
Oct 25 11:28:29 natsu kernel:  [blkdev_open+56/80] blkdev_open+0x38/0x50
Oct 25 11:28:29 natsu kernel:  [dentry_open+366/432] dentry_open+0x16e/0x1b0
Oct 25 11:28:29 natsu kernel:  [filp_open+104/112] filp_open+0x68/0x70
Oct 25 11:28:29 natsu kernel:  [blkdev_ioctl+176/1104] blkdev_ioctl+0xb0/0x4eb
Oct 25 11:28:29 natsu kernel:  [sys_ioctl+234/592] sys_ioctl+0xea/0x340
Oct 25 11:28:29 natsu kernel:  [syscall_call+7/11] syscall_call+0x7/0xb
Oct 25 11:28:29 natsu kernel: 
Oct 25 11:28:29 natsu kernel: ------------[ cut here ]------------
Oct 25 11:28:29 natsu kernel: kernel BUG at fs/buffer.c:1248!
Oct 25 11:28:29 natsu kernel: invalid operand: 0000
Oct 25 11:28:29 natsu kernel: nls_cp437 vfat fat nls_iso8859-1 isofs sg ppp_generic slhc cls_u32 sch_sfq sch_cbq snd-seq-midi snd-emu10k1-synth snd-emux-synth snd-seq-midi-emul snd-seq-virmidi snd-seq-oss snd-seq-midi-event snd-seq snd-pcm-oss snd-mixer-oss snd-ens1371 snd-emu10k1 snd-pcm snd-timer snd-rawmidi snd-seq-device snd-ac97-codec snd-util-mem snd-hwdep snd soundcore ipt_LOG ipt_unclean ipt_REJECT ipt_state iptable_filter iptable_nat ip_conntrack_ftp ipt_helper ip_tables ip_conntrack uhci-hcd usbcore 8139too mii crc32 joydev analog emu10k1-gp gameport rtc  
Oct 25 11:28:29 natsu kernel: CPU:    0
Oct 25 11:28:29 natsu kernel: EIP:    0060:[lookup_bh+173/186]    Not tainted
Oct 25 11:28:29 natsu kernel: EFLAGS: 00010002
Oct 25 11:28:29 natsu kernel: EIP is at lookup_bh+0xad/0xba
Oct 25 11:28:29 natsu kernel: eax: 00000001   ebx: c6a86000   ecx: 00000000   edx: c94f0000
Oct 25 11:28:29 natsu kernel: esi: 012c402f   edi: 012c402f   ebp: 00000000   esp: c6a87c68
Oct 25 11:28:29 natsu kernel: ds: 0068   es: 0068   ss: 0068
Oct 25 11:28:29 natsu kernel: Process eject (pid: 21077, threadinfo=c6a86000 task=caceadc0)
Oct 25 11:28:29 natsu kernel: Stack: 00000000 c6a86000 012c402f 00000000 c133d640 c0146f27 c133d640 012c402f 
Oct 25 11:28:29 natsu kernel:        00000000 00000200 c6a86000 012c402f 00000000 c133d640 c0146fa7 c133d640 
Oct 25 11:28:29 natsu kernel:        012c402f 00000000 00000200 c6a86000 012c402f 00000000 c133d640 c0147027 
Oct 25 11:28:29 natsu kernel: Call Trace:
Oct 25 11:28:29 natsu kernel:  [__find_get_block+55/128] __find_get_block+0x37/0x80
Oct 25 11:28:29 natsu kernel:  [__getblk+55/128] __getblk+0x37/0x80
Oct 25 11:28:29 natsu kernel:  [__bread+55/144] __bread+0x37/0x90
Oct 25 11:28:29 natsu kernel:  [<d33ae20d>] default_fat_bread+0x2d/0x40 [fat]
Oct 25 11:28:29 natsu kernel:  [<d33ae09e>] fat_bread+0x1e/0x30 [fat]
Oct 25 11:28:29 natsu kernel:  [<d33b3e4d>] fat_write_inode_R0ba59c09+0x6d/0x1f0 [fat]
Oct 25 11:28:29 natsu kernel:  [write_inode+68/80] write_inode+0x44/0x50
Oct 25 11:28:29 natsu kernel:  [__sync_single_inode+373/416] __sync_single_inode+0x175/0x1a0
Oct 25 11:28:29 natsu kernel:  [sync_sb_inodes+396/576] sync_sb_inodes+0x18c/0x240
Oct 25 11:28:29 natsu kernel:  [sync_inodes_sb+125/160] sync_inodes_sb+0x7d/0xa0
Oct 25 11:28:29 natsu kernel:  [sync_inodes+43/160] sync_inodes+0x2b/0xa0
Oct 25 11:28:29 natsu kernel:  [sys_sync+27/64] sys_sync+0x1b/0x40
Oct 25 11:28:29 natsu kernel:  [panic+255/272] panic+0xff/0x110
Oct 25 11:28:29 natsu kernel:  [scsi_request_fn+637/1200] scsi_request_fn+0x27d/0x4b0
Oct 25 11:28:29 natsu kernel:  [generic_unplug_device+102/112] generic_unplug_device+0x66/0x70
Oct 25 11:28:29 natsu kernel:  [blk_do_rq+93/144] blk_do_rq+0x5d/0x90
Oct 25 11:28:29 natsu kernel:  [scsi_cmd_ioctl+471/656] scsi_cmd_ioctl+0x1d7/0x460
Oct 25 11:28:29 natsu kernel:  [cdrom_ioctl+69/3376] cdrom_ioctl+0x45/0xd30
Oct 25 11:28:29 natsu kernel:  [blkdev_open+56/80] blkdev_open+0x38/0x50
Oct 25 11:28:29 natsu kernel:  [dentry_open+366/432] dentry_open+0x16e/0x1b0
Oct 25 11:28:29 natsu kernel:  [filp_open+104/112] filp_open+0x68/0x70
Oct 25 11:28:29 natsu kernel:  [blkdev_ioctl+176/1104] blkdev_ioctl+0xb0/0x4eb
Oct 25 11:28:29 natsu kernel:  [sys_ioctl+234/592] sys_ioctl+0xea/0x340
Oct 25 11:28:29 natsu kernel:  [syscall_call+7/11] syscall_call+0x7/0xb
Oct 25 11:28:29 natsu kernel: 
Oct 25 11:28:29 natsu kernel: Code: 0f 0b e0 04 12 6d 2b c0 e9 6d ff ff ff e8 d5 d5 fb ff e9 7d 
Oct 25 11:28:29 natsu kernel:  <6>note: eject[21077] exited with preempt_count 2
Oct 25 11:30:18 natsu kernel: SysRq : SAK
Oct 25 11:30:18 natsu kernel: SAK: killed process 479 (XFree86): fd#4 opened to the tty
Oct 25 11:30:18 natsu kernel: MTRR: setting reg 1
Oct 25 11:30:19 natsu modprobe: modprobe: Can't locate module char-major-10-134
Oct 25 11:30:20 natsu kernel: MTRR: setting reg 1
Oct 25 11:30:20 natsu last message repeated 4 times
Oct 25 11:30:32 natsu kernel: SysRq : Emergency Sync
Oct 25 11:30:32 natsu kernel: Syncing device sd(8,22) ... OK
Oct 25 11:30:32 natsu kernel: Syncing device sd(8,17) ... OK
Oct 25 11:30:32 natsu kernel: Syncing device sd(8,23) ... OK
Oct 25 11:30:32 natsu kernel: Syncing device sd(8,24) ... OK
Oct 25 11:30:32 natsu kernel: Syncing device sd(8,1) ... OK
Oct 25 11:30:32 natsu kernel: Syncing device ide0(3,1) ... OK
Oct 25 11:30:32 natsu kernel: Syncing device ide0(3,69) ... OK
Oct 25 11:30:32 natsu kernel: Done.
Oct 25 11:30:34 natsu kernel: SysRq : Emergency Remount R/O
Oct 25 11:30:34 natsu kernel: Remounting device sd(8,22) ... OK
Signature · 3 lines
/__
\_|\/
   /\
#1 lore raw
Quoted 4 lines · Nyk Tarr

Hi,

I got this nice error after doing an 'eject /cdrom'

[snip]

2.5.44 and thus 2.5.44-acX has seriously broken REQ_BLOCK_PC, so it's no wonder that it breaks hard. Alan, I can sync the sgio patches for you if you want.

Nyk, if you could try

*.kernel.org/pub/linux/kernel/people/axboe/patches/v2.5/2.5.44/sgio-15.bz2

that would be great, thanks.

Signature · 1 line
Jens Axboe
#2 lore raw

Hi Jens!

Quoted 7 lines · Jens Axboe

2.5.44 and thus 2.5.44-acX has seriously broken REQ_BLOCK_PC, so it's no wonder that it breaks hard. Alan, I can sync the sgio patches for you if you want.

Nyk, if you could try *.kernel.org/pub/linux/kernel/people/axboe/patches/v2.5/2.5.44/sgio-15.bz2 that would be great, thanks.

Is this the patch Jörg Schilling was testing to get DMA with the new dev=/dev/hd* interface working? I just did some tests. Audio CD ripping worked just fine. When I try to burn a CD I get a kernel panic. Are you intersted in further results?

regards
Markus

#3 lore raw
Quoted 7 lines · Markus Plail

Hi Jens!

Quoted 3 lines · Jens Axboe

2.5.44 and thus 2.5.44-acX has seriously broken REQ_BLOCK_PC, so it's no wonder that it breaks hard. Alan, I can sync the sgio patches for you if you want.

Quoted 8 lines
Quoted 3 lines

Nyk, if you could try *.kernel.org/pub/linux/kernel/people/axboe/patches/v2.5/2.5.44/sgio-15.bz2 that would be great, thanks.

Is this the patch Jörg Schilling was testing to get DMA with the new dev=/dev/hd* interface working? I just did some tests. Audio CD ripping worked just fine. When I try to burn a CD I get a kernel panic. Are you intersted in further results?

Yes, Joerg and others have been testing it with good results. sgio-15 seemed to be a bad version though, I'll put up sgio-16 later today. If you could test that, I would much appreciate it.

Signature · 1 line
Jens Axboe
#4 lore raw
In reply to Markus Plail
Quoted 7 lines · Markus Plail

Hi Jens!

Quoted 3 lines · Jens Axboe

2.5.44 and thus 2.5.44-acX has seriously broken REQ_BLOCK_PC, so it's no wonder that it breaks hard. Alan, I can sync the sgio patches for you if you want.

Quoted 8 lines
Quoted 3 lines

Nyk, if you could try *.kernel.org/pub/linux/kernel/people/axboe/patches/v2.5/2.5.44/sgio-15.bz2 that would be great, thanks.

Is this the patch Jörg Schilling was testing to get DMA with the new dev=/dev/hd* interface working? I just did some tests. Audio CD ripping worked just fine. When I try to burn a CD I get a kernel panic. Are you intersted in further results?

Please try:

*.kernel.org/pub/linux/kernel/people/axboe/patches/v2.5/2.5.44/sgio-16.bz2

That should fix the silly panic.

Signature · 1 line
Jens Axboe
#5 lore raw

Hi Jens!

Quoted 2 lines · Jens Axboe

Please try:
*.kernel.org/pub/linux/kernel/people/axboe/patches/v2.5/2.5.44/sgio-16.bz2

                                                                     ^^16b
Quoted 1 line

That should fix the silly panic.

Yes it does. I can't burn though. I attached the cdrecord output. Hava a look at the Blocks numbers. Although the image is only 500MB, it says it wouldn't fit on the disc which is 700MB. In another try it wanted to start burning although I had a bought audio CD in the burner.

HTH
Markus

[plail@plailis_lfs:001]$ cdburn.sh "Fast and Furious CD 2/2" fast_furious-2.avi test.vob 
Cdrecord 1.11a38 (i686-pc-linux-gnu) Copyright (C) 1995-2002 Jörg Schilling
TOC Type: 1 = CD-ROM
scsidev: '/dev/hdd'
devname: '/dev/hdd'
scsibus: -2 target: -2 lun: -2
Warning: Open by 'devname' is unintentional and not supported.
Linux sg driver version: 3.5.27
Using libscg version 'schily-0.7'
Using libscg transport code version 'schily-scsi-linux-sg.c-1.73'
atapi: 1
Device type    : Removable CD-ROM
Version        : 2
Response Format: 2
Capabilities   : 
Vendor_info    : 'ATAPI   '
Identifikation : 'CD-R/RW 20X10   '
Revision       : 'H.FH'
Device seems to be: Generic mmc CD-RW.
Drive current speed: 16
Drive default speed: 16
Drive max speed    : 16
Selected speed     : 16
Using generic SCSI-3/mmc CD-R driver (mmc_cdr).
Driver flags   : MMC SWABAUDIO BURNFREE 
Supported modes: TAO PACKET SAO RAW/R16 RAW/R96R
Drive buf size : 1630208 = 1592 KB
FIFO size      : 4194304 = 4096 KB
Encoding speed : 385x (28852 sectors/s) for libedc from Heiko Eißfeldt
Track 01: data   500 MB        
track: 1 start: 0 pregap: 150
Total size:      574 MB (56:53.97) = 256048 sectors
Lout start:      574 MB (56:55/73) = 256048 sectors
 41 00 00 14 00 00 00 00
 41 01 00 10 00 00 00 00
 41 01 01 10 00 00 02 00
 41 AA 01 14 00 38 37 49
Track 1 start 0
Track 2 start 256048
 41 00 A0 00 00 00 00 01 00 00 00 00
 41 00 A1 00 00 00 00 01 00 00 00 00
 41 00 A2 00 00 00 00 56 55 73 00 00
 41 00 01 00 00 00 00 00 02 00 00 00
Current Secsize: 2048
ATIP info from disk:
  Indicated writing power: 4
  Is not unrestricted
  Is not erasable
  Disk sub type: Medium Type A, high Beta category (A+) (3)
  ATIP start of lead in:  -11077 (97:34/23)
  ATIP start of lead out: 359848 (79:59/73)
Disk type:    Long strategy type (Cyanine, AZO or similar)
Manuf. index: 11
Manufacturer: Mitsubishi Chemical Corporation
Blocks total: 359848 Blocks current: 26848 Blocks remaining: -229200
cdrecord: WARNING: Data may not fit on current disk.
cdrecord: Notice: Most recorders cannot write CD's >= 90 minutes.
cdrecord: Notice: Use -ignsize option to allow >= 90 minutes.
cdrecord: Notice: Overburning active. Trying to write more than the official disk capacity.
Starting to write CD/DVD at speed 16 in real RAW/RAW96R mode for single session.
Last chance to quit, starting real write    0 seconds. Operation starts.
Waiting for reader process to fill input buffer ... input buffer ready.
BURN-Free is OFF.
Performing OPC...
cdrecord: WARNING: Drive returns wrong startsec (333000) using 0 from ATIP
cdrecord: Illegal startsec (0)
cdrecord: Could not write Lead-in.
Writing  time:    0.020s
cdrecord: fifo had 64 puts and 0 gets.
cdrecord: fifo was 0 times empty and 0 times full, min fill was 100%.
[plail@plailis_lfs:001]$ 
#6 lore raw
Quoted 5 lines · Markus Plail

Hi Jens!

Quoted 2 lines · Jens Axboe

Please try:
*.kernel.org/pub/linux/kernel/people/axboe/patches/v2.5/2.5.44/sgio-16.bz2

Quoted 7 lines
                                                                     ^^16b
Quoted 1 line

That should fix the silly panic.

Yes it does. I can't burn though. I attached the cdrecord output. Hava a look at the Blocks numbers. Although the image is only 500MB, it says it wouldn't fit on the disc which is 700MB. In another try it wanted to start burning although I had a bought audio CD in the burner.

As a hack, can you change:

	if ((rq->flags & REQ_BLOCK_PC) && !rq->errors)
		rq->errors = sense_key;

in drivers/ide/ide-cd.c:cdrom_decode_status() to

	if ((rq->flags & REQ_BLOCK_PC) && !rq->errors)
		rq->errors = 2;
Signature · 1 line
Jens Axboe
#7 lore raw

Hi Jens!

Quoted 10 lines · Jens Axboe
Quoted 5 lines · Markus Plail

Yes it does. I can't burn though. I attached the cdrecord output. Hava a look at the Blocks numbers. Although the image is only 500MB, it says it wouldn't fit on the disc which is 700MB. In another try it wanted to start burning although I had a bought audio CD in the burner.

As a hack, can you change:

	if ((rq->flags & REQ_BLOCK_PC) && !rq->errors)

rq->errors = sense_key;

Quoted 2 lines

in drivers/ide/ide-cd.c:cdrom_decode_status() to

	if ((rq->flags & REQ_BLOCK_PC) && !rq->errors)

rq->errors = 2;

Works fine now :-)
Now if C2 scans would work that'd be great ;-)

[plail@plailis_lfs:plail]$ readcd dev=/dev/hdc -c2scan
Read  speed:  7056 kB/s (CD  40x, DVD  5x).
Write speed:     0 kB/s (CD   0x, DVD  0x).
Capacity: 4116432 Blocks = 8232864 kBytes = 8039 MBytes = 8430 prMB
Sectorsize: 2048 Bytes
Copy from SCSI (0,0,0) disk to file '/dev/null'
end:   4116432
addr:        0 cnt: 99^Mreadcd: Operation not permitted. Cannot send SCSI cmd vi
readcd: Operation not permitted. Cannot send SCSI cmd via ioctl

Thanks
Markus

#8 lore raw
Quoted 12 lines · Markus Plail

Hi Jens!

Quoted 8 lines · Jens Axboe
Quoted 5 lines · Markus Plail

Yes it does. I can't burn though. I attached the cdrecord output. Hava a look at the Blocks numbers. Although the image is only 500MB, it says it wouldn't fit on the disc which is 700MB. In another try it wanted to start burning although I had a bought audio CD in the burner.

As a hack, can you change:

Quoted 7 lines
Quoted 1 line
	if ((rq->flags & REQ_BLOCK_PC) && !rq->errors)

rq->errors = sense_key;

Quoted 2 lines

in drivers/ide/ide-cd.c:cdrom_decode_status() to

	if ((rq->flags & REQ_BLOCK_PC) && !rq->errors)

rq->errors = 2;

Works fine now :-)

Cool great, the above change was already in my tree when I sent the suggestion, glad to hear it works.

Quoted 11 lines

Now if C2 scans would work that'd be great ;-)

[plail@plailis_lfs:plail]$ readcd dev=/dev/hdc -c2scan
Read  speed:  7056 kB/s (CD  40x, DVD  5x).
Write speed:     0 kB/s (CD   0x, DVD  0x).
Capacity: 4116432 Blocks = 8232864 kBytes = 8039 MBytes = 8430 prMB
Sectorsize: 2048 Bytes
Copy from SCSI (0,0,0) disk to file '/dev/null'
end:   4116432
addr:        0 cnt: 99^Mreadcd: Operation not permitted. Cannot send SCSI cmd vi
readcd: Operation not permitted. Cannot send SCSI cmd via ioctl

Interesting, have no tried readcd at all myself. Will give it a spin and fix this tomorrow.

Signature · 1 line
Jens Axboe
#9 lore raw
Quoted 12 lines · Jens Axboe
Quoted 11 lines

Now if C2 scans would work that'd be great ;-)

[plail@plailis_lfs:plail]$ readcd dev=/dev/hdc -c2scan
Read  speed:  7056 kB/s (CD  40x, DVD  5x).
Write speed:     0 kB/s (CD   0x, DVD  0x).
Capacity: 4116432 Blocks = 8232864 kBytes = 8039 MBytes = 8430 prMB
Sectorsize: 2048 Bytes
Copy from SCSI (0,0,0) disk to file '/dev/null'
end:   4116432
addr:        0 cnt: 99^Mreadcd: Operation not permitted. Cannot send SCSI cmd vi
readcd: Operation not permitted. Cannot send SCSI cmd via ioctl
Quoted 2 lines

Interesting, have no tried readcd at all myself. Will give it a spin and fix this tomorrow.

It uses SCSI_IOCTL_SEND_COMMAND ioctl, an old piece of crap interface instead of libscg. I can add the 50 lines or so to emulate that ioctl, but it would probably be better if readcd just got converted to use libscg instead.

Signature · 1 line
Jens Axboe
#10 lore raw
Quoted 13 lines · Jens Axboe
Quoted 12 lines · Jens Axboe
Quoted 11 lines

Now if C2 scans would work that'd be great ;-)

[plail@plailis_lfs:plail]$ readcd dev=/dev/hdc -c2scan
Read  speed:  7056 kB/s (CD  40x, DVD  5x).
Write speed:     0 kB/s (CD   0x, DVD  0x).
Capacity: 4116432 Blocks = 8232864 kBytes = 8039 MBytes = 8430 prMB
Sectorsize: 2048 Bytes
Copy from SCSI (0,0,0) disk to file '/dev/null'
end:   4116432
addr:        0 cnt: 99^Mreadcd: Operation not permitted. Cannot send SCSI cmd vi
readcd: Operation not permitted. Cannot send SCSI cmd via ioctl
Quoted 7 lines
Quoted 2 lines

Interesting, have no tried readcd at all myself. Will give it a spin and fix this tomorrow.

It uses SCSI_IOCTL_SEND_COMMAND ioctl, an old piece of crap interface instead of libscg. I can add the 50 lines or so to emulate that ioctl, but it would probably be better if readcd just got converted to use libscg instead.

OK. Can you get in touch with Jörg to get that sorted out? Or should I post to cdwrite ML?

regards
Markus

#11 lore raw
Quoted 17 lines · Markus Plail
Quoted 15 lines · Jens Axboe
Quoted 14 lines · Jens Axboe
Quoted 11 lines

Now if C2 scans would work that'd be great ;-)

[plail@plailis_lfs:plail]$ readcd dev=/dev/hdc -c2scan
Read  speed:  7056 kB/s (CD  40x, DVD  5x).
Write speed:     0 kB/s (CD   0x, DVD  0x).
Capacity: 4116432 Blocks = 8232864 kBytes = 8039 MBytes = 8430 prMB
Sectorsize: 2048 Bytes
Copy from SCSI (0,0,0) disk to file '/dev/null'
end:   4116432
addr:        0 cnt: 99^Mreadcd: Operation not permitted. Cannot send SCSI cmd vi
readcd: Operation not permitted. Cannot send SCSI cmd via ioctl

Interesting, have no tried readcd at all myself. Will give it a spin and fix this tomorrow.

Quoted 7 lines
Quoted 4 lines

It uses SCSI_IOCTL_SEND_COMMAND ioctl, an old piece of crap interface instead of libscg. I can add the 50 lines or so to emulate that ioctl, but it would probably be better if readcd just got converted to use libscg instead.

OK. Can you get in touch with Jörg to get that sorted out? Or should I post to cdwrite ML?

I'm trying to get it fixed, it looks as though I may have been premature in saying that it uses SCSI_IOCTL_SEND_COMMAND is the reason it doesn't work (of course I found this out after doing the complete emulation!). Basically, from an strace, it looks as if ioctl(.., SG_IO, ..) returns -ENOTTY after another ioctl does so even though it has completed many times in the past on the same fd. Strange.

So no worries, I'll get it sorted. And I do talk to Joerg from time to time myself.

Signature · 1 line
Jens Axboe
author
#12 lore raw
In reply to Jens Axboe
Quoted 12 lines · Jens Axboe
Quoted 4 lines · Nyk Tarr

Hi,

I got this nice error after doing an 'eject /cdrom'

[snip]

2.5.44 and thus 2.5.44-acX has seriously broken REQ_BLOCK_PC, so it's no wonder that it breaks hard. Alan, I can sync the sgio patches for you if you want.

Quoted 5 lines

Nyk, if you could try

*.kernel.org/pub/linux/kernel/people/axboe/patches/v2.5/2.5.44/sgio-15.bz2

that would be great, thanks.

This also seems to hang and die. No panic in the logs this time, but some stuff scrolling off the screen on console. Sadly I've nothing to use as serial console at the mo' but I'll try some other options...

Signature · 3 lines
/__
\_|\/
   /\
#13 lore raw
Quoted 15 lines · Nyk Tarr
Quoted 14 lines · Jens Axboe
Quoted 4 lines · Nyk Tarr

Hi,

I got this nice error after doing an 'eject /cdrom'

[snip]

2.5.44 and thus 2.5.44-acX has seriously broken REQ_BLOCK_PC, so it's no wonder that it breaks hard. Alan, I can sync the sgio patches for you if you want.

Nyk, if you could try

Quoted 7 lines
Quoted 3 lines

*.kernel.org/pub/linux/kernel/people/axboe/patches/v2.5/2.5.44/sgio-15.bz2

that would be great, thanks.

This also seems to hang and die. No panic in the logs this time, but some stuff scrolling off the screen on console. Sadly I've nothing to use as serial console at the mo' but I'll try some other options...

Please try sgio-16 from the above location. Ejecting works fine for me, it even manages to close the tray when I ask it to.

Signature · 1 line
Jens Axboe
#14 lore raw
Quoted 18 lines · Jens Axboe
Quoted 17 lines · Nyk Tarr
Quoted 16 lines · Jens Axboe
Quoted 4 lines · Nyk Tarr

Hi,

I got this nice error after doing an 'eject /cdrom'

[snip]

2.5.44 and thus 2.5.44-acX has seriously broken REQ_BLOCK_PC, so it's no wonder that it breaks hard. Alan, I can sync the sgio patches for you if you want.

Nyk, if you could try

*.kernel.org/pub/linux/kernel/people/axboe/patches/v2.5/2.5.44/sgio-15.bz2

Quoted 8 lines
Quoted 5 lines
Quoted 1 line

that would be great, thanks.

This also seems to hang and die. No panic in the logs this time, but some stuff scrolling off the screen on console. Sadly I've nothing to use as serial console at the mo' but I'll try some other options...

Please try sgio-16 from the above location. Ejecting works fine for me, it even manages to close the tray when I ask it to.

Irk you are on SCSI, yes you need this incremental patch for that to work. Sorry about that, I've put up 16b which contains this.

block/scsi_ioctl.c renamed from block/scsi_ioctl.c~ +2 -0
@@ -319,6 +319,8 @@
 		case CDROMEJECT:
 			rq = blk_get_request(q, WRITE, __GFP_WAIT);
 			rq->flags = REQ_BLOCK_PC;
+			rq->rq_dev = to_kdev_t(bdev->bd_dev);
+			rq->rq_disk = bdev->bd_disk;
 			rq->data = NULL;
 			rq->data_len = 0;
 			rq->timeout = BLK_DEFAULT_TIMEOUT;
Signature · 1 line
Jens Axboe
author
#15 lore raw
Quoted 25 lines · Jens Axboe
Quoted 24 lines · Jens Axboe
Quoted 22 lines · Nyk Tarr
Quoted 12 lines · Jens Axboe
Quoted 4 lines · Nyk Tarr

Hi,

I got this nice error after doing an 'eject /cdrom'

[snip]

2.5.44 and thus 2.5.44-acX has seriously broken REQ_BLOCK_PC, so it's no wonder that it breaks hard. Alan, I can sync the sgio patches for you if you want.

Quoted 5 lines

Nyk, if you could try

*.kernel.org/pub/linux/kernel/people/axboe/patches/v2.5/2.5.44/sgio-15.bz2

that would be great, thanks.

This also seems to hang and die. No panic in the logs this time, but some stuff scrolling off the screen on console. Sadly I've nothing to use as serial console at the mo' but I'll try some other options...

Quoted 5 lines
Quoted 2 lines

Please try sgio-16 from the above location. Ejecting works fine for me, it even manages to close the tray when I ask it to.

Irk you are on SCSI, yes you need this incremental patch for that to work. Sorry about that, I've put up 16b which contains this.

That'll teach me to use ide-scsi ^_-.

Working now, thanks. -ac3 applies over the top with 4 offset patches and seems to work fine (I can't get various bits of 2.5.44 to compile). I'll hammer it some more tomorrow.

Signature · 3 lines
/__
\_|\/
   /\
#16 lore raw
Quoted 26 lines · Nyk Tarr
Quoted 25 lines · Jens Axboe
Quoted 24 lines · Jens Axboe
Quoted 22 lines · Nyk Tarr
Quoted 12 lines · Jens Axboe
Quoted 4 lines · Nyk Tarr

Hi,

I got this nice error after doing an 'eject /cdrom'

[snip]

2.5.44 and thus 2.5.44-acX has seriously broken REQ_BLOCK_PC, so it's no wonder that it breaks hard. Alan, I can sync the sgio patches for you if you want.

Quoted 5 lines

Nyk, if you could try

*.kernel.org/pub/linux/kernel/people/axboe/patches/v2.5/2.5.44/sgio-15.bz2

that would be great, thanks.

This also seems to hang and die. No panic in the logs this time, but some stuff scrolling off the screen on console. Sadly I've nothing to use as serial console at the mo' but I'll try some other options...

Quoted 7 lines
Quoted 5 lines
Quoted 2 lines

Please try sgio-16 from the above location. Ejecting works fine for me, it even manages to close the tray when I ask it to.

Irk you are on SCSI, yes you need this incremental patch for that to work. Sorry about that, I've put up 16b which contains this.

That'll teach me to use ide-scsi ^_-.

Indeed, bad bad! You shouldn't need it anymore.

Quoted 3 lines

Working now, thanks. -ac3 applies over the top with 4 offset patches and seems to work fine (I can't get various bits of 2.5.44 to compile). I'll hammer it some more tomorrow.

I've got a complete patchset for -ac3 as well (19 parts) which I just sent to Alan, so hopefully -ac4 should be easier to test. I can put it online somewhere if there's any interest.

But thanks for the report, I appreciate the testing.

Signature · 1 line
Jens Axboe
#17 lore raw
In reply to Jens Axboe
Quoted 3 lines · Jens Axboe

2.5.44 and thus 2.5.44-acX has seriously broken REQ_BLOCK_PC, so it's no wonder that it breaks hard. Alan, I can sync the sgio patches for you if you want.

Please do