Skip to content

Commit

Permalink
makefs: Make it possible to silence warnings about duplicate paths
Browse files Browse the repository at this point in the history
When generating a VM image from an installworld mtree manifest, makefs
spits out several thousand warnings about duplicate paths in the
manifest.  These are harmless and have been around for a long time (see
the phabricator revision for some more details), so let's at least have
a way to make makefs quieter.

Reviewed by:	brooks, imp, emaste
MFC after:	2 weeks
Differential Revision:	https://reviews.freebsd.org/D43513
  • Loading branch information
markjdb authored and bsdjhb committed Mar 15, 2024
2 parents b4380d1 + e0deb85 commit 9a1bcd5
Show file tree
Hide file tree
Showing 3 changed files with 6 additions and 4 deletions.
4 changes: 3 additions & 1 deletion usr.sbin/makefs/makefs.8
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
.Dd January 2, 2024
.Dd January 19, 2024

.Dt MAKEFS 8
.Os
Expand Down Expand Up @@ -110,6 +110,8 @@ suffix may be provided to indicate that
indicates a percentage of the calculated image size.
.It Fl D
Treat duplicate paths in an mtree manifest as warnings not error.
If this flag is specified more than once, warnings about duplicate paths
are not printed at all.
.It Fl d Ar debug-mask
Enable various levels of debugging, depending upon which bits are
set in
Expand Down
2 changes: 1 addition & 1 deletion usr.sbin/makefs/makefs.c
Original file line number Diff line number Diff line change
Expand Up @@ -164,7 +164,7 @@ main(int argc, char *argv[])
break;

case 'D':
dupsok = 1;
dupsok++;
break;

case 'd':
Expand Down
4 changes: 2 additions & 2 deletions usr.sbin/makefs/mtree.c
Original file line number Diff line number Diff line change
Expand Up @@ -894,11 +894,11 @@ read_mtree_spec1(FILE *fp, bool def, const char *name)

if (strcmp(name, node->name) == 0) {
if (def == true) {
if (!dupsok)
if (dupsok == 0)
mtree_error(
"duplicate definition of %s",
name);
else
else if (dupsok == 1)
mtree_warning(
"duplicate definition of %s",
name);
Expand Down

0 comments on commit 9a1bcd5

Please sign in to comment.