Commit Graph

7383 Commits

Author SHA1 Message Date
mrg ab52baf9b6 fix potentially uninitialised data being used.
found by GCC 12.
2023-08-07 23:27:07 +00:00
mrg 4008e3978a fix always true conditional by removing the address-of operator.
found by GCC 12.
2023-08-07 23:26:40 +00:00
rin f5d5d6d50b bioctl(8): bio_show_volumes(): Do not return pointer to stack.
Found by GCC 12.
2023-08-04 03:45:07 +00:00
mrg 2ff65d1cde avoid double-free.
found by GCC 12.
2023-08-03 08:06:11 +00:00
gutteridge 1b68370975 gpt.8: fix some grammar
(The BUGS section seems perhaps a little outdated in its warnings of
potential incompatible changes.)
2023-07-15 21:18:06 +00:00
gutteridge f2907125f8 gpt.8: drop cross-reference to cvs(1)
It's no more useful to reference cvs(1) than, say, openssl(1), and
should be self-evident, anyway.
2023-07-15 21:11:58 +00:00
riastradh 976fa97423 Revert "fsck_ffs(8): Ensure A divides S before aligned_alloc(A, S)."
C17 lifted this restriction.
2023-07-05 10:59:08 +00:00
riastradh 1e73453c9d Revert "newfs(8): Ensure A divides S before aligned_alloc(A, S)."
C17 lifted this restriction.
2023-07-05 10:58:58 +00:00
riastradh e1ba8d75ab Revert "nvmectl(8): Ensure A divides S before aligned_alloc(A, S)."
C17 lifted this restriction.
2023-07-05 10:58:46 +00:00
riastradh 252616f8e4 fsck_ffs(8): Fix whitespace issues.
- Nix trailing whitespace.
- Omit excessive blank lines.
- Insert missing blank lines between $NetBSD$ and copyright.

No functional change intended.
2023-07-04 20:40:53 +00:00
riastradh 8d8fdc5894 nvmectl(8): Ensure A divides S before aligned_alloc(A, S).
Required by C11 Sec. 7.22.3.1 The aligned_alloc function, para. 2,
p. 348:

   The value of alignment shall be a valid alignment supported by the
   implementation and the value of size shall be an integral multiple
   of alignment.

XXX pullup-10
2023-07-04 20:40:43 +00:00
riastradh 5ebd7a0afa newfs(8): Ensure A divides S before aligned_alloc(A, S).
Required by C11 Sec. 7.22.3.1 The aligned_alloc function, para. 2,
p. 348:

   The value of alignment shall be a valid alignment supported by the
   implementation and the value of size shall be an integral multiple
   of alignment.

XXX pullup-10
2023-07-04 20:40:34 +00:00
riastradh 573d5c8231 fsck_ffs(8): Ensure A divides S before aligned_alloc(A, S).
Required by C11 Sec. 7.22.3.1 The aligned_alloc function, para. 2,
p. 348:

   The value of alignment shall be a valid alignment supported by the
   implementation and the value of size shall be an integral multiple
   of alignment.

XXX pullup-10
2023-07-04 20:40:22 +00:00
lukem a9a927dd92 adapt to ${CC_WNO_ADDRESS_OF_PACKED_MEMBER}
Simplify CWARNFLAGS to use ${CC_WNO_ADDRESS_OF_PACKED_MEMBER}
which works for both clang and gcc, and remove compiler-specific
equivalents.
2023-06-03 21:26:27 +00:00
lukem c4b7a9e794 bsd.own.mk: rename GCC_NO_* to CC_WNO_*
Rename compiler-warning-disable variables from
	GCC_NO_warning
to
	CC_WNO_warning
where warning is the full warning name as used by the compiler.

GCC_NO_IMPLICIT_FALLTHRU is CC_WNO_IMPLICIT_FALLTHROUGH

Using the convention CC_compilerflag, where compilerflag
is based on the full compiler flag name.
2023-06-03 09:09:01 +00:00
lukem f937c412f3 bsd.own.mk: rename to CC_WNO_ADDRESS_OF_PACKED_MEMBER
Provide a single variable
	CC_WNO_ADDRESS_OF_PACKED_MEMBER
with options for both clang and gcc, to replace
	CLANG_NO_ADDR_OF_PACKED_MEMBER
	CC_NO_ADDR_OF_PACKED_MEMBER
	GCC_NO_ADDR_OF_PACKED_MEMBER

Using the convention CC_compilerflag, where compilerflag
is based on the full compiler flag name.
2023-06-03 08:52:53 +00:00
kre a83f9264e8 pathadj() is required to succeed. If it cannot, simply issuing a
warning and continuing is not good enough.  Change the warning to
an error (and hence immediate exit) instead, that's all we can do.

Problem pointed out by tlaronde@polynum.com

XXX - pullup -10 (others?)
2023-05-25 17:37:05 +00:00
pgoyette 29d8ffc91f ALso fix chgrp Synopsis to include -d option 2023-05-20 09:41:34 +00:00
pgoyette b1c9211c1b dd -d to the Synopsis 2023-05-20 00:54:15 +00:00
tsutsui 2b88da67b5 Use https for Ext2 documentation URLs. 2023-05-17 09:54:59 +00:00
rillig 33e56a937d newfs_udf: fix wording in comment 2023-05-10 12:23:42 +00:00
christos b7424e7c5d KNF: no space after ( and before ), constants on the RHS (like everywhere else
in this file).
2023-05-04 18:34:55 +00:00
martin 5495155076 Cast -1 to expected type and fix a edititing mishap to make this build. 2023-05-04 18:04:55 +00:00
pgoyette 0f8326b377 Add a -d flag to avoid changing a file's owner/group to the current
value.  This avoids some unnecessary operations on the file.

As discussed on tech-userlevel@
2023-05-04 17:07:56 +00:00
pgoyette 2c712e3804 Fix typo in comment 2023-04-28 09:56:45 +00:00
jkoshy c2d5d65bef mount_procfs(8): Document the format of the region descriptor
lines contained in the 'map' and 'maps' special files.
2023-04-18 18:42:20 +00:00
riastradh eaeecb4f73 rndctl(8): Take omitted name/type as empty device name.
This can now be used to change flags for all sources at once.

XXX pullup-10
2023-04-11 13:17:32 +00:00
rillig dd57c37d01 mount_portal: fix lint warnings about extern and empty declarations 2023-04-04 20:39:36 +00:00
ryo 65f9de9e0d commonize case block 2023-04-02 18:15:24 +00:00
ryo 60536c5379 don't pass add=1 to print_tree() when displaying by specifying nodes.
For example, "sysctl -w kern.mbuf=" had been displayed extra node names in the MIB.
 # sysctl -w kern.mbuf=
 kern.mbuf.mbuf.msize = 512
 kern.mbuf.mbuf.mclbytes = 2048
 :
2023-04-02 18:11:26 +00:00
chs 8f4d5a45a2 Apply this commit from FreeBSD:
commit 6bae6625e0e06816c80ac4971dfccf0643abe3f0
  Author: Kirk McKusick <mckusick@FreeBSD.org>
  Date:   Wed Aug 17 14:19:59 2022 -0700

    Improve handling of missing '.' and '..' in UFS directories.

    The UFS filesystem expects to find '.' and '..' as the first two entries
    in a directory. The kernel's UFS name cache can become quite confused
    when these two entries are not present as the first two entries.

    Prior to this change, when the fsck_ffs(8) utility detected that
    '.' and/or '..' were missing, it would report them, but only offered
    to replace them if the space at the beginning of the directory was
    available. Otherwise it was left to the system administrator to
    move the offending file(s) out of the way and then rerun fsck_ffs(8)
    to create the '.' and '..' entries.

    With this change, fsck_ffs(8) will always be able to create the '.'
    and/or '..' entries. It moves any files in the way elsewhere in the
    directory block. If there is no room in the directory block to which
    to move them, they are placed in the lost+found directory.

    Reported by:  Peter Holm
    Sponsored by: The FreeBSD Foundation
2023-03-27 22:53:37 +00:00
mlelstv 6029abdb95 Fix parser for carp state.
The state values are uppercase words INIT, BACKUP and MASTER.
2023-03-26 01:04:16 +00:00
simonb 1145fafc6f In "devlist" mode, exit with a 0 return code if any nvme devices are
found, rather than exiting with 1 return code always.
2023-03-05 23:24:06 +00:00
kre 5747acc12f Fix a typo in a newly added comment.
Someone please tell me why these things become obvious only after
the code has been committed!

NFC
2023-03-01 15:18:18 +00:00
kre 5a71a00fea When processing swapon -a (or swapctl -A, or swapctl -U) ignore lines in
fstab that have nothing to do with swapping (fs_type is neither "sw" nor "dp")
before running getfsspecname() on the fs_spec field of the line.

This avoids entries like this:

NAME=OFTEN_UNCONNECTED   /local/archived ffs     rw,log,noauto    0 0

in fstab from generating spurious error messages when the wedge named
is not currently connected to the system - that is the drive on which the
wedge exists is not connected, or not powered on.   "noauto" handles that
for some other uses, the "0"s in fs_freq and fs_passno work for other uses,
but swap{on,ctl} never look at those fields (not for this purpose).

Non "sw"/"dp" lines were being ignored anyway, but not until (a little) later.
2023-03-01 15:15:56 +00:00
andvar 19c1490f61 fix some typos in comments. 2023-02-27 22:00:25 +00:00
andvar 45db36d858 s/superblok/superblock/ in comment. 2023-02-26 22:55:02 +00:00
uwe 295421a2f9 shutdown(8): markup fixes 2023-02-15 13:05:21 +00:00
uwe c1371239a4 shutdown(8): fix -width cargo cult 2023-02-15 10:31:52 +00:00
jschauma 653e2a3e27 adjust width of flag arg to align more nicely 2023-02-15 01:55:16 +00:00
mlelstv e66f4605a1 Data units read/written are counted in 1000s of 512 bytes.
Convert to human-readable value.
2023-02-02 08:21:32 +00:00
mlelstv 19722ca2cf Use opendisk when looking for filesystem type, otherwise the detection
only works if the correct device path is given as an argument.
2023-01-24 08:09:37 +00:00
mlelstv 3e7f0f50ca Work on swapped-endian FFS. 2023-01-24 08:05:07 +00:00
kre 4bc7e3cb63 Use %zu rather than %lu to print a size_t (should fix i386 build).
But, philosophical question, shouldn't the product of two size_t
variables really be an area_t, or something like that?
2023-01-14 17:01:10 +00:00
christos 4616d0425d catch up with sign changes in the fs.h 2023-01-14 12:12:50 +00:00
chs 908deb24fa ufs: more signed/unsigned fixes
Fix the previous signed/unsigned fixes to build on 32-bit,
including applying this commit from FreeBSD:

  commit 2d34afcd04207cf3fa3d5b7f467a890eae75da41
  Author: Kirk McKusick <mckusick@FreeBSD.org>
  Date:   Sun Oct 25 21:04:07 2020 +0000

    Use proper type (ino_t) for inode numbers to avoid improper sign extention
    in the Pass 5 checks. The manifestation was fsck_ffs exiting with this error:

      ** Phase 5 - Check Cyl groups
      fsck_ffs: inoinfo: inumber 18446744071562087424 out of range

    The error only manifests itself for filesystems bigger than about 100Tb.

    Reported by:  Nikita Grechikhin <ngrechikhin at yandex.ru>
    MFC after:    2 weeks
    Sponsored by: Netflix
2023-01-08 05:25:24 +00:00
chs f298a94b73 ufs: fixed signed/unsigned bugs affecting large file systems
Apply these commits from FreeBSD:

  commit e870d1e6f97cc73308c11c40684b775bcfa906a2
  Author: Kirk McKusick <mckusick@FreeBSD.org>
  Date:   Wed Feb 10 20:10:35 2010 +0000

    This fix corrects a problem in the file system that treats large
    inode numbers as negative rather than unsigned. For a default
    (16K block) file system, this bug began to show up at a file system
    size above about 16Tb.

    To fully handle this problem, newfs must be updated to ensure that
    it will never create a filesystem with more than 2^32 inodes. That
    patch will be forthcoming soon.

    Reported by: Scott Burns, John Kilburg, Bruce Evans
    Followup by: Jeff Roberson
    PR:          133980
    MFC after:   2 weeks

  commit 81479e688b0f643ffacd3f335b4b4bba460b769d
  Author: Kirk McKusick <mckusick@FreeBSD.org>
  Date:   Thu Feb 11 18:14:53 2010 +0000

    One last pass to get all the unsigned comparisons correct.


In additional to the changes from FreeBSD, this commit includes quite a few
related changes to appease -Wsign-compare.
2023-01-07 19:41:29 +00:00
hannken 7b77b9376c Change getdiskinfo() to no longer infer the partition from the device name.
Since 2016-06-16 we create disk devices "<type><<unit>" as an alias
for "<type><<unit><part>" where "<part>" is the raw partition.
These devices are treated as invalid partitions and a zero geometry
is returned.

Take the partition from "st_rdev" instead.

Fix for PR kern/57134: st_size of stat on vnd raw partition sometimes
is 0, causing newfs to fail
2023-01-02 16:08:13 +00:00
chs fc887601fd mount_nfs: add missing "A" to getopt string 2022-12-21 19:00:52 +00:00
chs 062d5b230d tunefs: clarify that "-a" refers to NFSv4 ACLs 2022-12-19 21:13:16 +00:00