1. 14 Jan, 2022 21 commits
  2. 13 Jan, 2022 19 commits
    • HardenedBSD Sync Service's avatar
    • John Baldwin's avatar
      Remove usr/lib/libssp.a. · 900a7922
      John Baldwin authored
      GNU's libssp installed this (in addition to libssp_nonshared.a), but
      the libc-based libssp does not.
      
      Reviewed by:	kevans, emaste
      Fixes:		cd0d51ba Provide libssp based on libc
      Sponsored by:	The University of Cambridge, Google Inc.
      Differential Revision:	https://reviews.freebsd.org/D33852
      900a7922
    • John Baldwin's avatar
      Remove lib32 versions of libl. · cc8af33e
      John Baldwin authored
      Reviewed by:	imp, emaste
      Fixes:		eb61f7bd Stop building libl and liby
      Sponsored by:	The University of Cambridge, Google Inc.
      Differential Revision:	https://reviews.freebsd.org/D33851
      cc8af33e
    • John Baldwin's avatar
      Remove a duplicate entry for libgpib_p.a. · 768563cf
      John Baldwin authored
      Reviewed by:	emaste
      Sponsored by:	The University of Cambridge, Google Inc.
      Differential Revision:	https://reviews.freebsd.org/D33850
      768563cf
    • Warner Losh's avatar
      cam: Fix wiring fence post error · 272e4f53
      Warner Losh authored
      If the last matching device entry partially matched in camperiphunit,
      but then hit a continue case, we'd mistakenly think we had a match on
      that entry. This lead to a number of problems downstream (usually a
      belief that we had a duplicate wiring hint because unit = 0 is the
      default). Fix this by using a for loop that does the assignment before
      the loop termination test.
      
      Sponsored by:		Netflix
      Reviewed by:		jhb
      Differential Revision:	https://reviews.freebsd.org/D33873
      272e4f53
    • Stefan Eßer's avatar
      tools/portconflicts/port_conflicts_check.lua: detect port conflicts · 82bfeeff
      Stefan Eßer authored
      This tool can be used to detect install conflicts (ports/packages that
      conflict with each other because of identically named files).
      
      MFC after:	3 days
      82bfeeff
    • Alexander Motin's avatar
      sesutil: Avoid setting reserved bits. · 2e19fae4
      Alexander Motin authored
      Weird side of SES specification is that some bits have different
      meaning or semantics in status and control pages.  This patch fixes
      non-zero writes into reserved fields, that caused errors on some
      enclosures when trying to control locate/fault LEDs, keeping other
      bits unchanged.
      
      MFC after:	2 weeks
      Sposonred by:	iXsystems, Inc.
      2e19fae4
    • Gleb Smirnoff's avatar
    • Austin Zhang's avatar
      atrtc: reads Century field from FADT table · e1ef6c0e
      Austin Zhang authored
      The ACPI spec describes the FADT->Century field as:
      
          The RTC CMOS RAM index to the century of data value (hundred and
          thousand year decimals).  If this field contains a zero, then the
          RTC centenary feature is not supported.  If this field has a non-zero
          value, then this field contains an index into RTC RAM space that
          OSPM can use to program the centenary field.
      
      Use this field to decide whether to program the CENTURY register
      of the CMOS RTC device.
      
      Reviewed by:	akumar3@isilon.com, dab, vangyzen
      MFC after:	1 week
      Sponsored by:	Dell EMC Isilon
      Differential Revision:	https://reviews.freebsd.org/D33667
      
      MFC after:	1 week
      Sponsored by:	Dell EMC Isilon
      e1ef6c0e
    • HardenedBSD Sync Service's avatar
    • Ryan Stone's avatar
      LRO: Don't merge ACK and non-ACK packets together · 3284f492
      Ryan Stone authored
      LRO was willing to merge ACK and non-ACK packets together.  This
      can cause incorrect th_ack values to be reported up the stack.
      While non-ACKs are quite unlikely to appear in practice, LRO's
      behaviour is against the spec.  Make LRO unwilling to merge
      packets with different TH_ACK flag values in order to fix the
      issue.
      
      Found by: Sysunit test
      Differential Revision:	https://reviews.freebsd.org/D33775
      Reviewed by: rrs
      3284f492
    • Ryan Stone's avatar
      LRO: Fix lost packets when merging 1 payload with an ACK · 24fe6643
      Ryan Stone authored
      To check if it needed to regenerate a packet's header before
      sending it up the stack, LRO was checking if more than one payload
      had been merged into the packet.  This failed in the case where
      a single payload was merged with one or more pure ACKs.  This
      results in lost ACKs.
      
      Fix this by precisely tracking whether header regeneration is
      required instead of using an incorrect heuristic.
      
      Found with: Sysunit test
      Differential Revision:	https://reviews.freebsd.org/D33774
      Reviewed by: rrs
      24fe6643
    • Roger Pau Monné's avatar
      x86/madt: allow Xen guest to use x2APIC mode · 7d06c761
      Roger Pau Monné authored
      The old bogus Xen versions that would deliver a GPF when writing to
      the LAPIC MSR are likely retired, so it's safe to enable x2APIC
      unconditionally now if available.
      
      Tested by: avg
      Reviewed by: kib
      Sponsored by: Citrix Systems R&D
      Differential revision: https://reviews.freebsd.org/D33877
      7d06c761
    • Kenneth D. Merry's avatar
      Free UMA zones when a pass(4) instance goes away. · ca2a7262
      Kenneth D. Merry authored
      If the UMA zones are not freed, we get warnings about re-using the
      sysctl variables associated with the UMA zones, and we're leaking
      the other memory associated with the zone structures.  e.g.:
      
      sysctl_warn_reuse: can't re-use a leaf (vm.uma.pass44.size)!
      sysctl_warn_reuse: can't re-use a leaf (vm.uma.pass44.flags)!
      sysctl_warn_reuse: can't re-use a leaf (vm.uma.pass44.bucket_size)!
      sysctl_warn_reuse: can't re-use a leaf (vm.uma.pass44.bucket_size_max)!
      sysctl_warn_reuse: can't re-use a leaf (vm.uma.pass44.keg.name)!
      sysctl_warn_reuse: can't re-use a leaf (vm.uma.pass44.keg.rsize)!
      sysctl_warn_reuse: can't re-use a leaf (vm.uma.pass44.keg.ppera)!
      sysctl_warn_reuse: can't re-use a leaf (vm.uma.pass44.keg.ipers)!
      
      Also, correctly clear the PASS_FLAG_ZONE_INPROG flag in
      passcreatezone().  The way it was previously done, it would have
      had set the flag and cleared all other flags that were set at
      that point.
      
      MFC after:	1 week
      Sponsored by:	Spectra Logic
      ca2a7262
    • Roger Pau Monné's avatar
      xen: use an hypercall for shutdown and reboot · ca46f328
      Roger Pau Monné authored
      When running as a Xen guest it's easier to use an hypercall in order
      to do power management operations (power off, power cycle). Do this
      for all supported guest types (HVM and PVH). Note that for HVM the
      power operation could also be done using ACPI, but there's no reason
      to differentiate between PVH and HVM.
      
      While there fix the shutdown handler to properly differentiate between
      power cycle and power off requests.
      
      Reported by: Freddy DISSAUX
      MFC: 1 week
      Sponsored by: Citrix Systems R&D
      ca46f328
    • Emmanuel Vadot's avatar
      Revert "Introduce MODULES_EXCLUDE" · 9b6aa99e
      Emmanuel Vadot authored
      This is already present as WITHOUT_MODULES
      
      This reverts commit 8c0c5bdf.
      
      Reported by:	jrtc27
      9b6aa99e
    • Emmanuel Vadot's avatar
      Introduce MODULES_EXCLUDE · 8c0c5bdf
      Emmanuel Vadot authored
      It's sometimes easier to exclude some modules rather than listing all
      possibly needed ones with MODULES_OVERRIDE.
      So for this add MODULES_EXCLUDE which do exactly as one would guess, excludes
      some modules from the build/install.
      
      For example if one wants to exclude all modules which are only present in the
      GENERIC config on amd64 :
      export MODULES_EXCLUDE=$(grep -E '^device' sys/amd64/conf/GENERIC | awk '{print $2}' | tr '\n' ' ')
      
      MFC after:	2 weeks
      Sponsored by:	Beckhoff Automation GmbH & Co. KG
      Differential Revision:	https://reviews.freebsd.org/D33443
      8c0c5bdf
    • HardenedBSD Sync Service's avatar
    • Stefan Eßer's avatar
      qsort.c: prevent undefined behavior · d106f982
      Stefan Eßer authored
      Mark Milliard has detected a case of undefined behavior with the LLVM
      UBSAN. The mandoc program called qsort with a==NULL and n==0, which is
      allowed by the POSIX standard. The qsort() in FreeBSD did not attempt
      to perform any accesses using the passed pointer for n==0, but it did
      add an offset to the pointer value, which is undefined behavior in
      case of a NULL pointer. This operation has no adverse effects on any
      achitecture supported by FreeBSD, but could be caught in more strict
      environments.
      
      After some discussion in the freebsd-current mail list, it was
      concluded that the case of a==NULL and n!=0 should still be caught by
      UBSAN (or cause a program abort due to an illegal access) in order to
      not hide errors in programs incorrectly invoking qsort().
      
      Only the the case of a==NULL and n==0 should be fixed to not perform
      the undefined operation on a NULL pointer.
      
      This commit makes qsort() exit before reaching the point of
      potentially undefined behvior for the case n==0, but does not test
      the value of a, since the result will not depend on whether this
      pointer is NULL or an actual pointer to an array if n==0.
      
      The issue found by Mark Milliard in the whatis command has been
      reported to the upstream (OpenBSD) and has already been patched
      there.
      
      MFC after:	1 week
      d106f982