diff options
author | Glenn Elliott <gelliott@cs.unc.edu> | 2012-03-04 19:47:13 -0500 |
---|---|---|
committer | Glenn Elliott <gelliott@cs.unc.edu> | 2012-03-04 19:47:13 -0500 |
commit | c71c03bda1e86c9d5198c5d83f712e695c4f2a1e (patch) | |
tree | ecb166cb3e2b7e2adb3b5e292245fefd23381ac8 /drivers/mtd/ubi/scan.h | |
parent | ea53c912f8a86a8567697115b6a0d8152beee5c8 (diff) | |
parent | 6a00f206debf8a5c8899055726ad127dbeeed098 (diff) |
Merge branch 'mpi-master' into wip-k-fmlpwip-k-fmlp
Conflicts:
litmus/sched_cedf.c
Diffstat (limited to 'drivers/mtd/ubi/scan.h')
-rw-r--r-- | drivers/mtd/ubi/scan.h | 21 |
1 files changed, 11 insertions, 10 deletions
diff --git a/drivers/mtd/ubi/scan.h b/drivers/mtd/ubi/scan.h index 2576a8d1532b..d48aef15ab5d 100644 --- a/drivers/mtd/ubi/scan.h +++ b/drivers/mtd/ubi/scan.h | |||
@@ -30,6 +30,7 @@ | |||
30 | * @pnum: physical eraseblock number | 30 | * @pnum: physical eraseblock number |
31 | * @lnum: logical eraseblock number | 31 | * @lnum: logical eraseblock number |
32 | * @scrub: if this physical eraseblock needs scrubbing | 32 | * @scrub: if this physical eraseblock needs scrubbing |
33 | * @copy_flag: this LEB is a copy (@copy_flag is set in VID header of this LEB) | ||
33 | * @sqnum: sequence number | 34 | * @sqnum: sequence number |
34 | * @u: unions RB-tree or @list links | 35 | * @u: unions RB-tree or @list links |
35 | * @u.rb: link in the per-volume RB-tree of &struct ubi_scan_leb objects | 36 | * @u.rb: link in the per-volume RB-tree of &struct ubi_scan_leb objects |
@@ -42,7 +43,8 @@ struct ubi_scan_leb { | |||
42 | int ec; | 43 | int ec; |
43 | int pnum; | 44 | int pnum; |
44 | int lnum; | 45 | int lnum; |
45 | int scrub; | 46 | unsigned int scrub:1; |
47 | unsigned int copy_flag:1; | ||
46 | unsigned long long sqnum; | 48 | unsigned long long sqnum; |
47 | union { | 49 | union { |
48 | struct rb_node rb; | 50 | struct rb_node rb; |
@@ -91,14 +93,13 @@ struct ubi_scan_volume { | |||
91 | * @erase: list of physical eraseblocks which have to be erased | 93 | * @erase: list of physical eraseblocks which have to be erased |
92 | * @alien: list of physical eraseblocks which should not be used by UBI (e.g., | 94 | * @alien: list of physical eraseblocks which should not be used by UBI (e.g., |
93 | * those belonging to "preserve"-compatible internal volumes) | 95 | * those belonging to "preserve"-compatible internal volumes) |
94 | * @used_peb_count: count of used PEBs | ||
95 | * @corr_peb_count: count of PEBs in the @corr list | 96 | * @corr_peb_count: count of PEBs in the @corr list |
96 | * @read_err_count: count of PEBs read with error (%UBI_IO_BAD_HDR_READ was | 97 | * @empty_peb_count: count of PEBs which are presumably empty (contain only |
97 | * returned) | 98 | * 0xFF bytes) |
98 | * @free_peb_count: count of PEBs in the @free list | ||
99 | * @erase_peb_count: count of PEBs in the @erase list | ||
100 | * @alien_peb_count: count of PEBs in the @alien list | 99 | * @alien_peb_count: count of PEBs in the @alien list |
101 | * @bad_peb_count: count of bad physical eraseblocks | 100 | * @bad_peb_count: count of bad physical eraseblocks |
101 | * @maybe_bad_peb_count: count of bad physical eraseblocks which are not marked | ||
102 | * as bad yet, but which look like bad | ||
102 | * @vols_found: number of volumes found during scanning | 103 | * @vols_found: number of volumes found during scanning |
103 | * @highest_vol_id: highest volume ID | 104 | * @highest_vol_id: highest volume ID |
104 | * @is_empty: flag indicating whether the MTD device is empty or not | 105 | * @is_empty: flag indicating whether the MTD device is empty or not |
@@ -108,6 +109,7 @@ struct ubi_scan_volume { | |||
108 | * @mean_ec: mean erase counter value | 109 | * @mean_ec: mean erase counter value |
109 | * @ec_sum: a temporary variable used when calculating @mean_ec | 110 | * @ec_sum: a temporary variable used when calculating @mean_ec |
110 | * @ec_count: a temporary variable used when calculating @mean_ec | 111 | * @ec_count: a temporary variable used when calculating @mean_ec |
112 | * @scan_leb_slab: slab cache for &struct ubi_scan_leb objects | ||
111 | * | 113 | * |
112 | * This data structure contains the result of scanning and may be used by other | 114 | * This data structure contains the result of scanning and may be used by other |
113 | * UBI sub-systems to build final UBI data structures, further error-recovery | 115 | * UBI sub-systems to build final UBI data structures, further error-recovery |
@@ -119,13 +121,11 @@ struct ubi_scan_info { | |||
119 | struct list_head free; | 121 | struct list_head free; |
120 | struct list_head erase; | 122 | struct list_head erase; |
121 | struct list_head alien; | 123 | struct list_head alien; |
122 | int used_peb_count; | ||
123 | int corr_peb_count; | 124 | int corr_peb_count; |
124 | int read_err_count; | 125 | int empty_peb_count; |
125 | int free_peb_count; | ||
126 | int erase_peb_count; | ||
127 | int alien_peb_count; | 126 | int alien_peb_count; |
128 | int bad_peb_count; | 127 | int bad_peb_count; |
128 | int maybe_bad_peb_count; | ||
129 | int vols_found; | 129 | int vols_found; |
130 | int highest_vol_id; | 130 | int highest_vol_id; |
131 | int is_empty; | 131 | int is_empty; |
@@ -135,6 +135,7 @@ struct ubi_scan_info { | |||
135 | int mean_ec; | 135 | int mean_ec; |
136 | uint64_t ec_sum; | 136 | uint64_t ec_sum; |
137 | int ec_count; | 137 | int ec_count; |
138 | struct kmem_cache *scan_leb_slab; | ||
138 | }; | 139 | }; |
139 | 140 | ||
140 | struct ubi_device; | 141 | struct ubi_device; |