Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package libzbc for openSUSE:Factory checked in at 2024-07-01 11:22:20 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/libzbc (Old) and /work/SRC/openSUSE:Factory/.libzbc.new.18349 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libzbc" Mon Jul 1 11:22:20 2024 rev:24 rq:1184230 version:6.1.0 Changes: -------- --- /work/SRC/openSUSE:Factory/libzbc/libzbc.changes 2024-06-27 16:05:35.139643954 +0200 +++ /work/SRC/openSUSE:Factory/.libzbc.new.18349/libzbc.changes 2024-07-01 11:23:09.617145221 +0200 @@ -1,0 +2,7 @@ +Mon Jul 1 08:34:45 UTC 2024 - Jan Engelhardt <[email protected]> + +- Update to release 6.1 + * add functionality to process multiple consequtive zones with + zbc_write_zone tool + +------------------------------------------------------------------- Old: ---- v6.0.0.tar.gz New: ---- _scmsync.obsinfo build.specials.obscpio v6.1.0.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ libzbc.spec ++++++ --- /var/tmp/diff_new_pack.ahGRCY/_old 2024-07-01 11:23:10.069161581 +0200 +++ /var/tmp/diff_new_pack.ahGRCY/_new 2024-07-01 11:23:10.069161581 +0200 @@ -18,7 +18,7 @@ Name: libzbc %define lname libzbc6 -Version: 6.0.0 +Version: 6.1.0 Release: 0 Summary: Library for manipulating ZBC and ZAC disks License: BSD-2-Clause AND LGPL-3.0-or-later ++++++ _scmsync.obsinfo ++++++ mtime: 1719822991 commit: 5127b3efbff1e4ec14b5d39fff2576f3a178dd20dfb69946cf817ea5b155c932 url: https://src.opensuse.org/jengelh/libzbc revision: master ++++++ v6.0.0.tar.gz -> v6.1.0.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libzbc-6.0.0/configure.ac new/libzbc-6.1.0/configure.ac --- old/libzbc-6.0.0/configure.ac 2024-06-10 05:34:05.000000000 +0200 +++ new/libzbc-6.1.0/configure.ac 2024-07-01 04:12:26.000000000 +0200 @@ -4,7 +4,7 @@ # Copyright (c) 2009-2014, HGST, Inc. All rights reserved. # Copyright (c) 2020 Western Digital Corporation or its affiliates. -AC_INIT([libzbc], [6.0.0], +AC_INIT([libzbc], [6.1.0], [[email protected], [email protected]], [libzbc], [https://github.com/westerndigitalcorporation/libzbc]) @@ -22,7 +22,7 @@ [ --enable-debug Compile with "-g" option], [DBGCFLAGS="-g"], [DBGCFLAGS="-O2"]) -CFLAGS="$CFLAGS $DBGCFLAGS" +CFLAGS="$DBGCFLAGS $CFLAGS" AC_PROG_CC AC_PROG_INSTALL diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libzbc-6.0.0/lib/Makefile.am new/libzbc-6.1.0/lib/Makefile.am --- old/libzbc-6.0.0/lib/Makefile.am 2024-06-10 05:34:05.000000000 +0200 +++ new/libzbc-6.1.0/lib/Makefile.am 2024-07-01 04:12:26.000000000 +0200 @@ -5,7 +5,6 @@ # Copyright (c) 2020 Western Digital Corporation or its affiliates. AM_CFLAGS = \ - $(CFLAGS) \ -Wall -Wextra -Wno-unused-parameter \ -I$(top_srcdir)/include diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libzbc-6.0.0/test/programs/Makefile.am new/libzbc-6.1.0/test/programs/Makefile.am --- old/libzbc-6.0.0/test/programs/Makefile.am 2024-06-10 05:34:05.000000000 +0200 +++ new/libzbc-6.1.0/test/programs/Makefile.am 2024-07-01 04:12:26.000000000 +0200 @@ -7,7 +7,6 @@ SUBDIRS = . $(subdirs) AM_CFLAGS = \ - -O2 \ -Wall -Wextra -Wno-unused-parameter \ -I$(top_srcdir)/include diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libzbc-6.0.0/tools/Makefile.am new/libzbc-6.1.0/tools/Makefile.am --- old/libzbc-6.0.0/tools/Makefile.am 2024-06-10 05:34:05.000000000 +0200 +++ new/libzbc-6.1.0/tools/Makefile.am 2024-07-01 04:12:26.000000000 +0200 @@ -7,7 +7,6 @@ SUBDIRS = . $(subdirs) AM_CFLAGS = \ - $(CFLAGS) \ -Wall -Wextra -Wno-unused-parameter \ -I$(top_srcdir)/include diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libzbc-6.0.0/tools/gui/Makefile.am new/libzbc-6.1.0/tools/gui/Makefile.am --- old/libzbc-6.0.0/tools/gui/Makefile.am 2024-06-10 05:34:05.000000000 +0200 +++ new/libzbc-6.1.0/tools/gui/Makefile.am 2024-07-01 04:12:26.000000000 +0200 @@ -15,7 +15,7 @@ gui/gzbc_if_dev.c \ gui/gzbc.h -gzbc_CFLAGS = $(CFLAGS) $(GTK_CFLAGS) +gzbc_CFLAGS = $(AM_CFLAGS) $(GTK_CFLAGS) gzbc_LDADD = $(libzbc_ldadd) $(GTK_LIBS) -lpthread dist_man8_MANS += gui/gzbc.8 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libzbc-6.0.0/tools/gui/gzbc_if.c new/libzbc-6.1.0/tools/gui/gzbc_if.c --- old/libzbc-6.0.0/tools/gui/gzbc_if.c 2024-06-10 05:34:05.000000000 +0200 +++ new/libzbc-6.1.0/tools/gui/gzbc_if.c 2024-07-01 04:12:26.000000000 +0200 @@ -153,7 +153,6 @@ void dz_if_add_device(char *dev_path) { - GtkWidget *dialog; GtkWidget *label; GtkWidget *hbox; GtkWidget *button; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libzbc-6.0.0/tools/gui/gzbc_if_dev.c new/libzbc-6.1.0/tools/gui/gzbc_if_dev.c --- old/libzbc-6.0.0/tools/gui/gzbc_if_dev.c 2024-06-10 05:34:05.000000000 +0200 +++ new/libzbc-6.1.0/tools/gui/gzbc_if_dev.c 2024-07-01 04:12:26.000000000 +0200 @@ -1123,7 +1123,6 @@ static void dz_if_update_zones(dz_dev_t *dzd) { - GtkWidget *dialog; int ret; /* Update zone information */ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libzbc-6.0.0/tools/viewer/Makefile.am new/libzbc-6.1.0/tools/viewer/Makefile.am --- old/libzbc-6.0.0/tools/viewer/Makefile.am 2024-06-10 05:34:05.000000000 +0200 +++ new/libzbc-6.1.0/tools/viewer/Makefile.am 2024-07-01 04:12:26.000000000 +0200 @@ -16,7 +16,7 @@ viewer/gzviewer_if.c \ viewer/gzviewer.h -gzviewer_CFLAGS = $(CFLAGS) $(GTK_CFLAGS) +gzviewer_CFLAGS = $(AM_CFLAGS) $(GTK_CFLAGS) gzviewer_LDADD = $(libzbc_ldadd) $(GTK_LIBS) dist_man8_MANS += viewer/gzviewer.8 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libzbc-6.0.0/tools/write_zone/zbc_write_zone.c new/libzbc-6.1.0/tools/write_zone/zbc_write_zone.c --- old/libzbc-6.0.0/tools/write_zone/zbc_write_zone.c 2024-06-10 05:34:05.000000000 +0200 +++ new/libzbc-6.1.0/tools/write_zone/zbc_write_zone.c 2024-07-01 04:12:26.000000000 +0200 @@ -26,7 +26,22 @@ #include <libzbc/zbc.h> -static int zbc_write_zone_abort = 0; +static int zbc_write_zone_abort; + +static ssize_t zbc_read_pattern_file(char *file, int fd, void *iobuf, + size_t iosize, size_t ios) +{ + int ret; + + ret = read(fd, iobuf + ios, iosize - ios); + if (ret < 0) { + fprintf(stderr, "Read file \"%s\" failed %d (%s)\n", + file, + errno, strerror(errno)); + } + + return ret; +} static inline unsigned long long zbc_write_zone_usec(void) { @@ -95,13 +110,13 @@ char *path, *file = NULL, *end; long long sector_ofst = 0; long long sector_max = 0; - long long zone_ofst = 0; + long long zone_ofst = 0, zofst; bool flush = false, floop = false, vio = false; unsigned long pattern = 0; int flags = O_WRONLY; int oflags = 0; struct iovec *iov = NULL; - int iovcnt = 1, n; + int iovcnt = 1, n, z, nz = 1; /* Check command line */ if (argc < 4) @@ -204,6 +219,18 @@ return 1; } + } else if (strcmp(argv[i], "-nz") == 0) { + + if (i >= (argc - 1)) + goto err; + i++; + + nz = atoi(argv[i]); + if (nz < 0) { + fprintf(stderr, "Invalid number of zones\n"); + return 1; + } + } else if (argv[i][0] == '-') { fprintf(stderr, "Unknown option \"%s\"\n", argv[i]); @@ -273,12 +300,17 @@ goto out; } - /* Get target zone */ + /* Get the first target zone */ if (zidx >= (int)nr_zones) { fprintf(stderr, "Target zone not found\n"); ret = 1; goto out; } + if (zidx + nz > (int)nr_zones) { + fprintf(stderr, "-nz value is too large\n"); + ret = 1; + goto out; + } iozone = &zones[zidx]; if (zbc_zone_conventional(iozone)) @@ -390,44 +422,38 @@ } - sector_max = zbc_zone_length(iozone); - if (zbc_zone_sequential(iozone)) { - if (zbc_zone_full(iozone)) - sector_max = 0; - else if (zbc_zone_wp(iozone) > zbc_zone_start(iozone)) - sector_max = - zbc_zone_wp(iozone) - zbc_zone_start(iozone); - } - elapsed = zbc_write_zone_usec(); - while (!zbc_write_zone_abort) { + for (z = 0; z < nz && !zbc_write_zone_abort; z++, iozone++) { + sector_max = zbc_zone_length(iozone); + if (zbc_zone_sequential(iozone)) { + if (zbc_zone_full(iozone)) + sector_max = 0; + else if (zbc_zone_wp(iozone) > zbc_zone_start(iozone)) + sector_max = + zbc_zone_wp(iozone) - zbc_zone_start(iozone); + } + zofst = zone_ofst; - if (file) { + while (!zbc_write_zone_abort) { - size_t ios; + if (file) { - /* Read file */ - ret = read(fd, iobuf, iosize); - if (ret < 0) { - fprintf(stderr, "Read file \"%s\" failed %d (%s)\n", - file, - errno, - strerror(errno)); - ret = 1; - break; - } + size_t ios; + + /* Read file */ + ret = zbc_read_pattern_file(file, fd, iobuf, iosize, 0); + if (ret < 0) { + ret = 1; + break; + } - ios = ret; - if (ios < iosize) { - if (floop) { + ios = ret; + if (ios < iosize && floop) { /* Rewind and read remaining of buffer */ lseek(fd, 0, SEEK_SET); - ret = read(fd, iobuf + ios, iosize - ios); + ret = zbc_read_pattern_file(file, fd, iobuf, iosize, 0); if (ret < 0) { - fprintf(stderr, "Read file \"%s\" failed %d (%s)\n", - file, - errno, strerror(errno)); ret = 1; break; } @@ -436,53 +462,53 @@ /* Clear end of buffer */ memset(iobuf + ios, 0, iosize - ios); } - } - if (!ios) - /* EOF */ - break; + if (!ios) + /* EOF */ + break; - } + } - /* Do not exceed the end of the zone */ - if (zbc_zone_sequential(iozone) && zbc_zone_full(iozone)) - sector_count = 0; - else - sector_count = iosize >> 9; - if (zone_ofst + sector_count > sector_max) - sector_count = sector_max - zone_ofst; - if (!sector_count) - break; - sector_ofst = zbc_zone_start(iozone) + zone_ofst; + /* Do not exceed the end of the zone */ + if (zbc_zone_sequential(iozone) && zbc_zone_full(iozone)) + sector_count = 0; + else + sector_count = iosize >> 9; + if (zofst + sector_count > sector_max) + sector_count = sector_max - zofst; + if (!sector_count) + break; + sector_ofst = zbc_zone_start(iozone) + zofst; - /* Write to zone */ - if (vio) { - n = zbc_map_iov(iobuf, sector_count, - iov, iovcnt, bufsize >> 9); - if (n < 0) { - fprintf(stderr, "iov map failed %d (%s)\n", - -n, strerror(-n)); + /* Write to zone */ + if (vio) { + n = zbc_map_iov(iobuf, sector_count, + iov, iovcnt, bufsize >> 9); + if (n < 0) { + fprintf(stderr, "iov map failed %d (%s)\n", + -n, strerror(-n)); + ret = 1; + goto out; + } + ret = zbc_pwritev(dev, iov, n, sector_ofst); + } else { + ret = zbc_pwrite(dev, iobuf, sector_count, sector_ofst); + } + if (ret <= 0) { + fprintf(stderr, "%s failed %zd (%s)\n", + vio ? "zbc_pwritev" : "zbc_pwrite", + -ret, strerror(-ret)); ret = 1; goto out; } - ret = zbc_pwritev(dev, iov, n, sector_ofst); - } else { - ret = zbc_pwrite(dev, iobuf, sector_count, sector_ofst); - } - if (ret <= 0) { - fprintf(stderr, "%s failed %zd (%s)\n", - vio ? "zbc_pwritev" : "zbc_pwrite", - -ret, strerror(-ret)); - ret = 1; - goto out; - } - zone_ofst += ret; - bcount += ret << 9; - iocount++; + zofst += ret; + bcount += ret << 9; + iocount++; - if (ionum > 0 && iocount >= ionum) - break; + if (ionum > 0 && iocount >= ionum) + break; + } } if (flush) {
