xfsdump ftbfs in focal (all archs)

Bug #1870085 reported by Matthias Klose
12
This bug affects 1 person
Affects Status Importance Assigned to Milestone
xfsdump (Ubuntu)
Fix Released
High
Unassigned
Focal
Fix Committed
High
Unassigned

Bug Description

[ Impact ]

seen in the second focal test rebuild
https://launchpad.net/ubuntu/+archive/test-rebuild-20200327-focal/+build/18987191/+files/buildlog_ubuntu-focal-amd64.xfsdump_3.1.6+nmu2build1_BUILDING.txt.gz

      | ^~~~~~
drive.c:361:24: note: include ‘<stdlib.h>’ or provide a declaration of ‘calloc’
drive.c: In function ‘drive_allochdrs’:
drive.c:402:29: warning: incompatible implicit declaration of built-in function ‘calloc’
  402 | grhdrp = ( global_hdr_t * )calloc( 1, sizeof( global_hdr_t ));
      | ^~~~~~
drive.c:402:29: note: include ‘<stdlib.h>’ or provide a declaration of ‘calloc’
    [CC] drive_scsitape.o
In file included from drive_scsitape.c:38:
types.h:38: warning: "UUID_STR_LEN" redefined
   38 | #define UUID_STR_LEN 36
      |
In file included from drive_scsitape.c:34:
/usr/include/uuid/uuid.h:65: note: this is the location of the previous definition
   65 | #define UUID_STR_LEN 37
      |
drive_scsitape.c: In function ‘do_return_read_buf’:
drive_scsitape.c:997:9: warning: variable ‘ownedcnt’ set but not used [-Wunused-but-set-variable]
  997 | size_t ownedcnt;
      | ^~~~~~~~
drive_scsitape.c: In function ‘do_seek_mark’:
drive_scsitape.c:1346:13: warning: variable ‘recoff’ set but not used [-Wunused-but-set-variable]
 1346 | uint32_t recoff;
      | ^~~~~~
    [CC] drive_simple.o
In file included from drive_simple.c:39:
types.h:38: warning: "UUID_STR_LEN" redefined
   38 | #define UUID_STR_LEN 36
      |
In file included from /usr/include/xfs/linux.h:8,
                 from /usr/include/xfs/xfs.h:9,
                 from drive_simple.c:19:
/usr/include/uuid/uuid.h:65: note: this is the location of the previous definition
   65 | #define UUID_STR_LEN 37
      |
In file included from drive_simple.c:40:
util.h:90:6: error: unknown type name ‘xfs_bstat_t’; did you mean ‘xfs_bstime_t’?
   90 | xfs_bstat_t *statp );
      | ^~~~~~~~~~~
      | xfs_bstime_t
util.h:99:10: error: unknown type name ‘bstat_cbfp_t’; did you mean ‘bstat_seekfp_t’?
   99 | bstat_cbfp_t fp,
      | ^~~~~~~~~~~~
      | bstat_seekfp_t
util.h:105:10: error: unknown type name ‘xfs_bstat_t’; did you mean ‘xfs_bstime_t’?
  105 | xfs_bstat_t *buf,
      | ^~~~~~~~~~~
      | xfs_bstime_t
util.h:110:9: error: unknown type name ‘xfs_bstat_t’; did you mean ‘xfs_bstime_t’?
  110 | xfs_bstat_t *statp );
      | ^~~~~~~~~~~
      | xfs_bstime_t
util.h:115:7: error: unknown type name ‘xfs_inogrp_t’; did you mean ‘xfs_ino_t’?
  115 | xfs_inogrp_t *inogrp ),
      | ^~~~~~~~~~~~
      | xfs_ino_t
util.h:116:9: error: expected ‘;’, ‘,’ or ‘)’ before ‘void’
  116 | void * arg1,
      | ^~~~
util.h:134:5: error: unknown type name ‘xfs_bstat_t’; did you mean ‘xfs_bstime_t’?
  134 | xfs_bstat_t *statp,
      | ^~~~~~~~~~~
      | xfs_bstime_t
util.h:138:11: error: unknown type name ‘xfs_bstat_t’; did you mean ‘xfs_bstime_t’?
  138 | xfs_bstat_t *statp,
      | ^~~~~~~~~~~
      | xfs_bstime_t
util.h:140:5: error: expected ‘;’, ‘,’ or ‘)’ before ‘void’
  140 | void *arg1,
      | ^~~~
drive_simple.c: In function ‘do_return_read_buf’:
drive_simple.c:686:9: warning: variable ‘ownedcnt’ set but not used [-Wunused-but-set-variable]
  686 | size_t ownedcnt;
      | ^~~~~~~~
drive_simple.c: In function ‘do_set_mark’:
drive_simple.c:1062:9: warning: variable ‘nwritten’ set but not used [-Wunused-but-set-variable]
 1062 | int nwritten;
      | ^~~~~~~~
make[3]: *** [../include/buildrules:47: drive_simple.o] Error 1
make[2]: *** [include/buildrules:23: dump] Error 2
make[1]: *** [Makefile:53: default] Error 2

[ Test Plan ]

xfsdump should successfully build on all architectures.

[ Where problems could occur ]

The current package was build on cosmic. Building the package now could reveal issues due to using a newer gcc.

xfsdump provides only binaries and no libraries and therefore reducing the scope in case of issues.

Matthias Klose (doko)
Changed in xfsdump (Ubuntu):
status: New → Confirmed
importance: Undecided → High
tags: added: ftbfs rls-ff-incoming
Steve Langasek (vorlon)
tags: removed: rls-ff-incoming
tags: added: id-5e860f0d0ee0b0440fb5667c
Revision history for this message
Tiago Stürmer Daitx (tdaitx) wrote :

Version 3.1.9 builds fine on Groovy.

Changed in xfsdump (Ubuntu):
status: Confirmed → Fix Released
Revision history for this message
Benjamin Drung (bdrung) wrote (last edit ):

Patch attached for focal that cherry-picks these two upstream commits:

* https://git.kernel.org/pub/scm/fs/xfs/xfsdump-dev.git/commit/?id=6ff49bf7951e5951bd8f938fc3662c896a1bf9e8
* https://git.kernel.org/pub/scm/fs/xfs/xfsdump-dev.git/commit/?id=5058a6b51ba434b3261736a562a602750e7f2cdf

(I adjusted the second one to reduce the diff to the needed minimum)

description: updated
Revision history for this message
Timo Aaltonen (tjaalton) wrote : Please test proposed package

Hello Matthias, or anyone else affected,

Accepted xfsdump into focal-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/xfsdump/3.1.6+nmu2ubuntu1 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested, what testing has been performed on the package and change the tag from verification-needed-focal to verification-done-focal. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-focal. In either case, without details of your testing we will not be able to proceed.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance for helping!

N.B. The updated package will be released to -updates after the bug(s) fixed by this package have been verified and the package has been in -proposed for a minimum of 7 days.

Changed in xfsdump (Ubuntu Focal):
status: Confirmed → Fix Committed
tags: added: verification-needed verification-needed-focal
Revision history for this message
Benjamin Drung (bdrung) wrote :
tags: added: verification-done verification-done-focal
removed: verification-needed verification-needed-focal
Revision history for this message
Andreas Hasenack (ahasenack) wrote :

Is there a particular reason to SRU this FTBFS fix without any other fix together with it?

An FTBFS is listed as a valid safe case[1] for an SRU, but with the remark that usually it should be released together with another bug fix.

We can stage this fix in proposed, by adding the block-proposed-focal tag.

Something that concerns me is that the current binary in focal (3.1.6+nmu2build1) is the same since cosmic:

  2020-04-27 21:55:20 -03 Superseded Groovy release main admin 3.1.6+nmu2build1
  2019-10-18 06:15:30 -03 Published Focal release main admin 3.1.6+nmu2build1
  2020-12-29 11:18:15 -03 Obsolete Eoan release main admin 3.1.6+nmu2build1
  2020-07-14 03:39:25 -03 Obsolete Disco release main admin 3.1.6+nmu2build1
  2020-07-12 23:35:12 -03 Obsolete Cosmic release main admin 3.1.6+nmu2build1
   Deleted Cosmic proposed main admin 3.1.6+nmu2build1

Rebuilding it now will definitely change it, and there are no DEP8 tests. We should at least have some test plan for the new binary.

1. https://canonical-sru-docs.readthedocs-hosted.com/en/latest/reference/requirements/#other-safe-cases

Revision history for this message
Benjamin Drung (bdrung) wrote :

The FTBFS was discovered in a rebuild test. Staging the fix would be fine from my side.

Revision history for this message
Andreas Hasenack (ahasenack) wrote :

Thanks, I'll tag the bug with block-proposed-focal

tags: added: block-proposed-focal
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.