Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1323727 > unrolled thread
| Started by | Bean Huo <jackyard88@gmail.com> |
|---|---|
| First post | 2016-02-02 03:40 +0100 |
| Last post | 2016-02-02 04:20 +0100 |
| Articles | 3 — 2 participants |
Back to article view | Back to linux.kernel
This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by
below is the oldest one visible, not the original post.
[PATCH v2 06/17] drivers:mtd:ubi:add bakvol function define in ubi layer Bean Huo <jackyard88@gmail.com> - 2016-02-02 03:40 +0100
Re: [PATCH v2 06/17] drivers:mtd:ubi:add bakvol function define in ubi layer kbuild test robot <lkp@intel.com> - 2016-02-02 04:10 +0100
Re: [PATCH v2 06/17] drivers:mtd:ubi:add bakvol function define in ubi layer kbuild test robot <lkp@intel.com> - 2016-02-02 04:20 +0100
| From | Bean Huo <jackyard88@gmail.com> |
|---|---|
| Date | 2016-02-02 03:40 +0100 |
| Subject | [PATCH v2 06/17] drivers:mtd:ubi:add bakvol function define in ubi layer |
| Message-ID | <qXz2P-3Wf-37@gated-at.bofh.it> |
From: Bean Huo <beanhuo@micron.com>
This file patch is to add bakvol function define in ubi layer and
add bakvol point in ubi_device structure. Add one new parameter for ubi layer write
function, in order to indicate if this time programming data should be protected.
Signed-off-by: BeanHuo <beanhuo@micron.com>
---
drivers/mtd/ubi/ubi.h | 23 ++++++++++++++++++++---
1 file changed, 20 insertions(+), 3 deletions(-)
diff --git a/drivers/mtd/ubi/ubi.h b/drivers/mtd/ubi/ubi.h
index 2974b67..4a80359 100644
--- a/drivers/mtd/ubi/ubi.h
+++ b/drivers/mtd/ubi/ubi.h
@@ -438,6 +438,7 @@ struct ubi_debug_info {
* @vtbl_slots: how many slots are available in the volume table
* @vtbl_size: size of the volume table in bytes
* @vtbl: in-RAM volume table copy
+ * @bkblk_tbl: backup block table
* @device_mutex: protects on-flash volume table and serializes volume
* creation, deletion, update, re-size, re-name and set
* property
@@ -547,6 +548,7 @@ struct ubi_device {
int vtbl_slots;
int vtbl_size;
struct ubi_vtbl_record *vtbl;
+ struct ubi_bkblk_tbl *bkblk_tbl;
struct mutex device_mutex;
int max_ec;
@@ -797,6 +799,20 @@ int ubi_vtbl_rename_volumes(struct ubi_device *ubi,
struct list_head *rename_list);
int ubi_read_volume_table(struct ubi_device *ubi, struct ubi_attach_info *ai);
+/* bakvol.c*/
+int ubi_check_bakvol_module(struct ubi_device *ubi);
+int ubi_duplicate_data_to_bakvol(struct ubi_device *ubi, loff_t addr,
+ size_t len, size_t *retlen, const void *buf);
+int ubi_bakvol_module_init(struct ubi_device *ubi);
+int ubi_bakvol_peb_scan(struct ubi_device *ubi,
+ struct ubi_vid_hdr *vidh, int pnum);
+int ubi_bakvol_module_init_tail(struct ubi_device *ubi,
+ struct ubi_attach_info *si);
+int ubi_corrupted_data_recovery(struct ubi_volume_desc *desc);
+int is_backup_need(struct ubi_device *ubi, loff_t addr);
+void init_bakvol(struct ubi_volume_desc *desc, uint8_t choice);
+void clear_bakvol(struct ubi_device *ubi);
+
/* vmt.c */
int ubi_create_volume(struct ubi_device *ubi, struct ubi_mkvol_req *req);
int ubi_remove_volume(struct ubi_volume_desc *desc, int no_vtbl);
@@ -846,6 +862,7 @@ int self_check_eba(struct ubi_device *ubi, struct ubi_attach_info *ai_fastmap,
/* wl.c */
int ubi_wl_get_peb(struct ubi_device *ubi);
+int ubi_wl_get_plane_peb(struct ubi_device *ubi, int plane);
int ubi_wl_put_peb(struct ubi_device *ubi, int vol_id, int lnum,
int pnum, int torture);
int ubi_wl_flush(struct ubi_device *ubi, int vol_id, int lnum);
@@ -864,7 +881,7 @@ int ubi_ensure_anchor_pebs(struct ubi_device *ubi);
int ubi_io_read(const struct ubi_device *ubi, void *buf, int pnum, int offset,
int len);
int ubi_io_write(struct ubi_device *ubi, const void *buf, int pnum, int offset,
- int len);
+ int len, int safeguard);
int ubi_io_sync_erase(struct ubi_device *ubi, int pnum, int torture);
int ubi_io_is_bad(const struct ubi_device *ubi, int pnum);
int ubi_io_mark_bad(const struct ubi_device *ubi, int pnum);
@@ -1054,10 +1071,10 @@ static inline int ubi_io_read_data(const struct ubi_device *ubi, void *buf,
* physical eraseblock.
*/
static inline int ubi_io_write_data(struct ubi_device *ubi, const void *buf,
- int pnum, int offset, int len)
+ int pnum, int offset, int len, int safeguard)
{
ubi_assert(offset >= 0);
- return ubi_io_write(ubi, buf, pnum, offset + ubi->leb_start, len);
+ return ubi_io_write(ubi, buf, pnum, offset + ubi->leb_start, len, safeguard);
}
/**
--
1.9.1
[toc] | [next] | [standalone]
| From | kbuild test robot <lkp@intel.com> |
|---|---|
| Date | 2016-02-02 04:10 +0100 |
| Subject | Re: [PATCH v2 06/17] drivers:mtd:ubi:add bakvol function define in ubi layer |
| Message-ID | <qXzvQ-4pr-15@gated-at.bofh.it> |
| In reply to | #1323727 |
[Multipart message — attachments visible in raw view] — view raw
Hi Bean,
[auto build test ERROR on v4.5-rc2]
[also build test ERROR on next-20160201]
[if your patch is applied to the wrong git tree, please drop us a note to help improving the system]
url: https://github.com/0day-ci/linux/commits/Bean-Huo/Add-a-bakvol-module-in-UBI-layer-for-MLC-paired-page-power-loss-issue/20160202-104450
config: x86_64-randconfig-x012-201605 (attached as .config)
reproduce:
# save the attached .config to linux build tree
make ARCH=x86_64
Note: the linux-review/Bean-Huo/Add-a-bakvol-module-in-UBI-layer-for-MLC-paired-page-power-loss-issue/20160202-104450 HEAD 2078d3920abf1d89be7eaf087100b4482dd532dc builds fine.
It only hurts bisectibility.
All errors (new ones prefixed by >>):
drivers/mtd/ubi/eba.c: In function 'recover_peb':
>> drivers/mtd/ubi/eba.c:607:8: error: too few arguments to function 'ubi_io_write_data'
err = ubi_io_write_data(ubi, ubi->peb_buf, new_pnum, 0, data_size);
^
In file included from drivers/mtd/ubi/eba.c:47:0:
drivers/mtd/ubi/ubi.h:1073:19: note: declared here
static inline int ubi_io_write_data(struct ubi_device *ubi, const void *buf,
^
drivers/mtd/ubi/eba.c: In function 'ubi_eba_write_leb':
drivers/mtd/ubi/eba.c:678:9: error: too few arguments to function 'ubi_io_write_data'
err = ubi_io_write_data(ubi, buf, pnum, offset, len);
^
In file included from drivers/mtd/ubi/eba.c:47:0:
drivers/mtd/ubi/ubi.h:1073:19: note: declared here
static inline int ubi_io_write_data(struct ubi_device *ubi, const void *buf,
^
drivers/mtd/ubi/eba.c:729:9: error: too few arguments to function 'ubi_io_write_data'
err = ubi_io_write_data(ubi, buf, pnum, offset, len);
^
In file included from drivers/mtd/ubi/eba.c:47:0:
drivers/mtd/ubi/ubi.h:1073:19: note: declared here
static inline int ubi_io_write_data(struct ubi_device *ubi, const void *buf,
^
drivers/mtd/ubi/eba.c: In function 'ubi_eba_write_leb_st':
drivers/mtd/ubi/eba.c:851:8: error: too few arguments to function 'ubi_io_write_data'
err = ubi_io_write_data(ubi, buf, pnum, 0, len);
^
In file included from drivers/mtd/ubi/eba.c:47:0:
drivers/mtd/ubi/ubi.h:1073:19: note: declared here
static inline int ubi_io_write_data(struct ubi_device *ubi, const void *buf,
^
drivers/mtd/ubi/eba.c: In function 'ubi_eba_atomic_leb_change':
drivers/mtd/ubi/eba.c:971:8: error: too few arguments to function 'ubi_io_write_data'
err = ubi_io_write_data(ubi, buf, pnum, 0, len);
^
In file included from drivers/mtd/ubi/eba.c:47:0:
drivers/mtd/ubi/ubi.h:1073:19: note: declared here
static inline int ubi_io_write_data(struct ubi_device *ubi, const void *buf,
^
drivers/mtd/ubi/eba.c: In function 'ubi_eba_copy_leb':
drivers/mtd/ubi/eba.c:1197:9: error: too few arguments to function 'ubi_io_write_data'
err = ubi_io_write_data(ubi, ubi->peb_buf, to, 0, aldata_size);
^
In file included from drivers/mtd/ubi/eba.c:47:0:
drivers/mtd/ubi/ubi.h:1073:19: note: declared here
static inline int ubi_io_write_data(struct ubi_device *ubi, const void *buf,
^
--
>> drivers/mtd/ubi/io.c:235:5: error: conflicting types for 'ubi_io_write'
int ubi_io_write(struct ubi_device *ubi, const void *buf, int pnum, int offset,
^
In file included from drivers/mtd/ubi/io.c:92:0:
drivers/mtd/ubi/ubi.h:883:5: note: previous declaration of 'ubi_io_write' was here
int ubi_io_write(struct ubi_device *ubi, const void *buf, int pnum, int offset,
^
vim +/ubi_io_write_data +607 drivers/mtd/ubi/eba.c
4df581f3 Artem Bityutskiy 2008-12-04 601 goto out_unlock;
801c135c Artem B. Bityutskiy 2006-06-27 602 }
8fb2a514 Richard Weinberger 2014-11-10 603 }
801c135c Artem B. Bityutskiy 2006-06-27 604
0ca39d74 Artem Bityutskiy 2012-03-08 605 memcpy(ubi->peb_buf + offset, buf, len);
801c135c Artem B. Bityutskiy 2006-06-27 606
0ca39d74 Artem Bityutskiy 2012-03-08 @607 err = ubi_io_write_data(ubi, ubi->peb_buf, new_pnum, 0, data_size);
4df581f3 Artem Bityutskiy 2008-12-04 608 if (err) {
4df581f3 Artem Bityutskiy 2008-12-04 609 mutex_unlock(&ubi->buf_mutex);
111ab0b2 Richard Weinberger 2014-11-10 610 up_read(&ubi->fm_eba_sem);
:::::: The code at line 607 was first introduced by commit
:::::: 0ca39d74de8b269fb61eac11b75bd6c3fc887c28 UBI: rename peb_buf1 to peb_buf
:::::: TO: Artem Bityutskiy <artem.bityutskiy@linux.intel.com>
:::::: CC: Artem Bityutskiy <artem.bityutskiy@linux.intel.com>
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation
[toc] | [prev] | [next] | [standalone]
| From | kbuild test robot <lkp@intel.com> |
|---|---|
| Date | 2016-02-02 04:20 +0100 |
| Subject | Re: [PATCH v2 06/17] drivers:mtd:ubi:add bakvol function define in ubi layer |
| Message-ID | <qXzFw-4xb-7@gated-at.bofh.it> |
| In reply to | #1323727 |
[Multipart message — attachments visible in raw view] — view raw
Hi Bean,
[auto build test ERROR on v4.5-rc2]
[also build test ERROR on next-20160201]
[if your patch is applied to the wrong git tree, please drop us a note to help improving the system]
url: https://github.com/0day-ci/linux/commits/Bean-Huo/Add-a-bakvol-module-in-UBI-layer-for-MLC-paired-page-power-loss-issue/20160202-104450
config: x86_64-randconfig-x018-201605 (attached as .config)
reproduce:
# save the attached .config to linux build tree
make ARCH=x86_64
Note: the linux-review/Bean-Huo/Add-a-bakvol-module-in-UBI-layer-for-MLC-paired-page-power-loss-issue/20160202-104450 HEAD 2078d3920abf1d89be7eaf087100b4482dd532dc builds fine.
It only hurts bisectibility.
All errors (new ones prefixed by >>):
drivers/mtd/ubi/fastmap.c: In function 'ubi_write_fastmap':
>> drivers/mtd/ubi/fastmap.c:1315:9: error: too few arguments to function 'ubi_io_write'
ret = ubi_io_write(ubi, fm_raw + (i * ubi->leb_size),
^
In file included from drivers/mtd/ubi/fastmap.c:18:0:
drivers/mtd/ubi/ubi.h:883:5: note: declared here
int ubi_io_write(struct ubi_device *ubi, const void *buf, int pnum, int offset,
^
vim +/ubi_io_write +1315 drivers/mtd/ubi/fastmap.c
dbb7d2a88 Richard Weinberger 2012-09-26 1309 new_fm->e[i]->pnum);
dbb7d2a88 Richard Weinberger 2012-09-26 1310 goto out_kfree;
dbb7d2a88 Richard Weinberger 2012-09-26 1311 }
dbb7d2a88 Richard Weinberger 2012-09-26 1312 }
dbb7d2a88 Richard Weinberger 2012-09-26 1313
dbb7d2a88 Richard Weinberger 2012-09-26 1314 for (i = 0; i < new_fm->used_blocks; i++) {
dbb7d2a88 Richard Weinberger 2012-09-26 @1315 ret = ubi_io_write(ubi, fm_raw + (i * ubi->leb_size),
dbb7d2a88 Richard Weinberger 2012-09-26 1316 new_fm->e[i]->pnum, ubi->leb_start, ubi->leb_size);
dbb7d2a88 Richard Weinberger 2012-09-26 1317 if (ret) {
326087033 Tanya Brokhman 2014-10-20 1318 ubi_err(ubi, "unable to write fastmap to PEB %i!",
:::::: The code at line 1315 was first introduced by commit
:::::: dbb7d2a88d2a7bd3624e090bee42cdee048d9290 UBI: Add fastmap core
:::::: TO: Richard Weinberger <richard@nod.at>
:::::: CC: Artem Bityutskiy <artem.bityutskiy@linux.intel.com>
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation
[toc] | [prev] | [standalone]
Back to top | Article view | linux.kernel
csiph-web