strange scsi/CAM related dmesg output

Scott Long scottl at samsco.org
Sat Jun 5 20:04:04 UTC 2010


On Jun 5, 2010, at 1:12 PM, Alexander Best wrote:
> sure. sorry.
> 
> the output
> 
> ada0 at ahcich2 bus 0 scbus3 target 0 lun 0
> ada0: <SAMSUNG SP2504C VT100-50> ATA-7 SATA 2.x device
> ada0: 300.000MB/s transferscd0 at ata2 bus 0 scbus2 target 0 lun 0
> cd0: <HL-DT-ST DVDRAM GSA-H10N JL12> Removable CD-ROM SCSI-0 device
> cd0: 33.300MB/s transfers (UDMA2, ATAPI 12bytes, PIO 65534bytes)
> cd0: cd present [1944656 x 2048 byte records]
> (SATA 2.x, UDMA6, PIO 8192bytes)
> ada0: Command Queueing enabled
> ada0: 238474MB (488395055 512 byte sectors: 16H 63S/T 16383C
> 
> should actually look like this:
> 
> ada0 at ahcich2 bus 0 scbus3 target 0 lun 0
> ada0: <SAMSUNG SP2504C VT100-50> ATA-7 SATA 2.x device
> ada0: 300.000MB/s transfers (SATA 2.x, UDMA6, PIO 8192bytes)
> cd0 at ata2 bus 0 scbus2 target 0 lun 0
> cd0: <HL-DT-ST DVDRAM GSA-H10N JL12> Removable CD-ROM SCSI-0 device
> cd0: 33.300MB/s transfers (UDMA2, ATAPI 12bytes, PIO 65534bytes)
> cd0: cd present [1944656 x 2048 byte records]
> ada0: Command Queueing enabled
> ada0: 238474MB (488395055 512 byte sectors: 16H 63S/T 16383C
> 
> cheers.
> 
> 

The attribute print code in /sys/cam/ata/ata_xpt.c purposely prints a partial line without a <CR>, with the expectation that the rest will be printed immediately after it.  It probably gets interrupted to print the other device detection; I thought that all of this got single-threaded through the camisr, but maybe not.  Anyways, the quick fix is to print these attributes into a sprintf buffer first, then splat that buffer out once its complete.

Scott



More information about the freebsd-current mailing list