[haiku-bugs] Re: [Haiku] #4573: Haiku CD Fails to Boot: "PANIC: I/O operation would need to be cut."

  • From: "tonestone57" <trac@xxxxxxxxxxxx>
  • Date: Fri, 23 Jul 2010 15:46:20 -0000

#4573: Haiku CD Fails to Boot: "PANIC: I/O operation would need to be cut."
----------------------------+-----------------------------------------------
  Reporter:  tmmagee        |         Owner:  axeld    
      Type:  bug            |        Status:  new      
  Priority:  normal         |     Milestone:  R1       
 Component:  System/Kernel  |       Version:  R1/alpha1
Resolution:                 |      Keywords:           
Blocked By:                 |   Has a Patch:  0        
  Platform:  x86            |      Blocking:           
----------------------------+-----------------------------------------------

Comment (by tonestone57):

 Seems this error occurs in file:
 src/add-ons/kernel/generic/scsi_periph/io.cpp

 {{{
 150             if (numBlocks != originalNumBlocks)
 151                     panic("I/O operation would need to be cut.");
 }}}

 On older CD-ROM drives, numBlocks value is changed under this if
 statement:

 {{{
 131             // make sure we avoid 10 byte commands if they aren't
 supported
 132             if (!device->rw10_enabled || device->preferred_ccb_size ==
 6) {
 }}}

 This ticket is caused by changing numBlocks value in one of these, making
 it no longer equal to originalNumBlocks and triggering the panic:

 {{{
 135                     if (numBlocks > 0x100)
 136                             numBlocks = 0x100;
 }}}

 Or

 {{{
 145                     if (pos < 0x100000)
 146                             numBlocks = min_c(numBlocks, 0x100000 -
 pos);
 }}}

-- 
Ticket URL: <http://dev.haiku-os.org/ticket/4573#comment:5>
Haiku <http://dev.haiku-os.org>
Haiku - the operating system.

Other related posts: