lkml.org 
[lkml]   [2007]   [May]   [4]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH 3/5] ext4: Extent overlap bugfix
    On Thu, 26 Apr 2007 23:41:01 +0530 "Amit K. Arora" <aarora@linux.vnet.ibm.com> wrote:

    > +unsigned int ext4_ext_check_overlap(struct inode *inode,
    > + struct ext4_extent *newext,
    > + struct ext4_ext_path *path)
    > +{
    > + unsigned long b1, b2;
    > + unsigned int depth, len1;
    > +
    > + b1 = le32_to_cpu(newext->ee_block);
    > + len1 = le16_to_cpu(newext->ee_len);
    > + depth = ext_depth(inode);
    > + if (!path[depth].p_ext)
    > + goto out;
    > + b2 = le32_to_cpu(path[depth].p_ext->ee_block);
    > +
    > + /* get the next allocated block if the extent in the path
    > + * is before the requested block(s) */
    > + if (b2 < b1) {
    > + b2 = ext4_ext_next_allocated_block(path);
    > + if (b2 == EXT_MAX_BLOCK)
    > + goto out;
    > + }
    > +
    > + if (b1 + len1 > b2) {

    Are we sure that b1+len cannot wrap through zero here?

    > + newext->ee_len = cpu_to_le16(b2 - b1);
    > + return 1;
    > + }
    -
    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: 2007-05-04 06:35    [W:0.024 / U:31.464 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site