Project

General

Profile

Actions

Bug #12021

closed

zfs_diff tests missing Makefile deps

Added by Robert Mustacchi over 3 years ago. Updated over 3 years ago.

Status:
Closed
Priority:
Normal
Category:
tests
Start date:
Due date:
% Done:

100%

Estimated time:
Difficulty:
Medium
Tags:
Gerrit CR:
External Bug:

Description

After the integration of 11962 build failures of the following form were seen:

build:illumos:upstream_gate% make install
/usr/bin/rm -f /data/omnios-build/omniosorg/bloody/illumos/proto/root_i386-nd/opt/zfs-tests/tests/functional/cli_root/zfs_diff/socket; /data/omnios-build/omniosorg/bloody/illumos/usr/src/tools/proto/root_i386-nd/opt/onbld/bin/i386/install -s -m 0555 -f /data/omnios-build/omniosorg/bloody/illumos/proto/root_i386-nd/opt/zfs-tests/tests/functional/cli_root/zfs_diff socket
install:file_copy: /data/omnios-build/omniosorg/bloody/illumos/proto/root_i386-nd/opt/zfs-tests/tests/functional/cli_root/zfs_diff/socket failed (2): No such file or directory
*** Error code 1
make: Fatal error: Command failed for target `/data/omnios-build/omniosorg/bloody/illumos/proto/root_i386-nd/opt/zfs-tests/tests/functional/cli_root/zfs_diff/socket'
Current working directory /data/omnios-build/omniosorg/bloody/illumos/usr/src/test/zfs-tests/tests/functional/cli_root/zfs_diff
build:illumos:upstream_gate%
build:illumos:upstream_gate% ls /data/omnios-build/omniosorg/bloody/illumos/proto/root_i386-nd/opt/zfs-tests/tests/functional/cli_root/zfs_diff
/data/omnios-build/omniosorg/bloody/illumos/proto/root_i386-nd/opt/zfs-tests/tests/functional/cli_root/zfs_diff: No such file or directory

Based on the above, one can see that the socket program was built, but its parent directory was not present. If one inspects the corresponding Makefile, usr/src/test/zfs-tests/tests/functional/cli_root/zfs_diff, then you'll find that there's a missing dependency between the output program in the proto area and its parent directory. While the included Makefile.com has dependencies for the shell scripts that it picks up, it doesn't have any such dependency for programs. The solution is to add an explicit dependency for this case.

Actions #1

Updated by Robert Mustacchi over 3 years ago

To test this I had a situation where dmake -m serial failed reliably. I added the proposed change into the makefile and it now worked.

Actions #2

Updated by Electric Monk over 3 years ago

  • Status changed from New to Closed
  • % Done changed from 0 to 100

git commit bb51a979b2badfaa6cf79bcb781b23aa6c1502f2

commit  bb51a979b2badfaa6cf79bcb781b23aa6c1502f2
Author: Robert Mustacchi <rm@fingolfin.org>
Date:   2019-11-23T22:03:25.000Z

    12021 zfs_diff tests missing Makefile deps
    Reviewed by: Andy Fiddaman <andy@omniosce.org>
    Reviewed by: Kody Kantor <kody.kantor@joyent.com>
    Reviewed by: Jason King <jason.king@joyent.com>
    Reviewed by: Paul Winder <paul@winders.demon.co.uk>
    Approved by: Dan McDonald <danmcd@joyent.com>

Actions

Also available in: Atom PDF