Date: Sat, 14 Feb 1998 22:31:08 -0600 From: Chris Csanady <ccsanady@friley585.res.iastate.edu> To: freebsd-current@FreeBSD.ORG Subject: CCD missing spl() call.. Message-ID: <199802150431.WAA00428@friley585.res.iastate.edu>
next in thread | raw e-mail | index | archive | help
There is also a off by one error in the handling of the partitions. Credit goes to OpenBSD for these. There are numerous other changes that would be worth integrating as well.. Chris *** ccd.c.old Sat Feb 14 22:27:17 1998 --- ccd.c Sat Feb 14 20:27:12 1998 *************** *** 631,637 **** ccdgetdisklabel(dev); /* Check that the partition exists. */ ! if (part != RAW_PART && ((part > lp->d_npartitions) || (lp->d_partitions[part].p_fstype == FS_UNUSED))) { error = ENXIO; goto done; --- 631,637 ---- ccdgetdisklabel(dev); /* Check that the partition exists. */ ! if (part != RAW_PART && ((part >= lp->d_npartitions) || (lp->d_partitions[part].p_fstype == FS_UNUSED))) { error = ENXIO; goto done; *************** *** 973,978 **** --- 973,979 ---- register int unit = cbp->cb_unit; int count, s; + s = splbio(); #ifdef DEBUG if (ccddebug & CCDB_FOLLOW) printf("ccdiodone(%x)\n", cbp); To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199802150431.WAA00428>