Lines Matching defs:sleb

488  * @sleb: scanned LEB information
491 static int fix_unclean_leb(struct ubifs_info *c, struct ubifs_scan_leb *sleb,
494 int lnum = sleb->lnum, endpt = start;
497 if (!list_empty(&sleb->nodes)) {
500 snod = list_entry(sleb->nodes.prev,
510 lnum, start, sleb->endpt);
522 lnum, start, sleb->endpt);
531 err = ubifs_leb_read(c, lnum, sleb->buf, 0,
541 void *buf = sleb->buf + len - pad_len;
546 err = ubifs_leb_change(c, lnum, sleb->buf, len);
556 * @sleb: scanned LEB information
562 static void drop_last_group(struct ubifs_scan_leb *sleb, int *offs)
564 while (!list_empty(&sleb->nodes)) {
568 snod = list_entry(sleb->nodes.prev, struct ubifs_scan_node,
575 sleb->lnum, snod->offs);
579 sleb->nodes_cnt -= 1;
585 * @sleb: scanned LEB information
591 static void drop_last_node(struct ubifs_scan_leb *sleb, int *offs)
595 if (!list_empty(&sleb->nodes)) {
596 snod = list_entry(sleb->nodes.prev, struct ubifs_scan_node,
600 sleb->lnum, snod->offs);
604 sleb->nodes_cnt -= 1;
627 struct ubifs_scan_leb *sleb;
632 sleb = ubifs_start_scan(c, lnum, offs, sbuf);
633 if (IS_ERR(sleb))
634 return sleb;
653 err = ubifs_add_snod(c, sleb, buf, offs);
708 drop_last_group(sleb, &offs);
762 drop_last_node(sleb, &offs);
769 ubifs_end_scan(c, sleb, lnum, offs);
771 err = fix_unclean_leb(c, sleb, start);
775 return sleb;
786 ubifs_scan_destroy(sleb);
859 struct ubifs_scan_leb *sleb;
871 sleb = ubifs_scan(c, next_lnum, 0, sbuf, 0);
872 if (IS_ERR(sleb))
873 return sleb;
874 if (sleb->nodes_cnt) {
878 snod = list_entry(sleb->nodes.next,
885 ubifs_scan_destroy(sleb);
892 ubifs_scan_destroy(sleb);
896 ubifs_scan_destroy(sleb);