diff options
Diffstat (limited to 'fs/ubifs/lpt_commit.c')
-rw-r--r-- | fs/ubifs/lpt_commit.c | 58 |
1 files changed, 25 insertions, 33 deletions
diff --git a/fs/ubifs/lpt_commit.c b/fs/ubifs/lpt_commit.c index 4fa70734e6e7..9daaeef675dd 100644 --- a/fs/ubifs/lpt_commit.c +++ b/fs/ubifs/lpt_commit.c | |||
@@ -320,8 +320,8 @@ static int layout_cnodes(struct ubifs_info *c) | |||
320 | return 0; | 320 | return 0; |
321 | 321 | ||
322 | no_space: | 322 | no_space: |
323 | ubifs_err("LPT out of space at LEB %d:%d needing %d, done_ltab %d, " | 323 | ubifs_err("LPT out of space at LEB %d:%d needing %d, done_ltab %d, done_lsave %d", |
324 | "done_lsave %d", lnum, offs, len, done_ltab, done_lsave); | 324 | lnum, offs, len, done_ltab, done_lsave); |
325 | ubifs_dump_lpt_info(c); | 325 | ubifs_dump_lpt_info(c); |
326 | ubifs_dump_lpt_lebs(c); | 326 | ubifs_dump_lpt_lebs(c); |
327 | dump_stack(); | 327 | dump_stack(); |
@@ -545,8 +545,8 @@ static int write_cnodes(struct ubifs_info *c) | |||
545 | return 0; | 545 | return 0; |
546 | 546 | ||
547 | no_space: | 547 | no_space: |
548 | ubifs_err("LPT out of space mismatch at LEB %d:%d needing %d, done_ltab " | 548 | ubifs_err("LPT out of space mismatch at LEB %d:%d needing %d, done_ltab %d, done_lsave %d", |
549 | "%d, done_lsave %d", lnum, offs, len, done_ltab, done_lsave); | 549 | lnum, offs, len, done_ltab, done_lsave); |
550 | ubifs_dump_lpt_info(c); | 550 | ubifs_dump_lpt_info(c); |
551 | ubifs_dump_lpt_lebs(c); | 551 | ubifs_dump_lpt_lebs(c); |
552 | dump_stack(); | 552 | dump_stack(); |
@@ -1662,21 +1662,19 @@ static int dbg_check_ltab_lnum(struct ubifs_info *c, int lnum) | |||
1662 | continue; | 1662 | continue; |
1663 | } | 1663 | } |
1664 | if (!dbg_is_all_ff(p, len)) { | 1664 | if (!dbg_is_all_ff(p, len)) { |
1665 | dbg_msg("invalid empty space in LEB %d at %d", | 1665 | ubifs_err("invalid empty space in LEB %d at %d", |
1666 | lnum, c->leb_size - len); | 1666 | lnum, c->leb_size - len); |
1667 | err = -EINVAL; | 1667 | err = -EINVAL; |
1668 | } | 1668 | } |
1669 | i = lnum - c->lpt_first; | 1669 | i = lnum - c->lpt_first; |
1670 | if (len != c->ltab[i].free) { | 1670 | if (len != c->ltab[i].free) { |
1671 | dbg_msg("invalid free space in LEB %d " | 1671 | ubifs_err("invalid free space in LEB %d (free %d, expected %d)", |
1672 | "(free %d, expected %d)", | 1672 | lnum, len, c->ltab[i].free); |
1673 | lnum, len, c->ltab[i].free); | ||
1674 | err = -EINVAL; | 1673 | err = -EINVAL; |
1675 | } | 1674 | } |
1676 | if (dirty != c->ltab[i].dirty) { | 1675 | if (dirty != c->ltab[i].dirty) { |
1677 | dbg_msg("invalid dirty space in LEB %d " | 1676 | ubifs_err("invalid dirty space in LEB %d (dirty %d, expected %d)", |
1678 | "(dirty %d, expected %d)", | 1677 | lnum, dirty, c->ltab[i].dirty); |
1679 | lnum, dirty, c->ltab[i].dirty); | ||
1680 | err = -EINVAL; | 1678 | err = -EINVAL; |
1681 | } | 1679 | } |
1682 | goto out; | 1680 | goto out; |
@@ -1888,8 +1886,7 @@ static void dump_lpt_leb(const struct ubifs_info *c, int lnum) | |||
1888 | int err, len = c->leb_size, node_type, node_num, node_len, offs; | 1886 | int err, len = c->leb_size, node_type, node_num, node_len, offs; |
1889 | void *buf, *p; | 1887 | void *buf, *p; |
1890 | 1888 | ||
1891 | printk(KERN_DEBUG "(pid %d) start dumping LEB %d\n", | 1889 | pr_err("(pid %d) start dumping LEB %d\n", current->pid, lnum); |
1892 | current->pid, lnum); | ||
1893 | buf = p = __vmalloc(c->leb_size, GFP_NOFS, PAGE_KERNEL); | 1890 | buf = p = __vmalloc(c->leb_size, GFP_NOFS, PAGE_KERNEL); |
1894 | if (!buf) { | 1891 | if (!buf) { |
1895 | ubifs_err("cannot allocate memory to dump LPT"); | 1892 | ubifs_err("cannot allocate memory to dump LPT"); |
@@ -1907,14 +1904,14 @@ static void dump_lpt_leb(const struct ubifs_info *c, int lnum) | |||
1907 | 1904 | ||
1908 | pad_len = get_pad_len(c, p, len); | 1905 | pad_len = get_pad_len(c, p, len); |
1909 | if (pad_len) { | 1906 | if (pad_len) { |
1910 | printk(KERN_DEBUG "LEB %d:%d, pad %d bytes\n", | 1907 | pr_err("LEB %d:%d, pad %d bytes\n", |
1911 | lnum, offs, pad_len); | 1908 | lnum, offs, pad_len); |
1912 | p += pad_len; | 1909 | p += pad_len; |
1913 | len -= pad_len; | 1910 | len -= pad_len; |
1914 | continue; | 1911 | continue; |
1915 | } | 1912 | } |
1916 | if (len) | 1913 | if (len) |
1917 | printk(KERN_DEBUG "LEB %d:%d, free %d bytes\n", | 1914 | pr_err("LEB %d:%d, free %d bytes\n", |
1918 | lnum, offs, len); | 1915 | lnum, offs, len); |
1919 | break; | 1916 | break; |
1920 | } | 1917 | } |
@@ -1925,11 +1922,10 @@ static void dump_lpt_leb(const struct ubifs_info *c, int lnum) | |||
1925 | { | 1922 | { |
1926 | node_len = c->pnode_sz; | 1923 | node_len = c->pnode_sz; |
1927 | if (c->big_lpt) | 1924 | if (c->big_lpt) |
1928 | printk(KERN_DEBUG "LEB %d:%d, pnode num %d\n", | 1925 | pr_err("LEB %d:%d, pnode num %d\n", |
1929 | lnum, offs, node_num); | 1926 | lnum, offs, node_num); |
1930 | else | 1927 | else |
1931 | printk(KERN_DEBUG "LEB %d:%d, pnode\n", | 1928 | pr_err("LEB %d:%d, pnode\n", lnum, offs); |
1932 | lnum, offs); | ||
1933 | break; | 1929 | break; |
1934 | } | 1930 | } |
1935 | case UBIFS_LPT_NNODE: | 1931 | case UBIFS_LPT_NNODE: |
@@ -1939,29 +1935,28 @@ static void dump_lpt_leb(const struct ubifs_info *c, int lnum) | |||
1939 | 1935 | ||
1940 | node_len = c->nnode_sz; | 1936 | node_len = c->nnode_sz; |
1941 | if (c->big_lpt) | 1937 | if (c->big_lpt) |
1942 | printk(KERN_DEBUG "LEB %d:%d, nnode num %d, ", | 1938 | pr_err("LEB %d:%d, nnode num %d, ", |
1943 | lnum, offs, node_num); | 1939 | lnum, offs, node_num); |
1944 | else | 1940 | else |
1945 | printk(KERN_DEBUG "LEB %d:%d, nnode, ", | 1941 | pr_err("LEB %d:%d, nnode, ", |
1946 | lnum, offs); | 1942 | lnum, offs); |
1947 | err = ubifs_unpack_nnode(c, p, &nnode); | 1943 | err = ubifs_unpack_nnode(c, p, &nnode); |
1948 | for (i = 0; i < UBIFS_LPT_FANOUT; i++) { | 1944 | for (i = 0; i < UBIFS_LPT_FANOUT; i++) { |
1949 | printk(KERN_CONT "%d:%d", nnode.nbranch[i].lnum, | 1945 | pr_cont("%d:%d", nnode.nbranch[i].lnum, |
1950 | nnode.nbranch[i].offs); | 1946 | nnode.nbranch[i].offs); |
1951 | if (i != UBIFS_LPT_FANOUT - 1) | 1947 | if (i != UBIFS_LPT_FANOUT - 1) |
1952 | printk(KERN_CONT ", "); | 1948 | pr_cont(", "); |
1953 | } | 1949 | } |
1954 | printk(KERN_CONT "\n"); | 1950 | pr_cont("\n"); |
1955 | break; | 1951 | break; |
1956 | } | 1952 | } |
1957 | case UBIFS_LPT_LTAB: | 1953 | case UBIFS_LPT_LTAB: |
1958 | node_len = c->ltab_sz; | 1954 | node_len = c->ltab_sz; |
1959 | printk(KERN_DEBUG "LEB %d:%d, ltab\n", | 1955 | pr_err("LEB %d:%d, ltab\n", lnum, offs); |
1960 | lnum, offs); | ||
1961 | break; | 1956 | break; |
1962 | case UBIFS_LPT_LSAVE: | 1957 | case UBIFS_LPT_LSAVE: |
1963 | node_len = c->lsave_sz; | 1958 | node_len = c->lsave_sz; |
1964 | printk(KERN_DEBUG "LEB %d:%d, lsave len\n", lnum, offs); | 1959 | pr_err("LEB %d:%d, lsave len\n", lnum, offs); |
1965 | break; | 1960 | break; |
1966 | default: | 1961 | default: |
1967 | ubifs_err("LPT node type %d not recognized", node_type); | 1962 | ubifs_err("LPT node type %d not recognized", node_type); |
@@ -1972,8 +1967,7 @@ static void dump_lpt_leb(const struct ubifs_info *c, int lnum) | |||
1972 | len -= node_len; | 1967 | len -= node_len; |
1973 | } | 1968 | } |
1974 | 1969 | ||
1975 | printk(KERN_DEBUG "(pid %d) finish dumping LEB %d\n", | 1970 | pr_err("(pid %d) finish dumping LEB %d\n", current->pid, lnum); |
1976 | current->pid, lnum); | ||
1977 | out: | 1971 | out: |
1978 | vfree(buf); | 1972 | vfree(buf); |
1979 | return; | 1973 | return; |
@@ -1990,12 +1984,10 @@ void ubifs_dump_lpt_lebs(const struct ubifs_info *c) | |||
1990 | { | 1984 | { |
1991 | int i; | 1985 | int i; |
1992 | 1986 | ||
1993 | printk(KERN_DEBUG "(pid %d) start dumping all LPT LEBs\n", | 1987 | pr_err("(pid %d) start dumping all LPT LEBs\n", current->pid); |
1994 | current->pid); | ||
1995 | for (i = 0; i < c->lpt_lebs; i++) | 1988 | for (i = 0; i < c->lpt_lebs; i++) |
1996 | dump_lpt_leb(c, i + c->lpt_first); | 1989 | dump_lpt_leb(c, i + c->lpt_first); |
1997 | printk(KERN_DEBUG "(pid %d) finish dumping all LPT LEBs\n", | 1990 | pr_err("(pid %d) finish dumping all LPT LEBs\n", current->pid); |
1998 | current->pid); | ||
1999 | } | 1991 | } |
2000 | 1992 | ||
2001 | /** | 1993 | /** |