sysutils/dvdisaster coredumps on FreeBSD/amd64 RELENG_9

Corey Halpin chalpin at cs.wisc.edu
Sun Mar 11 18:15:44 UTC 2012


   That's excellent.  Thank you, Carsten.  I'll update the FreeBSD port to 
include your patch, and will be watching for the new upstream release.

   CPGhost: thank you for your work to track this down.

~crh

On 2012-03-11, Carsten Gnörlich wrote:
>Hi C. P. and all,
>
>> @Carsten: I hope you can pinpoint the problem. I suspect
>> a change in FreeBSD's CAM layer API/ABI that causes some
>> sort of buffer overrun on RELENG_9. The patch points to the
>> exact line of code that causes dvdisaster 0.72.3 to crash.
>
>Thanks for the report. You're right about the memory
>corruption occurring in the line you commented out;
>it's a data size mismatch triggered by a size change
>in struct scsi_sense_data.
>
>The attached patch corrects the problem.
>A new upstream release will be made after some
>more testing.
>
>Cheers,
>   Carsten
>
>-- 
>Carsten Gnörlich * Project homepage http://www.dvdisaster.org
>dvdisaster: Additional error correction for CD and DVD media.
>GnuPG FP: 12B3 1535 AF90 3ADE 9E73  BA7E 5A59 0EFE F5F6 C46C

>--- /dev/shm/dvdisaster-0.72.3/scsi-freebsd.c	2011-10-02 20:32:04.000000000 +0200
>+++ scsi-freebsd.c	2012-03-11 18:19:09.000000000 +0100
>@@ -177,7 +177,6 @@
> 	Stop("illegal data_mode: %d", data_mode);
>    }
> 
>-
>    cam_fill_csio(&ccb->csio, 1, NULL, flags, CAM_TAG_ACTION_NONE,//MSG_SIMPLE_Q_TAG,
> 		 buf, size, sizeof(struct scsi_sense_data), cdb_size, 
> 		 120*1000);  /* 120 secs timeout */
>@@ -194,7 +193,7 @@
> 
>    /* Extract sense data */
> 
>-   memcpy(sense, &(ccb->csio.sense_data), sizeof(struct scsi_sense_data));
>+   memcpy(sense, &(ccb->csio.sense_data), sizeof(Sense));
> 
>    if((ccb->ccb_h.status & CAM_STATUS_MASK) == CAM_REQ_CMP)
>      return 0;
>@@ -204,8 +203,6 @@
>    status = ccb->csio.scsi_status;
> 
>    return -1;
>-
>-   
> }
> 
> #endif /* SYS_FREEBSD */

-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 228 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-ports/attachments/20120311/3b750b62/attachment.pgp


More information about the freebsd-ports mailing list