Lines Matching +full:cluster +full:- +full:index
1 /*-
2 * SPDX-License-Identifier: BSD-2-Clause
4 * Copyright (c) 2004-2016 Maxim Sobolev <sobomax@FreeBSD.org>
111 return (bp->info.blkno == *ap); in cmp_blkno()
156 while((opt = getopt(argc, argv, "A:C:o:s:vZdLSj:")) != -1) { in main()
179 errx(1, "invalid cluster size specified: %s", in main()
222 argc -= optind; in main()
232 magiclen = strlcpy(hdr.magic, cfs.handler->magic, sizeof(hdr.magic)); in main()
247 errx(1, "cluster size should be multiple of %d", DEV_BSIZE); in main()
249 cfs.cbound_blksz = cfs.handler->f_compress_bound(cfs.blksz); in main()
251 errx(1, "maximal compressed cluster size %zu greater than MAXPHYS %zu", in main()
254 cfs.handler->f_init(&comp_level); in main()
259 asprintf(&oname, "%s%s", cfs.iname, cfs.handler->default_sufx); in main()
293 * Initialize last+1 entry with non-heap trash. If final padding is in main()
308 /* Prepare header that we will write later when we have index ready. */ in main()
320 "%u, index length %zu bytes\n", cfs.isize, in main()
330 mkuz_fqueue_enq(cvp->wrk_queue, iblk); in main()
336 oblk = mkuz_fqueue_deq_when(cvp->results, cmp_blkno, &io); in main()
337 assert(oblk->info.blkno == (unsigned)io); in main()
338 oblk->info.offset = offset; in main()
340 if (cfs.en_dedup != 0 && oblk->info.len > 0) { in main()
343 * There should be at least one non-empty block in main()
349 if (chit != NULL && chit->offset == last_offset) { in main()
354 toc[io] = htobe64(chit->offset); in main()
355 oblk->info.len = 0; in main()
357 if (oblk->info.len > 0 && write(cfs.fdw, oblk->data, in main()
358 oblk->info.len) < 0) { in main()
364 offset += oblk->info.len; in main()
367 fprintf(stderr, "cluster #%d, in %u bytes, " in main()
369 (u_long)oblk->info.len, (u_long)be64toh(toc[io])); in main()
372 chit->blkno); in main()
384 oblk = mkuz_blk_ctor(DEV_BSIZE - (offset % DEV_BSIZE)); in main()
385 oblk->info.blkno = io; in main()
386 oblk->info.len = oblk->alen; in main()
390 (u_long)oblk->alen, DEV_BSIZE); in main()
392 mkuz_fqueue_enq(cvp->results, oblk); in main()
403 (long long)(cfs.isize - offset), in main()
404 100.0 * (long long)(cfs.isize - offset) / in main()
405 (float)cfs.isize, (float)cfs.isize / (et - st)); in main()
411 /* Write headers into pre-allocated space */ in main()
433 rval->info.blkno = blockcnt; in readblock()
440 rval->info.offset = cpos; in readblock()
442 numread = read(fd, rval->data, clstsize); in readblock()
451 rval->info.len = numread; in readblock()
459 fprintf(stderr, "usage: mkuzip [-vZdLS] [-o outfile] [-s cluster_size] " in usage()
460 "[-j ncompr] infile\n"); in usage()
501 return (*mm == val) && memcmp(mm, mm + 1, size - 1) == 0; in mkuz_memvcmp()