1. 12 Nov, 2021 14 commits
  2. 11 Nov, 2021 11 commits
    • Rick Macklem's avatar
      nfscl: Add a LayoutError RPC for NFSv4.2 pNFS mounts · 44744f75
      Rick Macklem authored
      If a pNFS server's DS runs out of disk space, it replies
      NFSERR_NOSPC to the client doing writing.  For the Linux
      client, it then sends a LayoutError RPC to the MDS server to
      tell it about the error.  This patch adds the same to the
      FreeBSD NFSv4.2 pNFS client, to maintain Linux compatible
      behaviour, particlularily for non-FreeBSD pNFS servers.
      
      MFC after:	2 weeks
      44744f75
    • John Baldwin's avatar
      Drop "All rights reserved" from a Netflix copyright. · 522a2aa7
      John Baldwin authored
      Reviewed by:	imp
      Sponsored by:	Netflix
      Differential Revision:	https://reviews.freebsd.org/D32778
      522a2aa7
    • Kirk McKusick's avatar
      Fix regression to verbose behavior introduced in 68bff4a0. · e38717c1
      Kirk McKusick authored
      Reported by:    Brad Davis (brd)
      Reviewed by:    Kristof Provost (kp)
      MFC after:      1 week
      Differential Revision:  https://reviews.freebsd.org/D32736
      Sponsored by:   Netflix
      e38717c1
    • Mark Johnston's avatar
      vm_page_alloc.9: Document VM_ALLOC_NORECLAIM · 811d0544
      Mark Johnston authored
      MFC after:	2 weeks
      Sponsored by:	The FreeBSD Foundation
      811d0544
    • Mark Johnston's avatar
      vm_page: Handle VM_ALLOC_NORECLAIM in the contiguous page allocator · e4bdb685
      Mark Johnston authored
      We added _NORECLAIM to request that kmem_alloc_contig_pages() not spend
      time scanning physical memory for candidates to reclaim.  In some
      situations the scanning can induce large amounts of undesirable latency,
      and it's less important that the request be satisfied than it is that we
      not spend many milliseconds scanning.
      
      The problem extends to vm_reserv_reclaim_contig(), which unlike
      vm_reserv_reclaim() may have to scan the entire list of partially
      populated reservations.  Use VM_ALLOC_NORECLAIM to request that this
      scan not be executed.[1]
      
      As a side effect, this fixes a regression in 02fb0585 ("vm_page:
      Drop handling of VM_ALLOC_NOOBJ in vm_page_alloc_contig_domain()")
      where VM_ALLOC_CONTIG was not included in VPAC_FLAGS or VPANC_FLAGS even
      though it is not masked by kmem_alloc_contig_pages().[2]
      
      Reported by:	gallatin [1], glebius [2]
      Reviewed by:	alc, glebius, kib
      MFC after:	2 weeks
      Sponsored by:	The FreeBSD Foundation
      Differential Revision:	https://reviews.freebsd.org/D32899
      e4bdb685
    • Mateusz Piotrowski's avatar
      bsdinstall: Fix mirror selection · 4042b356
      Mateusz Piotrowski authored
      This is a follow-up to 26976226,
      which fixed 2 out of 3 broken uses of the mirrorselect script.
      
      Reviewed by:	emaste
      Approved by:	emaste (src)
      MFC after:	7 days
      Differential Revision:	https://reviews.freebsd.org/D32927
      4042b356
    • Randall Stewart's avatar
      Add in the commit revision to the UPDATING file for the CC changes · d6953863
      Randall Stewart authored
      The UPDATING file had a xxx for the CC changes commit, now that its
      committed fix that.
      d6953863
    • Randall Stewart's avatar
      tcp: Rack may still calculate long RTT on persists probes. · 26cbd002
      Randall Stewart authored
      When a persists probe is lost, we will end up calculating a long
      RTT based on the initial probe and when the response comes from the
      second probe (or third etc). This means we have a minimum of a
      confidence level of 3 on a incorrect probe. This commit will change it
      so that we have one of two options
      a) Just not count RTT of probes where we had a loss
      <or>
      b) Count them still but degrade the confidence to 0.
      
      I have set in this the default being to just not measure them, but I am open
      to having the default be otherwise.
      
      Reviewed by: Michael Tuexen
      Sponsored by: Netflix Inc.
      Differential Revision: https://reviews.freebsd.org/D32897
      26cbd002
    • Randall Stewart's avatar
      tcp: Congestion control cleanup. · b8d60729
      Randall Stewart authored
      NOTE: HEADS UP read the note below if your kernel config is not including GENERIC!!
      
      This patch does a bit of cleanup on TCP congestion control modules. There were some rather
      interesting surprises that one could get i.e. where you use a socket option to change
      from one CC (say cc_cubic) to another CC (say cc_vegas) and you could in theory get
      a memory failure and end up on cc_newreno. This is not what one would expect. The
      new code fixes this by requiring a cc_data_sz() function so we can malloc with M_WAITOK
      and pass in to the init function preallocated memory. The CC init is expected in this
      case *not* to fail but if it does and a module does break the
      "no fail with memory given" contract we do fall back to the CC that was in place at the time.
      
      This also fixes up a set of common newreno utilities that can be shared amongst other
      CC modules instead of the other CC modules reaching into newreno and executing
      what they think is a "common and understood" function. Lets put these functions in
      cc.c and that way we have a common place that is easily findable by future developers or
      bug fixers. This also allows newreno to evolve and grow support for its features i.e. ABE
      and HYSTART++ without having to dance through hoops for other CC modules, instead
      both newreno and the other modules just call into the common functions if they desire
      that behavior or roll there own if that makes more sense.
      
      Note: This commit changes the kernel configuration!! If you are not using GENERIC in
      some form you must add a CC module option (one of CC_NEWRENO, CC_VEGAS, CC_CUBIC,
      CC_CDG, CC_CHD, CC_DCTCP, CC_HTCP, CC_HD). You can have more than one defined
      as well if you desire. Note that if you create a kernel configuration that does not
      define a congestion control module and includes INET or INET6 the kernel compile will
      break. Also you need to define a default, generic adds 'options CC_DEFAULT=\"newreno\"
      but you can specify any string that represents the name of the CC module (same names
      that show up in the CC module list under net.inet.tcp.cc). If you fail to add the
      options CC_DEFAULT in your kernel configuration the kernel build will also break.
      
      Reviewed by: Michael Tuexen
      Sponsored by: Netflix Inc.
      RELNOTES:YES
      Differential Revision: https://reviews.freebsd.org/D32693
      b8d60729
    • Peter Holm's avatar
      7e3c4b09
    • Felix Johnson's avatar
      module(9): Document that evhand can be NULL · c5e0492a
      Felix Johnson authored
      PR:		192250
      MFC after:	3 days
      Reported by:	ngie
      c5e0492a
  3. 10 Nov, 2021 15 commits