]> Git Repo - linux.git/blobdiff - drivers/mtd/ubi/scan.c
UBI: rename seb to aeb
[linux.git] / drivers / mtd / ubi / scan.c
index 12c43b44f81578a4b78369e5140b66d34d26a188..c53ef5d9b134232fe769a4596181b6bdc830ef3f 100644 (file)
  * This sub-system is responsible for scanning the flash media, checking UBI
  * headers and providing complete information about the UBI flash image.
  *
- * The scanning information is represented by a &struct ubi_scan_info' object.
- * Information about found volumes is represented by &struct ubi_scan_volume
+ * The scanning information is represented by a &struct ubi_attach_info' object.
+ * Information about found volumes is represented by &struct ubi_ainf_volume
  * objects which are kept in volume RB-tree with root at the @volumes field.
  * The RB-tree is indexed by the volume ID.
  *
- * Scanned logical eraseblocks are represented by &struct ubi_scan_leb objects.
+ * Scanned logical eraseblocks are represented by &struct ubi_ainf_peb objects.
  * These objects are kept in per-volume RB-trees with the root at the
- * corresponding &struct ubi_scan_volume object. To put it differently, we keep
+ * corresponding &struct ubi_ainf_volume object. To put it differently, we keep
  * an RB-tree of per-volume objects and each of these objects is the root of
  * RB-tree of per-eraseblock objects.
  *
 #include <linux/random.h>
 #include "ubi.h"
 
-#ifdef CONFIG_MTD_UBI_DEBUG
-static int paranoid_check_si(struct ubi_device *ubi, struct ubi_scan_info *si);
-#else
-#define paranoid_check_si(ubi, si) 0
-#endif
+static int self_check_si(struct ubi_device *ubi, struct ubi_attach_info *si);
 
 /* Temporary variables used during scanning */
 static struct ubi_ec_hdr *ech;
@@ -114,10 +110,10 @@ static struct ubi_vid_hdr *vidh;
  * returns zero in case of success and a negative error code in case of
  * failure.
  */
-static int add_to_list(struct ubi_scan_info *si, int pnum, int ec, int to_head,
-                      struct list_head *list)
+static int add_to_list(struct ubi_attach_info *si, int pnum, int ec,
+                      int to_head, struct list_head *list)
 {
-       struct ubi_scan_leb *seb;
+       struct ubi_ainf_peb *aeb;
 
        if (list == &si->free) {
                dbg_bld("add to free: PEB %d, EC %d", pnum, ec);
@@ -129,16 +125,16 @@ static int add_to_list(struct ubi_scan_info *si, int pnum, int ec, int to_head,
        } else
                BUG();
 
-       seb = kmem_cache_alloc(si->scan_leb_slab, GFP_KERNEL);
-       if (!seb)
+       aeb = kmem_cache_alloc(si->scan_leb_slab, GFP_KERNEL);
+       if (!aeb)
                return -ENOMEM;
 
-       seb->pnum = pnum;
-       seb->ec = ec;
+       aeb->pnum = pnum;
+       aeb->ec = ec;
        if (to_head)
-               list_add(&seb->u.list, list);
+               list_add(&aeb->u.list, list);
        else
-               list_add_tail(&seb->u.list, list);
+               list_add_tail(&aeb->u.list, list);
        return 0;
 }
 
@@ -152,20 +148,20 @@ static int add_to_list(struct ubi_scan_info *si, int pnum, int ec, int to_head,
  * The corruption was presumably not caused by a power cut. Returns zero in
  * case of success and a negative error code in case of failure.
  */
-static int add_corrupted(struct ubi_scan_info *si, int pnum, int ec)
+static int add_corrupted(struct ubi_attach_info *si, int pnum, int ec)
 {
-       struct ubi_scan_leb *seb;
+       struct ubi_ainf_peb *aeb;
 
        dbg_bld("add to corrupted: PEB %d, EC %d", pnum, ec);
 
-       seb = kmem_cache_alloc(si->scan_leb_slab, GFP_KERNEL);
-       if (!seb)
+       aeb = kmem_cache_alloc(si->scan_leb_slab, GFP_KERNEL);
+       if (!aeb)
                return -ENOMEM;
 
        si->corr_peb_count += 1;
-       seb->pnum = pnum;
-       seb->ec = ec;
-       list_add(&seb->u.list, &si->corr);
+       aeb->pnum = pnum;
+       aeb->ec = ec;
+       list_add(&aeb->u.list, &si->corr);
        return 0;
 }
 
@@ -184,7 +180,7 @@ static int add_corrupted(struct ubi_scan_info *si, int pnum, int ec)
  * headers of the same volume.
  */
 static int validate_vid_hdr(const struct ubi_vid_hdr *vid_hdr,
-                           const struct ubi_scan_volume *sv, int pnum)
+                           const struct ubi_ainf_volume *sv, int pnum)
 {
        int vol_type = vid_hdr->vol_type;
        int vol_id = be32_to_cpu(vid_hdr->vol_id);
@@ -201,7 +197,7 @@ static int validate_vid_hdr(const struct ubi_vid_hdr *vid_hdr,
                 */
 
                if (vol_id != sv->vol_id) {
-                       dbg_err("inconsistent vol_id");
+                       ubi_err("inconsistent vol_id");
                        goto bad;
                }
 
@@ -211,17 +207,17 @@ static int validate_vid_hdr(const struct ubi_vid_hdr *vid_hdr,
                        sv_vol_type = UBI_VID_DYNAMIC;
 
                if (vol_type != sv_vol_type) {
-                       dbg_err("inconsistent vol_type");
+                       ubi_err("inconsistent vol_type");
                        goto bad;
                }
 
                if (used_ebs != sv->used_ebs) {
-                       dbg_err("inconsistent used_ebs");
+                       ubi_err("inconsistent used_ebs");
                        goto bad;
                }
 
                if (data_pad != sv->data_pad) {
-                       dbg_err("inconsistent data_pad");
+                       ubi_err("inconsistent data_pad");
                        goto bad;
                }
        }
@@ -230,8 +226,8 @@ static int validate_vid_hdr(const struct ubi_vid_hdr *vid_hdr,
 
 bad:
        ubi_err("inconsistent VID header at PEB %d", pnum);
-       ubi_dbg_dump_vid_hdr(vid_hdr);
-       ubi_dbg_dump_sv(sv);
+       ubi_dump_vid_hdr(vid_hdr);
+       ubi_dump_sv(sv);
        return -EINVAL;
 }
 
@@ -248,11 +244,11 @@ bad:
  * to the scanning volume object in case of success and a negative error code
  * in case of failure.
  */
-static struct ubi_scan_volume *add_volume(struct ubi_scan_info *si, int vol_id,
-                                         int pnum,
+static struct ubi_ainf_volume *add_volume(struct ubi_attach_info *si,
+                                         int vol_id, int pnum,
                                          const struct ubi_vid_hdr *vid_hdr)
 {
-       struct ubi_scan_volume *sv;
+       struct ubi_ainf_volume *sv;
        struct rb_node **p = &si->volumes.rb_node, *parent = NULL;
 
        ubi_assert(vol_id == be32_to_cpu(vid_hdr->vol_id));
@@ -260,7 +256,7 @@ static struct ubi_scan_volume *add_volume(struct ubi_scan_info *si, int vol_id,
        /* Walk the volume RB-tree to look if this volume is already present */
        while (*p) {
                parent = *p;
-               sv = rb_entry(parent, struct ubi_scan_volume, rb);
+               sv = rb_entry(parent, struct ubi_ainf_volume, rb);
 
                if (vol_id == sv->vol_id)
                        return sv;
@@ -272,7 +268,7 @@ static struct ubi_scan_volume *add_volume(struct ubi_scan_info *si, int vol_id,
        }
 
        /* The volume is absent - add it */
-       sv = kmalloc(sizeof(struct ubi_scan_volume), GFP_KERNEL);
+       sv = kmalloc(sizeof(struct ubi_ainf_volume), GFP_KERNEL);
        if (!sv)
                return ERR_PTR(-ENOMEM);
 
@@ -297,7 +293,7 @@ static struct ubi_scan_volume *add_volume(struct ubi_scan_info *si, int vol_id,
 /**
  * compare_lebs - find out which logical eraseblock is newer.
  * @ubi: UBI device description object
- * @seb: first logical eraseblock to compare
+ * @aeb: first logical eraseblock to compare
  * @pnum: physical eraseblock number of the second logical eraseblock to
  * compare
  * @vid_hdr: volume identifier header of the second logical eraseblock
@@ -306,7 +302,7 @@ static struct ubi_scan_volume *add_volume(struct ubi_scan_info *si, int vol_id,
  * case of success this function returns a positive value, in case of failure, a
  * negative error code is returned. The success return codes use the following
  * bits:
- *     o bit 0 is cleared: the first PEB (described by @seb) is newer than the
+ *     o bit 0 is cleared: the first PEB (described by @aeb) is newer than the
  *       second PEB (described by @pnum and @vid_hdr);
  *     o bit 0 is set: the second PEB is newer;
  *     o bit 1 is cleared: no bit-flips were detected in the newer LEB;
@@ -314,7 +310,7 @@ static struct ubi_scan_volume *add_volume(struct ubi_scan_info *si, int vol_id,
  *     o bit 2 is cleared: the older LEB is not corrupted;
  *     o bit 2 is set: the older LEB is corrupted.
  */
-static int compare_lebs(struct ubi_device *ubi, const struct ubi_scan_leb *seb,
+static int compare_lebs(struct ubi_device *ubi, const struct ubi_ainf_peb *aeb,
                        int pnum, const struct ubi_vid_hdr *vid_hdr)
 {
        void *buf;
@@ -323,7 +319,7 @@ static int compare_lebs(struct ubi_device *ubi, const struct ubi_scan_leb *seb,
        struct ubi_vid_hdr *vh = NULL;
        unsigned long long sqnum2 = be64_to_cpu(vid_hdr->sqnum);
 
-       if (sqnum2 == seb->sqnum) {
+       if (sqnum2 == aeb->sqnum) {
                /*
                 * This must be a really ancient UBI image which has been
                 * created before sequence numbers support has been added. At
@@ -337,7 +333,7 @@ static int compare_lebs(struct ubi_device *ubi, const struct ubi_scan_leb *seb,
        }
 
        /* Obviously the LEB with lower sequence counter is older */
-       second_is_newer = !!(sqnum2 > seb->sqnum);
+       second_is_newer = (sqnum2 > aeb->sqnum);
 
        /*
         * Now we know which copy is newer. If the copy flag of the PEB with
@@ -356,7 +352,7 @@ static int compare_lebs(struct ubi_device *ubi, const struct ubi_scan_leb *seb,
                        return 1;
                }
        } else {
-               if (!seb->copy_flag) {
+               if (!aeb->copy_flag) {
                        /* It is not a copy, so it is newer */
                        dbg_bld("first PEB %d is newer, copy_flag is unset",
                                pnum);
@@ -367,13 +363,13 @@ static int compare_lebs(struct ubi_device *ubi, const struct ubi_scan_leb *seb,
                if (!vh)
                        return -ENOMEM;
 
-               pnum = seb->pnum;
+               pnum = aeb->pnum;
                err = ubi_io_read_vid_hdr(ubi, pnum, vh, 0);
                if (err) {
                        if (err == UBI_IO_BITFLIPS)
                                bitflips = 1;
                        else {
-                               dbg_err("VID of PEB %d header is bad, but it "
+                               ubi_err("VID of PEB %d header is bad, but it "
                                        "was OK earlier, err %d", pnum, err);
                                if (err > 0)
                                        err = -EIO;
@@ -444,14 +440,14 @@ out_free_vidh:
  * to be picked, while the older one has to be dropped. This function returns
  * zero in case of success and a negative error code in case of failure.
  */
-int ubi_scan_add_used(struct ubi_device *ubi, struct ubi_scan_info *si,
+int ubi_scan_add_used(struct ubi_device *ubi, struct ubi_attach_info *si,
                      int pnum, int ec, const struct ubi_vid_hdr *vid_hdr,
                      int bitflips)
 {
        int err, vol_id, lnum;
        unsigned long long sqnum;
-       struct ubi_scan_volume *sv;
-       struct ubi_scan_leb *seb;
+       struct ubi_ainf_volume *sv;
+       struct ubi_ainf_peb *aeb;
        struct rb_node **p, *parent = NULL;
 
        vol_id = be32_to_cpu(vid_hdr->vol_id);
@@ -477,9 +473,9 @@ int ubi_scan_add_used(struct ubi_device *ubi, struct ubi_scan_info *si,
                int cmp_res;
 
                parent = *p;
-               seb = rb_entry(parent, struct ubi_scan_leb, u.rb);
-               if (lnum != seb->lnum) {
-                       if (lnum < seb->lnum)
+               aeb = rb_entry(parent, struct ubi_ainf_peb, u.rb);
+               if (lnum != aeb->lnum) {
+                       if (lnum < aeb->lnum)
                                p = &(*p)->rb_left;
                        else
                                p = &(*p)->rb_right;
@@ -491,8 +487,8 @@ int ubi_scan_add_used(struct ubi_device *ubi, struct ubi_scan_info *si,
                 * logical eraseblock present.
                 */
 
-               dbg_bld("this LEB already exists: PEB %d, sqnum %llu, "
-                       "EC %d", seb->pnum, seb->sqnum, seb->ec);
+               dbg_bld("this LEB already exists: PEB %d, sqnum %llu, EC %d",
+                       aeb->pnum, aeb->sqnum, aeb->ec);
 
                /*
                 * Make sure that the logical eraseblocks have different
@@ -507,11 +503,11 @@ int ubi_scan_add_used(struct ubi_device *ubi, struct ubi_scan_info *si,
                 * images, but refuse attaching old images with duplicated
                 * logical eraseblocks because there was an unclean reboot.
                 */
-               if (seb->sqnum == sqnum && sqnum != 0) {
+               if (aeb->sqnum == sqnum && sqnum != 0) {
                        ubi_err("two LEBs with same sequence number %llu",
                                sqnum);
-                       ubi_dbg_dump_seb(seb, 0);
-                       ubi_dbg_dump_vid_hdr(vid_hdr);
+                       ubi_dump_aeb(aeb, 0);
+                       ubi_dump_vid_hdr(vid_hdr);
                        return -EINVAL;
                }
 
@@ -519,7 +515,7 @@ int ubi_scan_add_used(struct ubi_device *ubi, struct ubi_scan_info *si,
                 * Now we have to drop the older one and preserve the newer
                 * one.
                 */
-               cmp_res = compare_lebs(ubi, seb, pnum, vid_hdr);
+               cmp_res = compare_lebs(ubi, aeb, pnum, vid_hdr);
                if (cmp_res < 0)
                        return cmp_res;
 
@@ -532,16 +528,16 @@ int ubi_scan_add_used(struct ubi_device *ubi, struct ubi_scan_info *si,
                        if (err)
                                return err;
 
-                       err = add_to_list(si, seb->pnum, seb->ec, cmp_res & 4,
+                       err = add_to_list(si, aeb->pnum, aeb->ec, cmp_res & 4,
                                          &si->erase);
                        if (err)
                                return err;
 
-                       seb->ec = ec;
-                       seb->pnum = pnum;
-                       seb->scrub = ((cmp_res & 2) || bitflips);
-                       seb->copy_flag = vid_hdr->copy_flag;
-                       seb->sqnum = sqnum;
+                       aeb->ec = ec;
+                       aeb->pnum = pnum;
+                       aeb->scrub = ((cmp_res & 2) || bitflips);
+                       aeb->copy_flag = vid_hdr->copy_flag;
+                       aeb->sqnum = sqnum;
 
                        if (sv->highest_lnum == lnum)
                                sv->last_data_size =
@@ -567,16 +563,16 @@ int ubi_scan_add_used(struct ubi_device *ubi, struct ubi_scan_info *si,
        if (err)
                return err;
 
-       seb = kmem_cache_alloc(si->scan_leb_slab, GFP_KERNEL);
-       if (!seb)
+       aeb = kmem_cache_alloc(si->scan_leb_slab, GFP_KERNEL);
+       if (!aeb)
                return -ENOMEM;
 
-       seb->ec = ec;
-       seb->pnum = pnum;
-       seb->lnum = lnum;
-       seb->scrub = bitflips;
-       seb->copy_flag = vid_hdr->copy_flag;
-       seb->sqnum = sqnum;
+       aeb->ec = ec;
+       aeb->pnum = pnum;
+       aeb->lnum = lnum;
+       aeb->scrub = bitflips;
+       aeb->copy_flag = vid_hdr->copy_flag;
+       aeb->sqnum = sqnum;
 
        if (sv->highest_lnum <= lnum) {
                sv->highest_lnum = lnum;
@@ -584,8 +580,8 @@ int ubi_scan_add_used(struct ubi_device *ubi, struct ubi_scan_info *si,
        }
 
        sv->leb_count += 1;
-       rb_link_node(&seb->u.rb, parent, p);
-       rb_insert_color(&seb->u.rb, &sv->root);
+       rb_link_node(&aeb->u.rb, parent, p);
+       rb_insert_color(&aeb->u.rb, &sv->root);
        return 0;
 }
 
@@ -597,14 +593,14 @@ int ubi_scan_add_used(struct ubi_device *ubi, struct ubi_scan_info *si,
  * This function returns a pointer to the volume description or %NULL if there
  * are no data about this volume in the scanning information.
  */
-struct ubi_scan_volume *ubi_scan_find_sv(const struct ubi_scan_info *si,
+struct ubi_ainf_volume *ubi_scan_find_sv(const struct ubi_attach_info *si,
                                         int vol_id)
 {
-       struct ubi_scan_volume *sv;
+       struct ubi_ainf_volume *sv;
        struct rb_node *p = si->volumes.rb_node;
 
        while (p) {
-               sv = rb_entry(p, struct ubi_scan_volume, rb);
+               sv = rb_entry(p, struct ubi_ainf_volume, rb);
 
                if (vol_id == sv->vol_id)
                        return sv;
@@ -619,26 +615,26 @@ struct ubi_scan_volume *ubi_scan_find_sv(const struct ubi_scan_info *si,
 }
 
 /**
- * ubi_scan_find_seb - find LEB in the volume scanning information.
+ * ubi_scan_find_aeb - find LEB in the volume scanning information.
  * @sv: a pointer to the volume scanning information
  * @lnum: the requested logical eraseblock
  *
  * This function returns a pointer to the scanning logical eraseblock or %NULL
  * if there are no data about it in the scanning volume information.
  */
-struct ubi_scan_leb *ubi_scan_find_seb(const struct ubi_scan_volume *sv,
+struct ubi_ainf_peb *ubi_scan_find_aeb(const struct ubi_ainf_volume *sv,
                                       int lnum)
 {
-       struct ubi_scan_leb *seb;
+       struct ubi_ainf_peb *aeb;
        struct rb_node *p = sv->root.rb_node;
 
        while (p) {
-               seb = rb_entry(p, struct ubi_scan_leb, u.rb);
+               aeb = rb_entry(p, struct ubi_ainf_peb, u.rb);
 
-               if (lnum == seb->lnum)
-                       return seb;
+               if (lnum == aeb->lnum)
+                       return aeb;
 
-               if (lnum > seb->lnum)
+               if (lnum > aeb->lnum)
                        p = p->rb_left;
                else
                        p = p->rb_right;
@@ -652,17 +648,17 @@ struct ubi_scan_leb *ubi_scan_find_seb(const struct ubi_scan_volume *sv,
  * @si: scanning information
  * @sv: the volume scanning information to delete
  */
-void ubi_scan_rm_volume(struct ubi_scan_info *si, struct ubi_scan_volume *sv)
+void ubi_scan_rm_volume(struct ubi_attach_info *si, struct ubi_ainf_volume *sv)
 {
        struct rb_node *rb;
-       struct ubi_scan_leb *seb;
+       struct ubi_ainf_peb *aeb;
 
        dbg_bld("remove scanning information about volume %d", sv->vol_id);
 
        while ((rb = rb_first(&sv->root))) {
-               seb = rb_entry(rb, struct ubi_scan_leb, u.rb);
-               rb_erase(&seb->u.rb, &sv->root);
-               list_add_tail(&seb->u.list, &si->erase);
+               aeb = rb_entry(rb, struct ubi_ainf_peb, u.rb);
+               rb_erase(&aeb->u.rb, &sv->root);
+               list_add_tail(&aeb->u.list, &si->erase);
        }
 
        rb_erase(&sv->rb, &si->volumes);
@@ -683,7 +679,7 @@ void ubi_scan_rm_volume(struct ubi_scan_info *si, struct ubi_scan_volume *sv)
  * This function returns zero in case of success and a negative error code in
  * case of failure.
  */
-int ubi_scan_erase_peb(struct ubi_device *ubi, const struct ubi_scan_info *si,
+int ubi_scan_erase_peb(struct ubi_device *ubi, const struct ubi_attach_info *si,
                       int pnum, int ec)
 {
        int err;
@@ -729,17 +725,17 @@ out_free:
  * This function returns scanning physical eraseblock information in case of
  * success and an error code in case of failure.
  */
-struct ubi_scan_leb *ubi_scan_get_free_peb(struct ubi_device *ubi,
-                                          struct ubi_scan_info *si)
+struct ubi_ainf_peb *ubi_scan_get_free_peb(struct ubi_device *ubi,
+                                          struct ubi_attach_info *si)
 {
        int err = 0;
-       struct ubi_scan_leb *seb, *tmp_seb;
+       struct ubi_ainf_peb *aeb, *tmp_aeb;
 
        if (!list_empty(&si->free)) {
-               seb = list_entry(si->free.next, struct ubi_scan_leb, u.list);
-               list_del(&seb->u.list);
-               dbg_bld("return free PEB %d, EC %d", seb->pnum, seb->ec);
-               return seb;
+               aeb = list_entry(si->free.next, struct ubi_ainf_peb, u.list);
+               list_del(&aeb->u.list);
+               dbg_bld("return free PEB %d, EC %d", aeb->pnum, aeb->ec);
+               return aeb;
        }
 
        /*
@@ -748,18 +744,18 @@ struct ubi_scan_leb *ubi_scan_get_free_peb(struct ubi_device *ubi,
         * so forth. We don't want to take care about bad eraseblocks here -
         * they'll be handled later.
         */
-       list_for_each_entry_safe(seb, tmp_seb, &si->erase, u.list) {
-               if (seb->ec == UBI_SCAN_UNKNOWN_EC)
-                       seb->ec = si->mean_ec;
+       list_for_each_entry_safe(aeb, tmp_aeb, &si->erase, u.list) {
+               if (aeb->ec == UBI_SCAN_UNKNOWN_EC)
+                       aeb->ec = si->mean_ec;
 
-               err = ubi_scan_erase_peb(ubi, si, seb->pnum, seb->ec+1);
+               err = ubi_scan_erase_peb(ubi, si, aeb->pnum, aeb->ec+1);
                if (err)
                        continue;
 
-               seb->ec += 1;
-               list_del(&seb->u.list);
-               dbg_bld("return PEB %d, EC %d", seb->pnum, seb->ec);
-               return seb;
+               aeb->ec += 1;
+               list_del(&aeb->u.list);
+               dbg_bld("return PEB %d, EC %d", aeb->pnum, aeb->ec);
+               return aeb;
        }
 
        ubi_err("no free eraseblocks");
@@ -814,7 +810,7 @@ static int check_corruption(struct ubi_device *ubi, struct ubi_vid_hdr *vid_hdr,
        ubi_err("PEB %d contains corrupted VID header, and the data does not "
                "contain all 0xFF, this may be a non-UBI PEB or a severe VID "
                "header corruption which requires manual inspection", pnum);
-       ubi_dbg_dump_vid_hdr(vid_hdr);
+       ubi_dump_vid_hdr(vid_hdr);
        dbg_msg("hexdump of PEB %d offset %d, length %d",
                pnum, ubi->leb_start, ubi->leb_size);
        ubi_dbg_print_hex_dump(KERN_DEBUG, "", DUMP_PREFIX_OFFSET, 32, 1,
@@ -835,7 +831,7 @@ out_unlock:
  * This function returns a zero if the physical eraseblock was successfully
  * handled and a negative error code in case of failure.
  */
-static int process_eb(struct ubi_device *ubi, struct ubi_scan_info *si,
+static int process_eb(struct ubi_device *ubi, struct ubi_attach_info *si,
                      int pnum)
 {
        long long uninitialized_var(ec);
@@ -911,7 +907,7 @@ static int process_eb(struct ubi_device *ubi, struct ubi_scan_info *si,
                         */
                        ubi_err("erase counter overflow, max is %d",
                                UBI_MAX_ERASECOUNTER);
-                       ubi_dbg_dump_ec_hdr(ech);
+                       ubi_dump_ec_hdr(ech);
                        return -EINVAL;
                }
 
@@ -933,7 +929,7 @@ static int process_eb(struct ubi_device *ubi, struct ubi_scan_info *si,
                    ubi->image_seq != image_seq) {
                        ubi_err("bad image sequence number %d in PEB %d, "
                                "expected %d", image_seq, pnum, ubi->image_seq);
-                       ubi_dbg_dump_ec_hdr(ech);
+                       ubi_dump_ec_hdr(ech);
                        return -EINVAL;
                }
        }
@@ -1077,9 +1073,10 @@ adjust_mean_ec:
  * MTD device. Returns zero if we should proceed with attaching the MTD device,
  * and %-EINVAL if we should not.
  */
-static int check_what_we_have(struct ubi_device *ubi, struct ubi_scan_info *si)
+static int check_what_we_have(struct ubi_device *ubi,
+                             struct ubi_attach_info *si)
 {
-       struct ubi_scan_leb *seb;
+       struct ubi_ainf_peb *aeb;
        int max_corr, peb_count;
 
        peb_count = ubi->peb_count - si->bad_peb_count - si->alien_peb_count;
@@ -1094,8 +1091,8 @@ static int check_what_we_have(struct ubi_device *ubi, struct ubi_scan_info *si)
                ubi_err("%d PEBs are corrupted and preserved",
                        si->corr_peb_count);
                printk(KERN_ERR "Corrupted PEBs are:");
-               list_for_each_entry(seb, &si->corr, u.list)
-                       printk(KERN_CONT " %d", seb->pnum);
+               list_for_each_entry(aeb, &si->corr, u.list)
+                       printk(KERN_CONT " %d", aeb->pnum);
                printk(KERN_CONT "\n");
 
                /*
@@ -1147,15 +1144,15 @@ static int check_what_we_have(struct ubi_device *ubi, struct ubi_scan_info *si)
  * This function does full scanning of an MTD device and returns complete
  * information about it. In case of failure, an error code is returned.
  */
-struct ubi_scan_info *ubi_scan(struct ubi_device *ubi)
+struct ubi_attach_info *ubi_scan(struct ubi_device *ubi)
 {
        int err, pnum;
        struct rb_node *rb1, *rb2;
-       struct ubi_scan_volume *sv;
-       struct ubi_scan_leb *seb;
-       struct ubi_scan_info *si;
+       struct ubi_ainf_volume *sv;
+       struct ubi_ainf_peb *aeb;
+       struct ubi_attach_info *si;
 
-       si = kzalloc(sizeof(struct ubi_scan_info), GFP_KERNEL);
+       si = kzalloc(sizeof(struct ubi_attach_info), GFP_KERNEL);
        if (!si)
                return ERR_PTR(-ENOMEM);
 
@@ -1167,7 +1164,7 @@ struct ubi_scan_info *ubi_scan(struct ubi_device *ubi)
 
        err = -ENOMEM;
        si->scan_leb_slab = kmem_cache_create("ubi_scan_leb_slab",
-                                             sizeof(struct ubi_scan_leb),
+                                             sizeof(struct ubi_ainf_peb),
                                              0, 0, NULL);
        if (!si->scan_leb_slab)
                goto out_si;
@@ -1204,25 +1201,25 @@ struct ubi_scan_info *ubi_scan(struct ubi_device *ubi)
         * value.
         */
        ubi_rb_for_each_entry(rb1, sv, &si->volumes, rb) {
-               ubi_rb_for_each_entry(rb2, seb, &sv->root, u.rb)
-                       if (seb->ec == UBI_SCAN_UNKNOWN_EC)
-                               seb->ec = si->mean_ec;
+               ubi_rb_for_each_entry(rb2, aeb, &sv->root, u.rb)
+                       if (aeb->ec == UBI_SCAN_UNKNOWN_EC)
+                               aeb->ec = si->mean_ec;
        }
 
-       list_for_each_entry(seb, &si->free, u.list) {
-               if (seb->ec == UBI_SCAN_UNKNOWN_EC)
-                       seb->ec = si->mean_ec;
+       list_for_each_entry(aeb, &si->free, u.list) {
+               if (aeb->ec == UBI_SCAN_UNKNOWN_EC)
+                       aeb->ec = si->mean_ec;
        }
 
-       list_for_each_entry(seb, &si->corr, u.list)
-               if (seb->ec == UBI_SCAN_UNKNOWN_EC)
-                       seb->ec = si->mean_ec;
+       list_for_each_entry(aeb, &si->corr, u.list)
+               if (aeb->ec == UBI_SCAN_UNKNOWN_EC)
+                       aeb->ec = si->mean_ec;
 
-       list_for_each_entry(seb, &si->erase, u.list)
-               if (seb->ec == UBI_SCAN_UNKNOWN_EC)
-                       seb->ec = si->mean_ec;
+       list_for_each_entry(aeb, &si->erase, u.list)
+               if (aeb->ec == UBI_SCAN_UNKNOWN_EC)
+                       aeb->ec = si->mean_ec;
 
-       err = paranoid_check_si(ubi, si);
+       err = self_check_si(ubi, si);
        if (err)
                goto out_vidh;
 
@@ -1248,9 +1245,9 @@ out_si:
  * This function destroys the volume RB-tree (@sv->root) and the scanning
  * volume information.
  */
-static void destroy_sv(struct ubi_scan_info *si, struct ubi_scan_volume *sv)
+static void destroy_sv(struct ubi_attach_info *si, struct ubi_ainf_volume *sv)
 {
-       struct ubi_scan_leb *seb;
+       struct ubi_ainf_peb *aeb;
        struct rb_node *this = sv->root.rb_node;
 
        while (this) {
@@ -1259,16 +1256,16 @@ static void destroy_sv(struct ubi_scan_info *si, struct ubi_scan_volume *sv)
                else if (this->rb_right)
                        this = this->rb_right;
                else {
-                       seb = rb_entry(this, struct ubi_scan_leb, u.rb);
+                       aeb = rb_entry(this, struct ubi_ainf_peb, u.rb);
                        this = rb_parent(this);
                        if (this) {
-                               if (this->rb_left == &seb->u.rb)
+                               if (this->rb_left == &aeb->u.rb)
                                        this->rb_left = NULL;
                                else
                                        this->rb_right = NULL;
                        }
 
-                       kmem_cache_free(si->scan_leb_slab, seb);
+                       kmem_cache_free(si->scan_leb_slab, aeb);
                }
        }
        kfree(sv);
@@ -1278,27 +1275,27 @@ static void destroy_sv(struct ubi_scan_info *si, struct ubi_scan_volume *sv)
  * ubi_scan_destroy_si - destroy scanning information.
  * @si: scanning information
  */
-void ubi_scan_destroy_si(struct ubi_scan_info *si)
+void ubi_scan_destroy_si(struct ubi_attach_info *si)
 {
-       struct ubi_scan_leb *seb, *seb_tmp;
-       struct ubi_scan_volume *sv;
+       struct ubi_ainf_peb *aeb, *aeb_tmp;
+       struct ubi_ainf_volume *sv;
        struct rb_node *rb;
 
-       list_for_each_entry_safe(seb, seb_tmp, &si->alien, u.list) {
-               list_del(&seb->u.list);
-               kmem_cache_free(si->scan_leb_slab, seb);
+       list_for_each_entry_safe(aeb, aeb_tmp, &si->alien, u.list) {
+               list_del(&aeb->u.list);
+               kmem_cache_free(si->scan_leb_slab, aeb);
        }
-       list_for_each_entry_safe(seb, seb_tmp, &si->erase, u.list) {
-               list_del(&seb->u.list);
-               kmem_cache_free(si->scan_leb_slab, seb);
+       list_for_each_entry_safe(aeb, aeb_tmp, &si->erase, u.list) {
+               list_del(&aeb->u.list);
+               kmem_cache_free(si->scan_leb_slab, aeb);
        }
-       list_for_each_entry_safe(seb, seb_tmp, &si->corr, u.list) {
-               list_del(&seb->u.list);
-               kmem_cache_free(si->scan_leb_slab, seb);
+       list_for_each_entry_safe(aeb, aeb_tmp, &si->corr, u.list) {
+               list_del(&aeb->u.list);
+               kmem_cache_free(si->scan_leb_slab, aeb);
        }
-       list_for_each_entry_safe(seb, seb_tmp, &si->free, u.list) {
-               list_del(&seb->u.list);
-               kmem_cache_free(si->scan_leb_slab, seb);
+       list_for_each_entry_safe(aeb, aeb_tmp, &si->free, u.list) {
+               list_del(&aeb->u.list);
+               kmem_cache_free(si->scan_leb_slab, aeb);
        }
 
        /* Destroy the volume RB-tree */
@@ -1309,7 +1306,7 @@ void ubi_scan_destroy_si(struct ubi_scan_info *si)
                else if (rb->rb_right)
                        rb = rb->rb_right;
                else {
-                       sv = rb_entry(rb, struct ubi_scan_volume, rb);
+                       sv = rb_entry(rb, struct ubi_ainf_volume, rb);
 
                        rb = rb_parent(rb);
                        if (rb) {
@@ -1329,22 +1326,20 @@ void ubi_scan_destroy_si(struct ubi_scan_info *si)
        kfree(si);
 }
 
-#ifdef CONFIG_MTD_UBI_DEBUG
-
 /**
- * paranoid_check_si - check the scanning information.
+ * self_check_si - check the scanning information.
  * @ubi: UBI device description object
  * @si: scanning information
  *
  * This function returns zero if the scanning information is all right, and a
  * negative error code if not or if an error occurred.
  */
-static int paranoid_check_si(struct ubi_device *ubi, struct ubi_scan_info *si)
+static int self_check_si(struct ubi_device *ubi, struct ubi_attach_info *si)
 {
        int pnum, err, vols_found = 0;
        struct rb_node *rb1, *rb2;
-       struct ubi_scan_volume *sv;
-       struct ubi_scan_leb *seb, *last_seb;
+       struct ubi_ainf_volume *sv;
+       struct ubi_ainf_peb *aeb, *last_aeb;
        uint8_t *buf;
 
        if (!ubi->dbg->chk_gen)
@@ -1395,51 +1390,51 @@ static int paranoid_check_si(struct ubi_device *ubi, struct ubi_scan_info *si)
                        goto bad_sv;
                }
 
-               last_seb = NULL;
-               ubi_rb_for_each_entry(rb2, seb, &sv->root, u.rb) {
+               last_aeb = NULL;
+               ubi_rb_for_each_entry(rb2, aeb, &sv->root, u.rb) {
                        cond_resched();
 
-                       last_seb = seb;
+                       last_aeb = aeb;
                        leb_count += 1;
 
-                       if (seb->pnum < 0 || seb->ec < 0) {
+                       if (aeb->pnum < 0 || aeb->ec < 0) {
                                ubi_err("negative values");
-                               goto bad_seb;
+                               goto bad_aeb;
                        }
 
-                       if (seb->ec < si->min_ec) {
+                       if (aeb->ec < si->min_ec) {
                                ubi_err("bad si->min_ec (%d), %d found",
-                                       si->min_ec, seb->ec);
-                               goto bad_seb;
+                                       si->min_ec, aeb->ec);
+                               goto bad_aeb;
                        }
 
-                       if (seb->ec > si->max_ec) {
+                       if (aeb->ec > si->max_ec) {
                                ubi_err("bad si->max_ec (%d), %d found",
-                                       si->max_ec, seb->ec);
-                               goto bad_seb;
+                                       si->max_ec, aeb->ec);
+                               goto bad_aeb;
                        }
 
-                       if (seb->pnum >= ubi->peb_count) {
+                       if (aeb->pnum >= ubi->peb_count) {
                                ubi_err("too high PEB number %d, total PEBs %d",
-                                       seb->pnum, ubi->peb_count);
-                               goto bad_seb;
+                                       aeb->pnum, ubi->peb_count);
+                               goto bad_aeb;
                        }
 
                        if (sv->vol_type == UBI_STATIC_VOLUME) {
-                               if (seb->lnum >= sv->used_ebs) {
+                               if (aeb->lnum >= sv->used_ebs) {
                                        ubi_err("bad lnum or used_ebs");
-                                       goto bad_seb;
+                                       goto bad_aeb;
                                }
                        } else {
                                if (sv->used_ebs != 0) {
                                        ubi_err("non-zero used_ebs");
-                                       goto bad_seb;
+                                       goto bad_aeb;
                                }
                        }
 
-                       if (seb->lnum > sv->highest_lnum) {
+                       if (aeb->lnum > sv->highest_lnum) {
                                ubi_err("incorrect highest_lnum or lnum");
-                               goto bad_seb;
+                               goto bad_aeb;
                        }
                }
 
@@ -1449,14 +1444,14 @@ static int paranoid_check_si(struct ubi_device *ubi, struct ubi_scan_info *si)
                        goto bad_sv;
                }
 
-               if (!last_seb)
+               if (!last_aeb)
                        continue;
 
-               seb = last_seb;
+               aeb = last_aeb;
 
-               if (seb->lnum != sv->highest_lnum) {
+               if (aeb->lnum != sv->highest_lnum) {
                        ubi_err("bad highest_lnum");
-                       goto bad_seb;
+                       goto bad_aeb;
                }
        }
 
@@ -1468,15 +1463,15 @@ static int paranoid_check_si(struct ubi_device *ubi, struct ubi_scan_info *si)
 
        /* Check that scanning information is correct */
        ubi_rb_for_each_entry(rb1, sv, &si->volumes, rb) {
-               last_seb = NULL;
-               ubi_rb_for_each_entry(rb2, seb, &sv->root, u.rb) {
+               last_aeb = NULL;
+               ubi_rb_for_each_entry(rb2, aeb, &sv->root, u.rb) {
                        int vol_type;
 
                        cond_resched();
 
-                       last_seb = seb;
+                       last_aeb = aeb;
 
-                       err = ubi_io_read_vid_hdr(ubi, seb->pnum, vidh, 1);
+                       err = ubi_io_read_vid_hdr(ubi, aeb->pnum, vidh, 1);
                        if (err && err != UBI_IO_BITFLIPS) {
                                ubi_err("VID header is not OK (%d)", err);
                                if (err > 0)
@@ -1491,8 +1486,8 @@ static int paranoid_check_si(struct ubi_device *ubi, struct ubi_scan_info *si)
                                goto bad_vid_hdr;
                        }
 
-                       if (seb->sqnum != be64_to_cpu(vidh->sqnum)) {
-                               ubi_err("bad sqnum %llu", seb->sqnum);
+                       if (aeb->sqnum != be64_to_cpu(vidh->sqnum)) {
+                               ubi_err("bad sqnum %llu", aeb->sqnum);
                                goto bad_vid_hdr;
                        }
 
@@ -1506,8 +1501,8 @@ static int paranoid_check_si(struct ubi_device *ubi, struct ubi_scan_info *si)
                                goto bad_vid_hdr;
                        }
 
-                       if (seb->lnum != be32_to_cpu(vidh->lnum)) {
-                               ubi_err("bad lnum %d", seb->lnum);
+                       if (aeb->lnum != be32_to_cpu(vidh->lnum)) {
+                               ubi_err("bad lnum %d", aeb->lnum);
                                goto bad_vid_hdr;
                        }
 
@@ -1522,7 +1517,7 @@ static int paranoid_check_si(struct ubi_device *ubi, struct ubi_scan_info *si)
                        }
                }
 
-               if (!last_seb)
+               if (!last_aeb)
                        continue;
 
                if (sv->highest_lnum != be32_to_cpu(vidh->lnum)) {
@@ -1554,20 +1549,20 @@ static int paranoid_check_si(struct ubi_device *ubi, struct ubi_scan_info *si)
        }
 
        ubi_rb_for_each_entry(rb1, sv, &si->volumes, rb)
-               ubi_rb_for_each_entry(rb2, seb, &sv->root, u.rb)
-                       buf[seb->pnum] = 1;
+               ubi_rb_for_each_entry(rb2, aeb, &sv->root, u.rb)
+                       buf[aeb->pnum] = 1;
 
-       list_for_each_entry(seb, &si->free, u.list)
-               buf[seb->pnum] = 1;
+       list_for_each_entry(aeb, &si->free, u.list)
+               buf[aeb->pnum] = 1;
 
-       list_for_each_entry(seb, &si->corr, u.list)
-               buf[seb->pnum] = 1;
+       list_for_each_entry(aeb, &si->corr, u.list)
+               buf[aeb->pnum] = 1;
 
-       list_for_each_entry(seb, &si->erase, u.list)
-               buf[seb->pnum] = 1;
+       list_for_each_entry(aeb, &si->erase, u.list)
+               buf[aeb->pnum] = 1;
 
-       list_for_each_entry(seb, &si->alien, u.list)
-               buf[seb->pnum] = 1;
+       list_for_each_entry(aeb, &si->alien, u.list)
+               buf[aeb->pnum] = 1;
 
        err = 0;
        for (pnum = 0; pnum < ubi->peb_count; pnum++)
@@ -1581,25 +1576,23 @@ static int paranoid_check_si(struct ubi_device *ubi, struct ubi_scan_info *si)
                goto out;
        return 0;
 
-bad_seb:
-       ubi_err("bad scanning information about LEB %d", seb->lnum);
-       ubi_dbg_dump_seb(seb, 0);
-       ubi_dbg_dump_sv(sv);
+bad_aeb:
+       ubi_err("bad scanning information about LEB %d", aeb->lnum);
+       ubi_dump_aeb(aeb, 0);
+       ubi_dump_sv(sv);
        goto out;
 
 bad_sv:
        ubi_err("bad scanning information about volume %d", sv->vol_id);
-       ubi_dbg_dump_sv(sv);
+       ubi_dump_sv(sv);
        goto out;
 
 bad_vid_hdr:
        ubi_err("bad scanning information about volume %d", sv->vol_id);
-       ubi_dbg_dump_sv(sv);
-       ubi_dbg_dump_vid_hdr(vidh);
+       ubi_dump_sv(sv);
+       ubi_dump_vid_hdr(vidh);
 
 out:
-       ubi_dbg_dump_stack();
+       dump_stack();
        return -EINVAL;
 }
-
-#endif /* CONFIG_MTD_UBI_DEBUG */
This page took 0.080373 seconds and 4 git commands to generate.