opendisk seemed to assume that memory was zeroed, so that part and h/c/s were initially zero, but user-level malloc no longer does that. changed to use mallocz. scsi.c did include the memset but i've changed it to use mallocz as well.