>> This is `raw' in that it bypasses partitioning allowing access to >> the whole disk regardless of partitioning.
> It looks that I remember incorrectly what ws@ taught me back in the > days how the ``full disc'' partition works. > What I remember is that (let's assume sparc) partition ``c'' was > actually present in the disklabel and it was just by convention that > one would allocate that 0-$. The only magic I thought there was is > that in case the kernel can't find a disklabel, it would invent one > having a single ``c'' partition spanning the whole disc. Perhaps that's how it was back in the day. But now, looking at, for example, sd.c, I see code that actually does bypass partitioning when using RAW_PART. For example, if (SDPART(bp->b_dev) == RAW_PART) { if (bounds_check_with_mediasize(bp, DEV_BSIZE, sd->params.disksize512) <= 0) goto done; } else { if (bounds_check_with_label(&sd->sc_dk, bp, (sd->flags & (SDF_WLABEL|SDF_LABELLING)) != 0) <= 0) goto done; } (Using RAW_PART also affects various other things; for example, using RAW_PART prevents the driver from loading the disklabel off the drive the way it does for other partitions.) > But then, due to the 32-bit-limitation of the disklabel structure, it > couldn't make a ``c'' partition spanning 3TB. > Is my memory wrong? Has that been changed? Depends on the version and the disk driver in question. The above quote is from sd.c,v 1.258.2.1, the one that shipped with 4.0.1. Of course, for the full truth, you should check the source to the version you're using. Since this is done in the disk drivers, it will also depend on what driver you're using (sd? wd? ld? etc). /~\ The ASCII Mouse \ / Ribbon Campaign X Against HTML mo...@rodents-montreal.org / \ Email! 7D C8 61 52 5D E7 2D 39 4E F1 31 3E E8 B3 27 4B