lkml.org 
[lkml]   [2003]   [Apr]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH] kdevt-diff
    On Wed, Apr 16, 2003 at 09:48:16AM -0700, H. Peter Anvin wrote:

    > Not really, but it's certainly a nice capability. However, iso9660
    > (RockRidge, actually) has 64 bits of dev_t space; it's actually split
    > into two 32-bit entries specified as "high 32 bits" and "low 32 bits."
    >
    > I'm not positive if Linux expects those to contain major:minor or
    > 0:<16-bit-dev_t>.

    case SIG('P','N'):
    { int high, low;
    high = isonum_733(rr->u.PN.dev_high);
    low = isonum_733(rr->u.PN.dev_low);
    /*
    * The Rock Ridge standard specifies that if sizeof(dev_t) <= 4,
    * then the high field is unused, and the device number is completely
    * stored in the low field. Some writers may ignore this subtlety,
    * and as a result we test to see if the entire device number is
    * stored in the low field, and use that.
    */
    if((low & ~0xff) && high == 0) {
    inode->i_rdev = mk_kdev(low >> 8, low & 0xff);
    } else {
    inode->i_rdev = mk_kdev(high, low);
    }
    }
    break;

    (Here isonum_733 gets 32 bits.)

    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2005-03-22 13:34    [W:0.022 / U:0.268 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site