Re: git: 81a34d374ed6 - main - protosw: retire pr_drain and use EVENTHANDLER(9) directly

From: Konstantin Belousov <kostikbel_at_gmail.com>
Date: Wed, 17 Aug 2022 21:44:24 UTC
On Wed, Aug 17, 2022 at 06:52:21PM +0000, Gleb Smirnoff wrote:
> The branch main has been updated by glebius:
> 
> URL: https://cgit.FreeBSD.org/src/commit/?id=81a34d374ed6e5a7b14f24583bc8e3abfdc66306
> 
> commit 81a34d374ed6e5a7b14f24583bc8e3abfdc66306
> Author:     Gleb Smirnoff <glebius@FreeBSD.org>
> AuthorDate: 2022-08-17 18:50:31 +0000
> Commit:     Gleb Smirnoff <glebius@FreeBSD.org>
> CommitDate: 2022-08-17 18:50:31 +0000
> 
>     protosw: retire pr_drain and use EVENTHANDLER(9) directly
>     
>     The method was called for two different conditions: 1) the VM layer is
>     low on pages or 2) one of UMA zones of mbuf allocator exhausted.
>     This change 2) into a new event handler, but all affected network
>     subsystems modified to subscribe to both, so this change shall not
>     bring functional changes under different low memory situations.
>     
>     There were three subsystems still using pr_drain: TCP, SCTP and frag6.
>     The latter had its protosw entry for the only reason to register its
>     pr_drain method.
>     
>     Reviewed by:            tuexen, melifaro
>     Differential revision:  https://reviews.freebsd.org/D36164
...

> diff --git a/sys/vm/vm_pageout.h b/sys/vm/vm_pageout.h
> index 82ba3c81ef1b..63d31dc1d135 100644
> --- a/sys/vm/vm_pageout.h
> +++ b/sys/vm/vm_pageout.h
> @@ -87,6 +87,7 @@ extern int vm_pageout_page_count;
>   */
>  #define	VM_LOW_KMEM	0x01
>  #define	VM_LOW_PAGES	0x02
> +#define	VM_LOW_MBUFS	0x04

This is very weird, to put it mildly.