Hello community,

here is the log from the commit of package jfsutils for openSUSE:Factory 
checked in at 2020-05-07 15:05:01
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/jfsutils (Old)
 and      /work/SRC/openSUSE:Factory/.jfsutils.new.2738 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "jfsutils"

Thu May  7 15:05:01 2020 rev:24 rq:799990 version:1.1.15

Changes:
--------
--- /work/SRC/openSUSE:Factory/jfsutils/jfsutils.changes        2018-08-07 
09:40:35.657050453 +0200
+++ /work/SRC/openSUSE:Factory/.jfsutils.new.2738/jfsutils.changes      
2020-05-07 15:05:24.611693264 +0200
@@ -1,0 +2,11 @@
+Wed Apr 29 13:46:30 UTC 2020 - Martin Liška <[email protected]>
+
+- Added patch: libfs-Fixing-issue-with-variable-name-collision.patch
+- Remove not needed -fcommon.
+
+-------------------------------------------------------------------
+Mon Apr 27 19:21:25 UTC 2020 - Martin Liška <[email protected]>
+
+- Enable -fcommon in order to fix boo#1160272.
+
+-------------------------------------------------------------------

New:
----
  libfs-Fixing-issue-with-variable-name-collision.patch

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ jfsutils.spec ++++++
--- /var/tmp/diff_new_pack.PcTjm2/_old  2020-05-07 15:05:26.407697237 +0200
+++ /var/tmp/diff_new_pack.PcTjm2/_new  2020-05-07 15:05:26.411697246 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package jfsutils
 #
-# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2020 SUSE LLC
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -12,7 +12,7 @@
 # license that conforms to the Open Source Definition (Version 1.9)
 # published by the Open Source Initiative.
 
-# Please submit bugfixes or comments via http://bugs.opensuse.org/
+# Please submit bugfixes or comments via https://bugs.opensuse.org/
 #
 
 
@@ -23,7 +23,7 @@
 Summary:        IBM JFS Utility Programs
 License:        GPL-2.0-or-later
 Group:          System/Filesystems
-Url:            http://jfs.sf.net
+URL:            http://jfs.sf.net
 Source0:        
http://jfs.sourceforge.net/project/pub/%{name}-%{version}.tar.gz
 Source1:        jfs.pdf
 Source2:        jfslayout.pdf
@@ -32,6 +32,7 @@
 Source5:        jfs.txt
 Patch1:         jfs-headers.patch
 Patch2:         sysmacros.patch
+Patch3:         libfs-Fixing-issue-with-variable-name-collision.patch
 BuildRequires:  e2fsprogs-devel
 Provides:       jfsprogs = %{version}
 Obsoletes:      jfsprogs < %{version}
@@ -56,6 +57,7 @@
 %setup -q
 %patch1 -p1
 %patch2 -p1
+%patch3 -p1
 
 %build
 sed -i -e 's@^\./"@\." @' fsck/jfs_fsck.8 \

++++++ libfs-Fixing-issue-with-variable-name-collision.patch ++++++
>From 1c7c01420d592e0e87e532ac688e61d5a2fafab2 Mon Sep 17 00:00:00 2001
From: Larry Dewey <[email protected]>
Date: Thu, 9 Jan 2020 14:36:45 -0700
Subject: [PATCH] libfs: Fixing issue with variable name collision

Due to the structure of the old code, variable name collisions were
occuring when building with the `-fno-common` flag. These changes fix
the problem.

[LD: BSC#1160272]

Signed-off-by: Larry Dewey <[email protected]>
---
 fscklog/display.c |   4 +-
 libfs/logredo.c   | 127 +++++++++++++++++++++++-----------------------
 2 files changed, 66 insertions(+), 65 deletions(-)

diff --git a/fscklog/display.c b/fscklog/display.c
index a33d44f..ecb48ca 100644
--- a/fscklog/display.c
+++ b/fscklog/display.c
@@ -54,7 +54,7 @@ FILE *infp;
  * output: fsck extracted service log I/O buffer
  *
  */
-char xchklog_buffer[XCHKLOG_BUFSIZE];
+char display_xchklog_buffer[XCHKLOG_BUFSIZE];
 
 /* + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
  *
@@ -98,7 +98,7 @@ int xchkdmp(struct fscklog_record *local_recptr)
         * Initialize the fscklog control block
         */
        local_recptr->infile_buf_length = XCHKLOG_BUFSIZE;
-       local_recptr->infile_buf_ptr = xchklog_buffer;
+       local_recptr->infile_buf_ptr = display_xchklog_buffer;
        local_recptr->highest_msg_num =
            fsck_highest_msgid_defined + JFSCHKLOG_FIRSTMSGNUM;
 
diff --git a/libfs/logredo.c b/libfs/logredo.c
index eb897e8..c9934db 100644
--- a/libfs/logredo.c
+++ b/libfs/logredo.c
@@ -87,9 +87,9 @@ int32_t bmap_stg_bytes = 0;
  *    S T U F F    F O R    T H E    L O G
  *
  */
-struct logsuper logsup;                /* log super block */
-int32_t numdoblk;              /* number of do blocks used     */
-int32_t numnodofile;           /* number of nodo file blocks used  */
+struct logsuper global_logsup;         /* log super block */
+int32_t logredo_numdoblk;              /* number of do blocks used     */
+int32_t logredo_numnodofile;           /* number of nodo file blocks used  */
 int32_t numExtDtPg = 0;                /* number of extended dtpage blocks 
used  */
 
 /*
@@ -129,7 +129,7 @@ int32_t use_2ndary_agg_superblock;
  */
 
 /* buffer header table */
-struct bufhdr {
+struct logredo_bufhdr {
        int16_t next;           /* 2: next on free/lru list */
        int16_t prev;           /* 2: previous on free/lru list */
        int16_t hnext;          /* 2: next on hash chain */
@@ -139,27 +139,28 @@ struct bufhdr {
        int16_t reserve;        /* 2 */
        int32_t vol;            /* 4: minor of agrregate/lv number */
        pxd_t pxd;              /* 8: on-disk page pxd */
-} bufhdr[NBUFPOOL];            /* (24) */
+} logredo_bufhdr[NBUFPOOL];            /* (24) */
 
 /* buffer table */
 struct bufpool {
        char bytes[PSIZE];
-} buffer[NBUFPOOL - 1];
+} logredo_buffer[NBUFPOOL - 1];
 
 /*
  *      log page buffer cache
  *
  * log has its own 4 page buffer pool.
  */
-uint8_t afterdata[LOGPSIZE * 2];       /* buffer to read in redopage data */
+uint8_t logredo_afterdata[LOGPSIZE * 2];       /* buffer to read in redopage 
data */
 
 /*
  * Miscellaneous
  */
-caddr_t prog;                  /* Program name */
-int32_t mntcnt, bufsize;
-char *mntinfo;
-int32_t retcode;               /* return code from logredo    */
+caddr_t logredo_prog;                  /* Program name */
+extern int32_t mntcnt;
+int32_t logredo_bufsize;
+char *logredo_mntinfo;
+int32_t logredo_retcode;               /* return code from logredo    */
 int end_of_transaction = 0;
 
 /*
@@ -489,8 +490,8 @@ int jfs_logredo(caddr_t pathname, FILE *fp, int32_t 
use_2nd_aggSuper)
        /*
         * loop until we get enough memory to read vmount struct
         */
-       mntinfo = (char *) &bufsize;
-       bufsize = sizeof (int);
+       logredo_mntinfo = (char *) &logredo_bufsize;
+       logredo_bufsize = sizeof (int);
 
        /*
         * validate that the log is not currently in use;
@@ -517,21 +518,21 @@ int jfs_logredo(caddr_t pathname, FILE *fp, int32_t 
use_2nd_aggSuper)
        rc = ujfs_rw_diskblocks(Log.fp,
                                (uint64_t) (Log.xaddr +
                                            LOGPNTOB(LOGSUPER_B)),
-                               (unsigned) sizeof (struct logsuper), (char *) 
&logsup, GET);
+                               (unsigned) sizeof (struct logsuper), (char *) 
&global_logsup, GET);
        if (rc != 0) {
                fsck_send_msg(lrdo_CANTREADLOGSUP);
                rc = LOGSUPER_READ_ERROR;
                goto error_out;
        }
-       ujfs_swap_logsuper(&logsup);
+       ujfs_swap_logsuper(&global_logsup);
 
-       if (logsup.magic != LOGMAGIC) {
+       if (global_logsup.magic != LOGMAGIC) {
                fsck_send_msg(lrdo_LOGSUPBADMGC);
                rc = NOT_LOG_FILE_ERROR;
                goto error_out;
        }
 
-       if (logsup.version > LOGVERSION) {
+       if (global_logsup.version > LOGVERSION) {
                fsck_send_msg(lrdo_LOGSUPBADVER);
                rc = JFS_VERSION_ERROR;
                goto error_out;
@@ -551,7 +552,7 @@ int jfs_logredo(caddr_t pathname, FILE *fp, int32_t 
use_2nd_aggSuper)
                }
        }
 
-       if (logsup.state == LOGREDONE) {
+       if (global_logsup.state == LOGREDONE) {
                fsck_send_msg(lrdo_ALREADYREDONE);
                if (Log.location & INLINELOG)
                        if ((rc = updateSuper(0)) != 0) {
@@ -561,8 +562,8 @@ int jfs_logredo(caddr_t pathname, FILE *fp, int32_t 
use_2nd_aggSuper)
                return (0);
        }
 
-       Log.size = logsup.size;
-       Log.serial = logsup.serial;
+       Log.size = global_logsup.size;
+       Log.serial = global_logsup.serial;
 
        /*
         * find the end of log
@@ -574,10 +575,10 @@ int jfs_logredo(caddr_t pathname, FILE *fp, int32_t 
use_2nd_aggSuper)
 
                fsck_send_msg(lrdo_LOGENDBAD1);
                logError(LOGEND, 0);
-               ujfs_swap_logsuper(&logsup);
+               ujfs_swap_logsuper(&global_logsup);
                rc = ujfs_rw_diskblocks(Log.fp,
                                        (Log.xaddr + LOGPNTOB(LOGSUPER_B)),
-                                       (unsigned long) LOGPSIZE, (char *) 
&logsup, PUT);
+                                       (unsigned long) LOGPSIZE, (char *) 
&global_logsup, PUT);
                rc = logend;
                goto error_out;
        }
@@ -592,7 +593,7 @@ int jfs_logredo(caddr_t pathname, FILE *fp, int32_t 
use_2nd_aggSuper)
                goto error_out;
        }
 
-       highest_lr_byte = logsup.size * LOGPSIZE - LOGRDSIZE;
+       highest_lr_byte = global_logsup.size * LOGPSIZE - LOGRDSIZE;
 
        if ((logend < lowest_lr_byte) || (logend > highest_lr_byte)) {
                fsck_send_msg(lrdo_LOGEND, logend);
@@ -614,7 +615,7 @@ int jfs_logredo(caddr_t pathname, FILE *fp, int32_t 
use_2nd_aggSuper)
 
        do {
                logaddr = nextaddr;
-               nextaddr = logRead(logaddr, &ld, afterdata);
+               nextaddr = logRead(logaddr, &ld, logredo_afterdata);
                DBG_TRACE(("Logaddr=%x\nNextaddr=%x\n", logaddr, nextaddr))
                    nlogrecords += 1;
                /*
@@ -745,7 +746,7 @@ int jfs_logredo(caddr_t pathname, FILE *fp, int32_t 
use_2nd_aggSuper)
                 */
                if (end_of_transaction != 0) {
                        for (k = 1; k < NBUFPOOL; k++) {
-                               if ((rc = bflush(k, &buffer[k - 1])) != 0)
+                               if ((rc = bflush(k, &logredo_buffer[k - 1])) != 
0)
                                        goto error_out;
                        }
                        end_of_transaction = 0;
@@ -768,7 +769,7 @@ int jfs_logredo(caddr_t pathname, FILE *fp, int32_t 
use_2nd_aggSuper)
         * flush data page buffer cache
         */
        for (k = 1; k < NBUFPOOL; k++) {
-               if ((rc = bflush(k, &buffer[k - 1])) != 0)
+               if ((rc = bflush(k, &logredo_buffer[k - 1])) != 0)
                        break;
        }
 
@@ -810,17 +811,17 @@ int jfs_logredo(caddr_t pathname, FILE *fp, int32_t 
use_2nd_aggSuper)
         * versions of the operating system.  Therefore switch the magic
         * number to the earliest level.
         */
-       if (logsup.state != LOGREADERR) {
+       if (global_logsup.state != LOGREADERR) {
                for (k = 0; k < MAX_ACTIVE; k++)
-                       uuid_clear(logsup.active[k]);
+                       uuid_clear(global_logsup.active[k]);
 
-               logsup.end = logend;
-               logsup.state = LOGREDONE;
-               logsup.magic = LOGMAGIC;
+               global_logsup.end = logend;
+               global_logsup.state = LOGREDONE;
+               global_logsup.magic = LOGMAGIC;
        }
-       ujfs_swap_logsuper(&logsup);
+       ujfs_swap_logsuper(&global_logsup);
        rc = ujfs_rw_diskblocks(Log.fp, (Log.xaddr + LOGPNTOB(LOGSUPER_B)),
-                               LOGPSIZE, (char *) &logsup, PUT);
+                               LOGPSIZE, (char *) &global_logsup, PUT);
 
        /*
         * now log some info for the curious
@@ -833,9 +834,9 @@ int jfs_logredo(caddr_t pathname, FILE *fp, int32_t 
use_2nd_aggSuper)
 
        fsck_send_msg(lrdo_RPTNUMLOGREC, nlogrecords);
 
-       fsck_send_msg(lrdo_RPTNUMDOBLK, numdoblk);
+       fsck_send_msg(lrdo_RPTNUMDOBLK, logredo_numdoblk);
 
-       fsck_send_msg(lrdo_RPTNUMNODOBLK, numnodofile);
+       fsck_send_msg(lrdo_RPTNUMNODOBLK, logredo_numnodofile);
 
       error_out:
 
@@ -954,18 +955,18 @@ int openVol(int vol)
                 * Now that the aggregate superblock has been read, do some
                 * more validation of the log superblock
                 */
-               if (logsup.bsize != vopen[vol].lblksize) {
+               if (global_logsup.bsize != vopen[vol].lblksize) {
                        fsck_send_msg(lrdo_LOGSUPBADBLKSZ);
                        return JFS_BLKSIZE_ERROR;
                }
 
-               if (logsup.l2bsize != vopen[vol].l2bsize) {
+               if (global_logsup.l2bsize != vopen[vol].l2bsize) {
                        fsck_send_msg(lrdo_LOGSUPBADL2BLKSZ);
                        return JFS_L2BLKSIZE_ERROR;
                }
 
-               aggsb_numpages = lengthPXD(&sb.s_logpxd) * logsup.bsize / 
LOGPSIZE;
-               if (logsup.size != aggsb_numpages) {
+               aggsb_numpages = lengthPXD(&sb.s_logpxd) * global_logsup.bsize 
/ LOGPSIZE;
+               if (global_logsup.size != aggsb_numpages) {
                        fsck_send_msg(lrdo_LOGSUPBADLOGSZ);
                        return JFS_LOGSIZE_ERROR;
                }
@@ -1139,14 +1140,14 @@ int bflush(int32_t k,           /*  The index in bufhdr 
that describes buf */
        int64_t blkno;
 
        /* nothing to do ? */
-       if (bufhdr[k].modify == 0)
+       if (logredo_bufhdr[k].modify == 0)
                return (0);
 
        /* write it out */
-       vol = bufhdr[k].vol;
+       vol = logredo_bufhdr[k].vol;
        fp = vopen[vol].fp;
-       blkno = addressPXD(&bufhdr[k].pxd);
-       nbytes = lengthPXD(&bufhdr[k].pxd) << vopen[vol].l2bsize;
+       blkno = addressPXD(&logredo_bufhdr[k].pxd);
+       nbytes = lengthPXD(&logredo_bufhdr[k].pxd) << vopen[vol].l2bsize;
        rc = ujfs_rw_diskblocks(fp,
                                (uint64_t) (blkno << vopen[vol].l2bsize),
                                (unsigned) nbytes, (char *) buf, PUT);
@@ -1155,7 +1156,7 @@ int bflush(int32_t k,             /*  The index in bufhdr 
that describes buf */
                return (BFLUSH_WRITEERROR);
        }
 
-       bufhdr[k].modify = 0;
+       logredo_bufhdr[k].modify = 0;
 
        return (0);
 }
@@ -1171,7 +1172,7 @@ int bflush(int32_t k,             /*  The index in bufhdr 
that describes buf */
  */
 int findLog(FILE *fp, int *in_use)
 {
-       struct logsuper logsup;
+       struct logsuper findLog_logsup;
        struct superblock sb;
 
        *in_use = 0;
@@ -1230,9 +1231,9 @@ int findLog(FILE *fp, int *in_use)
                                }
                        }
                        ujfs_rw_diskblocks(Log.fp, LOGPNTOB(LOGSUPER_B),
-                                          sizeof (struct logsuper), &logsup, 
GET);
-                       ujfs_swap_logsuper(&logsup);
-                       if ((logsup.magic != LOGMAGIC) || 
(uuid_compare(logsup.uuid, sb.s_loguuid))) {
+                                          sizeof (struct logsuper), 
&findLog_logsup, GET);
+                       ujfs_swap_logsuper(&findLog_logsup);
+                       if ((findLog_logsup.magic != LOGMAGIC) || 
(uuid_compare(findLog_logsup.uuid, sb.s_loguuid))) {
                                fclose(Log.fp);
                                *in_use = 0;
                                goto by_uuid;
@@ -1253,9 +1254,9 @@ int findLog(FILE *fp, int *in_use)
        /*
         * is this an external log?
         */
-       ujfs_rw_diskblocks(fp, LOGPNTOB(LOGSUPER_B), sizeof (struct logsuper), 
&logsup, GET);
-       ujfs_swap_logsuper(&logsup);
-       if (logsup.magic != LOGMAGIC) {
+       ujfs_rw_diskblocks(fp, LOGPNTOB(LOGSUPER_B), sizeof (struct logsuper), 
&findLog_logsup, GET);
+       ujfs_swap_logsuper(&findLog_logsup);
+       if (global_logsup.magic != LOGMAGIC) {
                fsck_send_msg(lrdo_NOTAFSDEV);
                return NOT_FSDEV_ERROR;
        }
@@ -1280,7 +1281,7 @@ int fsError(int type,             /* error types */
 
        fsck_send_msg(lrdo_ERRORONVOL, vol);
 
-       retcode = -1;
+       logredo_retcode = -1;
        vopen[vol].status = FM_LOGREDO;
 
        switch (type) {
@@ -1320,8 +1321,8 @@ int fsError(int type,             /* error types */
 int logError(int type, int logaddr)
 {
        int k;
-       retcode = -1;
-       logsup.state = LOGREADERR;
+       logredo_retcode = -1;
+       global_logsup.state = LOGREADERR;
        switch (type) {
        case LOGEND:
                fsck_send_msg(lrdo_FINDLOGENDFAIL);
@@ -1376,12 +1377,12 @@ static int recoverExtendFS(FILE *fp)
         * read bmap global control page
         */
        /* read superblock yet again */
-       sbp = (struct superblock *) &buffer[0];
+       sbp = (struct superblock *) &logredo_buffer[0];
        if (rdwrSuper(fp, sbp, PB_READ))
                goto errout;
 
        /* read primary block allocation map inode */
-       dip = (char *) &buffer[1];
+       dip = (char *) &logredo_buffer[1];
        if (ujfs_rw_diskblocks(fp, AITBL_OFF, PSIZE, dip, GET)) {
                fsck_send_msg(lrdo_EXTFSREADFSSUPERFAIL);
                goto errout;
@@ -1391,7 +1392,7 @@ static int recoverExtendFS(FILE *fp)
        dip1 = (struct dinode *) dip;
        dip1 += BMAP_I;
 
-       bp = (char *) &buffer[2];       /* utility buffer */
+       bp = (char *) &logredo_buffer[2];       /* utility buffer */
 
        /* start from root in dinode */
        p = (xtpage_t *) & dip1->di_btroot;
@@ -1660,15 +1661,15 @@ static int recoverExtendFS(FILE *fp)
         */
        /* read log superblock */
        t64 = (addressPXD(&sbp->s_logpxd) << sbp->s_l2bsize) + LOGPSIZE;
-       if (ujfs_rw_diskblocks(fp, t64, LOGPSIZE, &logsup, GET)) {
+       if (ujfs_rw_diskblocks(fp, t64, LOGPSIZE, &global_logsup, GET)) {
                fsck_send_msg(lrdo_EXTFSREADLOGSUPFAIL);
                goto errout;
        }
 
-       logsup.end = findEndOfLog();
-       logsup.state = LOGREDONE;
+       global_logsup.end = findEndOfLog();
+       global_logsup.state = LOGREDONE;
 
-       if (ujfs_rw_diskblocks(fp, t64, LOGPSIZE, &logsup, PUT)) {
+       if (ujfs_rw_diskblocks(fp, t64, LOGPSIZE, &global_logsup, PUT)) {
                fsck_send_msg(lrdo_EXTFSWRITELOGSUPFAIL);
                goto errout;
        }
@@ -1791,11 +1792,11 @@ static int nfsisloaded()
        if (entry = load("/usr/sbin/probe", 0, 0))
                return (1);
        if (errno == ENOEXEC) {
-               DBG_TRACE(("%s: nfs is not loaded\n", prog))
+               DBG_TRACE(("%s: nfs is not loaded\n", logredo_prog))
                    return (0);
        }
        sav_errno = errno;
-       DBG_TRACE(("%s: ", prog))
+       DBG_TRACE(("%s: ", logredo_prog))
            errno = sav_errno;
        perror("load");
        return (0);
-- 
2.24.1


Reply via email to