From nobody Mon Jul 1 01:05:13 2024 X-Original-To: questions@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4WC7Cy6mTsz5NlFh for ; Mon, 01 Jul 2024 01:06:38 +0000 (UTC) (envelope-from kpn@neutralgood.org) Received: from gunsight1.neutralgood.org (gunsight1.neutralgood.org [206.196.19.100]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "gunsight1.neutralgood.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4WC7Cy4gnbz4N1s for ; Mon, 1 Jul 2024 01:06:38 +0000 (UTC) (envelope-from kpn@neutralgood.org) Authentication-Results: mx1.freebsd.org; none Received: from gunsight1.neutralgood.org (localhost [127.0.0.1]) by gunsight1.neutralgood.org (8.18.1/8.18.1) with ESMTPS id 46115Dqc053911 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NO); Sun, 30 Jun 2024 21:05:14 -0400 (EDT) (envelope-from kpn@gunsight1.neutralgood.org) Received: (from kpn@localhost) by gunsight1.neutralgood.org (8.18.1/8.18.1/Submit) id 46115Dt8053908; Sun, 30 Jun 2024 21:05:13 -0400 (EDT) (envelope-from kpn) Date: Sun, 30 Jun 2024 21:05:13 -0400 From: "Kevin P. Neal" To: Horse Radish Cc: infoomatic@gmx.at, questions@freebsd.org Subject: Re: Buildworld Taking Very Long Time Message-ID: References: <3ca5191f-41fe-420c-86e9-ee4e89e599a9@gmail.com> <34d2603d-d67f-4485-a113-d7c4ff3c353a@gmx.at> List-Id: User questions List-Archive: https://lists.freebsd.org/archives/freebsd-questions List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: freebsd-questions@freebsd.org Sender: owner-freebsd-questions@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: X-No-archive: Yes X-Spamd-Bar: ---- X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:13649, ipnet:206.196.0.0/19, country:US] X-Rspamd-Queue-Id: 4WC7Cy4gnbz4N1s On Sun, Jun 30, 2024 at 06:23:06PM -0500, Horse Radish wrote: > Not sure. But they're drives that have been on this server for over a > year. The slow compilation just showed up in the past few > months.  LLVM seems to be part of the issue but iI don't know why > it's taking so long.. Are you running out of memory? Links of LLVM programs can use fantastic amounts of memory. For debug builds I frequently see 16GB of memory for a single link. I've brought down login servers multiple times by accident when running links in parallel. A non-debug build will take a fraction of the memory, but if enough of them are done in parallel it still might be a problem. I admit I don't know of any change that might have created a new problem, but I never build from the FreeBSD tree -- just vanilla LLVM from git. -- Kevin P. Neal http://www.pobox.com/~kpn/ "Oh, I've heard that paradox a couple of times, but there's something about a cat dying and I hate to think of such things." - Dr. Donald Knuth speaking of Schrodinger's cat, December 8, 1999, MIT From nobody Mon Jul 1 15:45:50 2024 X-Original-To: freebsd-questions@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4WCVkb6vgrz5PD9X for ; Mon, 01 Jul 2024 15:45:59 +0000 (UTC) (envelope-from gray@nxg.name) Received: from mx1.mythic-beasts.com (mx1.mythic-beasts.com [IPv6:2a00:1098:0:86:1000:0:2:1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4WCVkZ4dCxz4Br6 for ; Mon, 1 Jul 2024 15:45:58 +0000 (UTC) (envelope-from gray@nxg.name) Authentication-Results: mx1.freebsd.org; dkim=pass header.d=nxg.name header.s=mythic-beasts-k1 header.b=Xy7dgmLa; dmarc=none; spf=pass (mx1.freebsd.org: domain of gray@nxg.name designates 2a00:1098:0:86:1000:0:2:1 as permitted sender) smtp.mailfrom=gray@nxg.name DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=nxg.name; s=mythic-beasts-k1; h=Date:Subject:To:From; bh=a2/ptMMae59BO2sChvu5Kpm839uePA05NdGlCXZLU5w=; b=Xy7dgmLan5UFA+1d/N8jmiAz21 yZU8n1vsfqXqU0AUwmm9ViWkR2hr6DSH/Aw1GBO2tosu/KxtyXiSbHaDBxrs5DzwFYFO/4OSopJ4L PzgG0hw1r9ACcVdnfNiTq3rPfNnJWLirq1m55AQmK7DIT/n6oauIAmS1/19L5xRmYfDyFswbPJoHa h60HVKTPacBxbwaPJdXvQSt+KY5Ye8xA9YL3ihMslVW8vsZVmRuPvwlgFo853csZzsQULaUcHL75P DdWeLxkjRAEkgtoljCGQTGftuSiSKr98z24iDWfnpWHuDVKV9T/IFgk6YGIFEd6RE7V46JG6+eDWC 7o5+ko9g==; Received: by mailhub-cam-d.mythic-beasts.com with esmtpsa (TLS1.2) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1sOJE4-000mgO-Qv; Mon, 01 Jul 2024 16:45:57 +0100 From: Norman Gray To: FreeBSD Questions Subject: Re: quotactl(2) units of reported sizes on ZFS Date: Mon, 01 Jul 2024 16:45:50 +0100 X-Mailer: MailMate (1.14r5964) Message-ID: <91F2D00C-C41F-4F6D-BE6A-8EC2ECE111E3@nxg.name> In-Reply-To: <28D77DB4-B8F1-4680-8891-F3CA454FC9F4@nxg.name> References: <432AE47C-1502-4BFA-B680-7DAF6DDC601A@nxg.name> <861q5c4akw.fsf@ltc.des.dev> <28D77DB4-B8F1-4680-8891-F3CA454FC9F4@nxg.name> List-Id: User questions List-Archive: https://lists.freebsd.org/archives/freebsd-questions List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: freebsd-questions@freebsd.org Sender: owner-freebsd-questions@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-BlackCat-Spam-Score: 0 X-Spam-Status: No, score=-0.1 X-Spamd-Bar: ---- X-Spamd-Result: default: False [-4.10 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; NEURAL_HAM_LONG(-1.00)[-1.000]; NEURAL_HAM_SHORT(-1.00)[-0.998]; RCVD_DKIM_ARC_DNSWL_MED(-0.50)[]; RCVD_IN_DNSWL_MED(-0.20)[2a00:1098:0:86:1000:0:2:1:from]; R_SPF_ALLOW(-0.20)[+ip6:2a00:1098:0:86:1000:0:2:0/112]; R_DKIM_ALLOW(-0.20)[nxg.name:s=mythic-beasts-k1]; ONCE_RECEIVED(0.10)[]; MIME_GOOD(-0.10)[text/plain]; ASN(0.00)[asn:44684, ipnet:2a00:1098::/32, country:GB]; RCPT_COUNT_ONE(0.00)[1]; RCVD_COUNT_ONE(0.00)[1]; ARC_NA(0.00)[]; MIME_TRACE(0.00)[0:+]; RCVD_VIA_SMTP_AUTH(0.00)[]; RCVD_TLS_ALL(0.00)[]; MID_RHS_MATCH_FROM(0.00)[]; FROM_EQ_ENVFROM(0.00)[]; FROM_HAS_DN(0.00)[]; DMARC_NA(0.00)[nxg.name]; TO_MATCH_ENVRCPT_ALL(0.00)[]; MLMMJ_DEST(0.00)[freebsd-questions@freebsd.org]; TO_DN_ALL(0.00)[]; DKIM_TRACE(0.00)[nxg.name:+] X-Rspamd-Queue-Id: 4WCVkZ4dCxz4Br6 Dear list, This might now be semi-solved? Looping back to the thread excerpted below, I realise belatedly that stat= vfs(3) can give some information on this. statvfs fills in a struct statvfs, which, according to statvfs(3) on Free= BSD, includes members f_frsize The size in bytes of the minimum unit of allocation= on this file system. (This corresponds to the f_bsize= member of struct statfs.) f_bsize The preferred length of I/O requests for files on t= his file system. (Corresponds to the f_iosize member o= f struct statfs.) According to POSIX Issue 7 (2018) [1], these are unsigned long f_bsize File system block size. unsigned long f_frsize Fundamental file system block size. As usual, POSIX is being a _little_ bit non-committal here! Member f_frsize is 512 when I call this on FreeBSD (f_bsize is a lot bigg= er). Thus, it _appears_ that: * neither FreeBSD manpages nor POSIX specify what the block size is for= quotactl(2) responses, as far as I can see (because POSIX doesn't talk a= bout quotas), and * neither of them explicitly say what units are used for struct dqblk's= dqb_curblocks member and the like, and neither of them points towards st= atvfs, =2E..but the wording of statvfs(3) in both cases is consistent with f_frs= ize being those units. That's not really satisfactory, but it's close enough to Documentation, f= or me, for the moment. Onward and upward... Incidentally, on macOS, sys/quota.h defines the (non-POSIX) struct dqblk,= that quotactl fills in, to have no field dqb_curblocks, but instead dqb_= curbytes, which seems a lot more sensible. Best wishes, Norman [1] Issue 7 is at ; Issue 8 doesn't seem to differ in any respects relevant to this ques= tion. On 5 Jun 2024, at 9:48, Norman Gray wrote: > Dag-Erling, hello. > > On 4 Jun 2024, at 23:17, Dag-Erling Sm=C3=B8rgrav wrote: > >> Norman Gray writes: >>> The call quotactl(2) reports quota sizes in units of 'blocks', but ho= w >>> big is a block? Traditionally, of course, the answer is 512B, [...] >> >> You could simply have stopped there, it's a POSIX requirement. > > That's an interesting direction to come from -- thanks! > > Can you point to chapter and verse, though? Looking at [1], and specif= ically the specification of the contents of sys/stat.h [2], I find: > >> The unit for the st_blocks member of the stat structure is not defined= within POSIX.1-2017. In some implementations it is 512 bytes. It may dif= fer on a file system basis. There is no correlation between values of the= st_blocks and st_blksize, and the f_bsize (from ) structu= re members. > > That's stat.h, of course, rather than anything to do with quotas specif= ically. But POSIX doesn't mention quotas (not surprisingly), so if the q= uotactl manpage were going to silently adopt a POSIX unit definition, it'= s stat.h I'd expect it to come from. > > Individual utilities -- for example `ulimit` [3] or `df` -- document th= at one or other argument is in units of 512B 'blocks', but that's a user-= interface issue. > > Best wishes, > > Norman > > > > [1] The Open Group Base Specifications Issue 7, 2018 edition > [2] https://pubs.opengroup.org/onlinepubs/9699919799/basedefs/sys_stat.= h.html > [3] https://pubs.opengroup.org/onlinepubs/9699919799/utilities/ulimit.h= tml > > > > -- = > Norman Gray : https://nxg.me.uk -- = Norman Gray : https://nxg.me.uk From nobody Mon Jul 1 15:47:41 2024 X-Original-To: freebsd-questions@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4WCVmk5w3tz5PDDX; Mon, 01 Jul 2024 15:47:50 +0000 (UTC) (envelope-from jbeich@freebsd.org) Received: from freefall.freebsd.org (freefall.freebsd.org [96.47.72.132]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "freefall.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4WCVmk46m2z4D4F; Mon, 1 Jul 2024 15:47:50 +0000 (UTC) (envelope-from jbeich@freebsd.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1719848870; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=95/cE5LzeJae//71gf/v8O9KKi29LjtzVQpL+mD14kw=; b=NYcdW2oEt7quggvPei+l+S3RknolGy6EwYlBxWBeuDYi9cw/WhJTylmt86DJ61DZya/R7q s8ku4CbyEkeyNNAXq9FpkfwWfaZbzc2km3s6zzYyjAooOGJDTN6rYdsnuczeXLHHUBqxGL o1IGc7Kvx2ZKz7yT6r9iR8Res5kuSSB6AClrNU977O8fkzoUvHCtS5xa//KU9NXcXlpp5j Uf9R1N6j+CMCgEjBJSSQTga5OZHxFwcxZ9HJ4cPK5dIjn8LKDVLJR/Cm02TBqfNcuvI6Ka C+4wUhnp/HVkVKJpqW1/aZLpCtOsNYwAJbaMR1o0dY++ciK5upkFQ0UkDHzHsQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1719848870; a=rsa-sha256; cv=none; b=kkqnWq7txlDXLduoQ5yja7WX78g8sUrNYX45ufb/tdcANrmg6fMxbZLSwPdOqHSeEJnUS3 olZ2O3C9/d4oPHos0AgE3ytUqDgANNhvRd8u9LpoeyOGZDTpCAp+7VQGWelIb4bNwjMV7Q GCl0ShdhQrtkkp8jtNcVyNCv/zPyX2R0OcIIQg1uZ6QmQJGacaBlPcmkSNdsB+c0QZ20Xn lxfd+gHsFKtH4cBnCACaGmZbmixVR1sUDHiCVRE8dJcdrMc8mS4Dbc8pPyPZBg5QPZ4ZdK LPabrP0TagQk77ReW5x/mgL3CjHjYAbjHEP37/sQBb6TjHUs6h3QzSm/eZfKpA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1719848870; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=95/cE5LzeJae//71gf/v8O9KKi29LjtzVQpL+mD14kw=; b=Ho0BekdDxeID70bOTBWxKn2HLX5956FKkCiCvHrGhjZ+VPIa8oyaq5e9HrD3CTnakL5CP9 odhjlWDMNhbKK47yL9yKVltFPg0HtfEOdbI1KImf9RYQI+vo4u3wRn+mjilpVMkviLrKu6 gKBChKCeHgj0LAtsgnYkkmdKDRDCA1aKKac5GiHKwkzPQ4c6ISdDbSIy7XWnDBU83DTok8 oUlmoQ4sRzvdyew9CVBHq1gTgAggzvjarQu3ZlMvhNLMH1RPprXL30LPFCoLX29lbv2n/j /RiWjzwTHmhG25Z4I/F5soVaUP7HvhzR6FlfIVr5Z3BieoebXNkIsYy5OCr5mg== Received: by freefall.freebsd.org (Postfix, from userid 1354) id 6C5F414FE; Mon, 01 Jul 2024 15:47:50 +0000 (UTC) From: Jan Beich To: Mario Marietto Cc: freebsd-desktop@freebsd.org, FreeBSD Mailing List Subject: Re: Trying to run KDE 6 Plasma with Wayland.... In-Reply-To: (Mario Marietto's message of "Thu, 27 Jun 2024 20:18:36 +0200") References: Date: Mon, 01 Jul 2024 17:47:41 +0200 Message-ID: List-Id: User questions List-Archive: https://lists.freebsd.org/archives/freebsd-questions List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: freebsd-questions@freebsd.org Sender: owner-freebsd-questions@FreeBSD.org MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" --=-=-= Content-Type: text/plain Mario Marietto writes: > ==> pkg install plasma6-plasma kde6-devel Drop kde6-devel. It's obsolete and pulls other KDE stuff besides Plasma like KDE Gear (aka applications) that can be used even on GNOME, XFCE, etc. > ==> pkg install --glob "plasma6-*" > ==> pkg install --glob "kf6-*" Unnecessary: already pulled by plasma6-plasma. > ==> sysrc seatd_enable="YES" Plasma cannot use seatd without https://github.com/CTSRD-CHERI/cheribsd-ports/commit/02e468a397ad > ==> sysrc -f /etc/rc.conf kld_list+="nvidia-modeset nvidia- > drm linux linux64 i915kms ext2fs mac_priority" nvidia-drm already loads nvidia-modeset. Moreover, loading nvidia-modeset before nvidia-drm may not work. According to https://www.freshports.org/graphics/nvidia-drm-61-kmod#message you also need "sysctl hw.nvidiadrm.modeset=1" > export MOZ_ENABLE_WAYLAND=1 > export __NV_PRIME_RENDER_OFFLOAD=1 > export __GLX_VENDOR_LIBRARY_NAME=nvidia > export XDG_SESSION_TYPE=wayland > export XDG_RUNTIME_DIR=/tmp/$USER/.xdg > export CLUTTER_BACKEND=wayland > export SDL_VIDEODRIVER=wayland > export LIBGL_DRI3_ENABLE=1 > export XKB_DEFAULT_RULES=evdev > export QT_QPA_PLATFORM=wayland-egl > export QT_WAYLAND_DISABLE_WINDOWDECORATION=1 > export BEMENU_BACKEND=wayland > export WLR_DRM_NO_ATOMIC=1 > export XCURSOR_THEME=whiteglass > #export QT_QPA_PLATFORMTHEME=qt5ct > export WLR_NO_HARDWARE_CURSORS=1 Looks like a cargo cult. Not only many of these are default but some may even break Xwayland support in apps that don't support Wayland natively yet such as emulators/wine* > [ -d $XDG_RUNTIME_DIR ] || mkdir -m 700 -p $XDG_RUNTIME_DIR Manually setting and creating XDG_RUNTIME_DIR is obsolete on FreeBSD >= 14 via pam_xdg(8). Besides, Plasma uses ConsoleKit2 which overrides XDG_RUNTIME_DIR and (if the value is same) destroys existing contents. GUI apps started before Plasma with different XDG_RUNTIME_DIR wouldn't be accessible from within Plasma and may cause other issues. > exec dbus-launch --sh-syntax --exit-with-session startplasma- Plasma requires ConsoleKit2 session, so prepend ck-launch-session like https://cgit.freebsd.org/ports/tree/x11/plasma5-plasma-workspace/files/startplasma-wayland.sh > but I get the following errors : > > https://ibb.co/VNmW9Wn > https://ibb.co/Hhd5y0Z > https://ibb.co/XL1xtLH Do you have /dev/dri/card0 ? If not debug drm-kmod or nvidia-drm-kmod. After that check if Wayfire works before going on Plasma journey. DEs like Plasma are a pinnacle of complexity, so even experienced users can easily drown in pilot errors. Plasma/Wayland 6.1.1 works fine for me but I've only tested under Sway. If standalone Plasma/Wayland fails it's likely due to ConsoleKit2 again. --=-=-= Content-Type: image/png Content-Disposition: inline; filename=plasma6-wayland.png Content-Transfer-Encoding: base64 Content-Description: Settings -> About screenshot (Kernel version gives away FreeBSD) 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 AAQAAAAA8NcfBWZHs2FMOxsAAAAASUVORK5CYII= --=-=-=-- From nobody Mon Jul 1 23:55:57 2024 X-Original-To: freebsd-questions@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4WCjc15Rdsz5QXTB for ; Mon, 01 Jul 2024 23:56:01 +0000 (UTC) (envelope-from thronobulax@gmail.com) Received: from mail-qt1-x836.google.com (mail-qt1-x836.google.com [IPv6:2607:f8b0:4864:20::836]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "WR4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4WCjc06xx9z4Qv8 for ; Mon, 1 Jul 2024 23:56:00 +0000 (UTC) (envelope-from thronobulax@gmail.com) Authentication-Results: mx1.freebsd.org; dkim=pass header.d=gmail.com header.s=20230601 header.b=AyDOw4mf; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (mx1.freebsd.org: domain of thronobulax@gmail.com designates 2607:f8b0:4864:20::836 as permitted sender) smtp.mailfrom=thronobulax@gmail.com Received: by mail-qt1-x836.google.com with SMTP id d75a77b69052e-4464c31a874so18158431cf.2 for ; Mon, 01 Jul 2024 16:56:00 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1719878160; x=1720482960; darn=freebsd.org; h=content-transfer-encoding:in-reply-to:content-language:references :to:from:subject:user-agent:mime-version:date:message-id:from:to:cc :subject:date:message-id:reply-to; bh=ieICyetjOm4qO7sscWOTBYTw7Y+Bi4VcEsiWQLsbKHA=; b=AyDOw4mf+m/fda0R0n3VxGHIcNlCBxNYRiQ+btqtcIT1oLDZeST6QvuSzC3SOI95gt EqTYYKl24Ob3TwiO/KJexGcBHcEna48sOBumU/gRUH0nKVFtdm9wfDnwsaVXgUuDK7O7 hLAXO0HScYxqYOgOUs7G0jSQ0aGY19SPbXOf2dT8YEppdrsop0LNNCvwoM3u+Qg63gt3 68NkARPT5Cb6/zLMYq4l4BSnbhYKAlM9T23ZdKSW9kPiKeh2whilFa5hyDfNd+O/qb2h G3HfsvRrKBloKQzZkJjqKV5PyOlkJw13vWib5E9vOTwSj94ws/+FFzw7YJhrtUWrVY3b TniA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1719878160; x=1720482960; h=content-transfer-encoding:in-reply-to:content-language:references :to:from:subject:user-agent:mime-version:date:message-id :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=ieICyetjOm4qO7sscWOTBYTw7Y+Bi4VcEsiWQLsbKHA=; b=XJLB21YHd2xhxMBEo3DJxaeiAzZVjlxbBW4t7MYfLfntA4zShA//E5pXd0erZTN6sa /pdW3R4wdsaJ6sCZwTlSV7uZyjLybkJ6wI2AJwbZQ92rWFr8uRaa0CzQYSPg70RYmJQu c4XduOQU2QI3KvhYcDt6/JkchqR41UwtnFVK7Wzdqvz0LP0t/0GLsDyFhyGrNOMmI8Fx PPj4lhqmkDE4D1/kotXSw9rzpPZy90FxVWLmfvB2tjfm2Uhn0EqYwUiJnzyivpnSvhcw BYFsgre/Sl26/i5xaVs6rF0Rr5KsMoOhrYdPvkPvIhQpmsKPJ+SiRSi30a4GmBisV2mb RGLA== X-Gm-Message-State: AOJu0YyVZtuithIWYej/EEnuXpl7l5ew9m9dh59F4++INDRcAIBYF/Cd n5hRZbEtRwYwfFOvf6OeplqwnGxjl+KwNgAbtJt1HUSVPDEnH2YP249Q/A== X-Google-Smtp-Source: AGHT+IFgf2x/HN8qO15qz/UiDmqwONW6eQSsjdBx8U38lJeJkFVirgRiYhlijTuPeoxKndsx7mYW/A== X-Received: by 2002:ac8:7d54:0:b0:444:d2d0:9a52 with SMTP id d75a77b69052e-44662e084ccmr80439701cf.35.1719878159797; Mon, 01 Jul 2024 16:55:59 -0700 (PDT) Received: from [192.168.0.2] (ozzie.tundraware.com. [75.145.138.73]) by smtp.gmail.com with ESMTPSA id d75a77b69052e-446514b0b1dsm35565411cf.79.2024.07.01.16.55.58 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Mon, 01 Jul 2024 16:55:59 -0700 (PDT) Message-ID: <27ad5730-415e-4a16-b823-75a6ca383323@gmail.com> Date: Mon, 1 Jul 2024 18:55:57 -0500 List-Id: User questions List-Archive: https://lists.freebsd.org/archives/freebsd-questions List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: freebsd-questions@freebsd.org Sender: owner-freebsd-questions@FreeBSD.org MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: Buildworld Taking Very Long Time From: Tim Daneliuk To: FreeBSD Mailing List References: <3ca5191f-41fe-420c-86e9-ee4e89e599a9@gmail.com> Content-Language: en-US In-Reply-To: <3ca5191f-41fe-420c-86e9-ee4e89e599a9@gmail.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-Spamd-Bar: --- X-Spamd-Result: default: False [-3.95 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; NEURAL_HAM_LONG(-1.00)[-1.000]; NEURAL_HAM_SHORT(-0.96)[-0.961]; DMARC_POLICY_ALLOW(-0.50)[gmail.com,none]; R_SPF_ALLOW(-0.20)[+ip6:2607:f8b0:4000::/36]; R_DKIM_ALLOW(-0.20)[gmail.com:s=20230601]; MIME_GOOD(-0.10)[text/plain]; XM_UA_NO_VERSION(0.01)[]; RCVD_TLS_LAST(0.00)[]; FROM_HAS_DN(0.00)[]; ARC_NA(0.00)[]; MIME_TRACE(0.00)[0:+]; RCPT_COUNT_ONE(0.00)[1]; FREEMAIL_ENVFROM(0.00)[gmail.com]; FREEMAIL_FROM(0.00)[gmail.com]; TO_DN_ALL(0.00)[]; DKIM_TRACE(0.00)[gmail.com:+]; DWL_DNSWL_NONE(0.00)[gmail.com:dkim]; PREVIOUSLY_DELIVERED(0.00)[freebsd-questions@freebsd.org]; RCVD_COUNT_TWO(0.00)[2]; FROM_EQ_ENVFROM(0.00)[]; TO_MATCH_ENVRCPT_ALL(0.00)[]; MLMMJ_DEST(0.00)[freebsd-questions@freebsd.org]; RCVD_VIA_SMTP_AUTH(0.00)[]; MID_RHS_MATCH_FROM(0.00)[]; ASN(0.00)[asn:15169, ipnet:2607:f8b0::/32, country:US]; RCVD_IN_DNSWL_NONE(0.00)[2607:f8b0:4864:20::836:from] X-Rspamd-Queue-Id: 4WCjc06xx9z4Qv8 On 6/30/24 10:11, Tim Daneliuk wrote: > We do a nightly pull of -STABLE and then a buildworld/buildkernel > > The world and kernel build typically has been taking about 45-60min on one of > our quad core i5 machines. > > For no obvious reason, it's now taking dozens of hours.  Any insight on why this > might be happening would be appreciated. As a followup - - The machine in question is a 4 core I5 - a rather older one - The build disk is a fairly recent (1 yo ish) ssd - It has 8G of memory, but htop shows no memory starvation or use of swap - HOWEVER, htop is reporting a load average of almost 14 (!) but I am specifying -j4 on the make line Have buildworld and buildkern suddenly decided to ignore the -j4 and launch tons of parallel processes? Ideas anyone? From nobody Tue Jul 2 18:58:48 2024 X-Original-To: freebsd-questions@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4WDByr1Q0lz5P4BF for ; Tue, 02 Jul 2024 18:59:00 +0000 (UTC) (envelope-from freebsd@fl1ger.de) Received: from smtp.guxx.net (nyx.guxx.net [85.10.208.173]) by mx1.freebsd.org (Postfix) with ESMTP id 4WDByq1pczz4ZBc for ; Tue, 2 Jul 2024 18:58:58 +0000 (UTC) (envelope-from freebsd@fl1ger.de) Authentication-Results: mx1.freebsd.org; dkim=none; dmarc=none; spf=pass (mx1.freebsd.org: domain of freebsd@fl1ger.de designates 85.10.208.173 as permitted sender) smtp.mailfrom=freebsd@fl1ger.de Received: from [192.168.42.135] (p4fc21fc1.dip0.t-ipconnect.de [79.194.31.193]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by nyx.guxx.net (Postfix) with ESMTPSA id D21C05F40422; Tue, 2 Jul 2024 18:58:49 +0000 (UTC) From: Ralf Weber To: "Kevin P. Neal" Cc: FreeBSD Mailing List Subject: Re: IPv6 Date: Tue, 02 Jul 2024 20:58:48 +0200 X-Mailer: MailMate (1.14r6038) Message-ID: <6516CA84-3DDF-44E8-BB51-88D2C206C086@fl1ger.de> In-Reply-To: References: <38514ddc-a1f8-49c6-bcf9-c552da53e554@cloudzeeland.nl> <281A2C29-5605-471D-8762-191E1BA808FD@fl1ger.de> List-Id: User questions List-Archive: https://lists.freebsd.org/archives/freebsd-questions List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: freebsd-questions@freebsd.org Sender: owner-freebsd-questions@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-Spamd-Bar: -- X-Spamd-Result: default: False [-2.95 / 15.00]; NEURAL_HAM_LONG(-1.00)[-1.000]; NEURAL_HAM_MEDIUM(-0.97)[-0.971]; NEURAL_HAM_SHORT(-0.87)[-0.875]; R_SPF_ALLOW(-0.20)[+mx]; MIME_GOOD(-0.10)[text/plain]; RCVD_NO_TLS_LAST(0.10)[]; ONCE_RECEIVED(0.10)[]; RCVD_COUNT_ONE(0.00)[1]; RCVD_VIA_SMTP_AUTH(0.00)[]; ARC_NA(0.00)[]; MIME_TRACE(0.00)[0:+]; ASN(0.00)[asn:24940, ipnet:85.10.192.0/18, country:DE]; RCPT_COUNT_TWO(0.00)[2]; R_DKIM_NA(0.00)[]; TO_MATCH_ENVRCPT_SOME(0.00)[]; FROM_EQ_ENVFROM(0.00)[]; MID_RHS_MATCH_FROM(0.00)[]; TO_DN_ALL(0.00)[]; MLMMJ_DEST(0.00)[freebsd-questions@freebsd.org]; DMARC_NA(0.00)[fl1ger.de]; FROM_HAS_DN(0.00)[] X-Rspamd-Queue-Id: 4WDByq1pczz4ZBc Moin! On 26 Jun 2024, at 2:49, Kevin P. Neal wrote: > So, really, if the documentation is to be believed the only setting tha= t > would be needed is ServerAliveInterval since it defaults to zero. That is correct. You might want the connection to die at some point when = the network is gone so setting ServerAliveCountMax has some value. Sorry = got it backwards initially. So long -Ralf =E2=80=94=E2=80=94- Ralf Weber From nobody Tue Jul 2 21:33:52 2024 X-Original-To: freebsd-questions@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4WDGPd6kJWz5Ph40 for ; Tue, 02 Jul 2024 21:33:57 +0000 (UTC) (envelope-from thronobulax@gmail.com) Received: from mail-yb1-xb2e.google.com (mail-yb1-xb2e.google.com [IPv6:2607:f8b0:4864:20::b2e]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "WR4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4WDGPd04Rqz4vls for ; Tue, 2 Jul 2024 21:33:57 +0000 (UTC) (envelope-from thronobulax@gmail.com) Authentication-Results: mx1.freebsd.org; dkim=pass header.d=gmail.com header.s=20230601 header.b=KGOOLwbc; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (mx1.freebsd.org: domain of thronobulax@gmail.com designates 2607:f8b0:4864:20::b2e as permitted sender) smtp.mailfrom=thronobulax@gmail.com Received: by mail-yb1-xb2e.google.com with SMTP id 3f1490d57ef6-e036105251eso4551746276.0 for ; Tue, 02 Jul 2024 14:33:56 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1719956035; x=1720560835; darn=freebsd.org; h=content-transfer-encoding:in-reply-to:content-language:references :to:from:subject:user-agent:mime-version:date:message-id:from:to:cc :subject:date:message-id:reply-to; bh=yGQ4qs6DjC90r9HSxUVRtYtauG0PEzeUENa0E9opgmI=; b=KGOOLwbcvQcTiux72fJ69xHTol+ui1hK+thrB/KsTRZoZRrWorgU2r9hRjjRS5fOR5 aWYANUsgMMK9gpQnW2H9bNQOL/fJ/kCbPp6L/AU3ZCIWtxvTHg14M4sga6lvGG4PW7um JepED2Mm0asGU3BsSlYJywgL/oO/uXaELr/V95ua+Semq+SbPHiPdBHBNNOAanvEoukQ xHM7rDQU6bHfh9MnTX3D4GtuYBxMsVdqyoNJZYBnzSeVViFPcjtrQz5bUoi4IfSWZ7ag TDHsq6t84tN3TZcwN79JwWetScG9H7S9qoiduBauINt9kewLRsGR0s+MtpxI4m/nja5F zbXw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1719956035; x=1720560835; h=content-transfer-encoding:in-reply-to:content-language:references :to:from:subject:user-agent:mime-version:date:message-id :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=yGQ4qs6DjC90r9HSxUVRtYtauG0PEzeUENa0E9opgmI=; b=hq9VfEpGv2koNJQEwEF/GUY5wgZOEFxWCncyba3VZK78fGJGgZAioR5kEPOMKEXSyv 2xBDCHlcsmCAejzv7N9dK3CyXVOOqnVPPbTw4QpHn/ywqwzr9exhYzmdvgxDzy12BIQ2 oAYfjxPUn8KFXcDz656Z+Rj8lDcms0EYW28yNwsi+dQl0TQNak1x+g6wrDc4xmrXaSwM I0pMZZqnxy/8I3c5wG/HTh/+0chfcpDl001cjlM7kIJIUBUr6SK+eM1eLgzeWA48YRgI DilsCUjTQgmqbY5/BtKwiD8yh0MYLJHUtDHbt31XzRMqTFHcgaLAFdv58BDHwajey/0h HFug== X-Gm-Message-State: AOJu0Yw3TFRYml92W2HDRbAqfCb6073LlSlb9TPigbu6jBNQMsBThI+3 lmwVrXo0RTUnn9XUaYA+WjDP6gLKDS9/3houFUauG8BnpSHZ5MtKh9oEKA== X-Google-Smtp-Source: AGHT+IElcWk8+6ux6FsQDphrQ1I7mcxTXCknmBG5kggTVv0YtrONodZ3Y01iqjQnvmPXSaG0N5OhSg== X-Received: by 2002:a25:be06:0:b0:e03:60b3:72b6 with SMTP id 3f1490d57ef6-e036eaf3b5fmr11297752276.1.1719956034426; Tue, 02 Jul 2024 14:33:54 -0700 (PDT) Received: from [192.168.0.2] (ozzie.tundraware.com. [75.145.138.73]) by smtp.gmail.com with ESMTPSA id d75a77b69052e-446513d31acsm44713131cf.4.2024.07.02.14.33.53 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 02 Jul 2024 14:33:53 -0700 (PDT) Message-ID: Date: Tue, 2 Jul 2024 16:33:52 -0500 List-Id: User questions List-Archive: https://lists.freebsd.org/archives/freebsd-questions List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: freebsd-questions@freebsd.org Sender: owner-freebsd-questions@FreeBSD.org MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: Buildworld Taking Very Long Time From: Tim Daneliuk To: FreeBSD Mailing List References: <3ca5191f-41fe-420c-86e9-ee4e89e599a9@gmail.com> Content-Language: en-US In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-Spamd-Bar: -- X-Spamd-Result: default: False [-2.68 / 15.00]; NEURAL_HAM_LONG(-1.00)[-1.000]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; DMARC_POLICY_ALLOW(-0.50)[gmail.com,none]; NEURAL_SPAM_SHORT(0.31)[0.314]; R_DKIM_ALLOW(-0.20)[gmail.com:s=20230601]; R_SPF_ALLOW(-0.20)[+ip6:2607:f8b0:4000::/36]; MIME_GOOD(-0.10)[text/plain]; XM_UA_NO_VERSION(0.01)[]; RCVD_TLS_LAST(0.00)[]; TO_DN_ALL(0.00)[]; ARC_NA(0.00)[]; MIME_TRACE(0.00)[0:+]; RCPT_COUNT_ONE(0.00)[1]; FREEMAIL_ENVFROM(0.00)[gmail.com]; FREEMAIL_FROM(0.00)[gmail.com]; TO_MATCH_ENVRCPT_ALL(0.00)[]; FROM_HAS_DN(0.00)[]; DKIM_TRACE(0.00)[gmail.com:+]; PREVIOUSLY_DELIVERED(0.00)[freebsd-questions@freebsd.org]; RCVD_COUNT_TWO(0.00)[2]; FROM_EQ_ENVFROM(0.00)[]; DWL_DNSWL_NONE(0.00)[gmail.com:dkim]; MLMMJ_DEST(0.00)[freebsd-questions@freebsd.org]; RCVD_VIA_SMTP_AUTH(0.00)[]; MID_RHS_MATCH_FROM(0.00)[]; ASN(0.00)[asn:15169, ipnet:2607:f8b0::/32, country:US]; RCVD_IN_DNSWL_NONE(0.00)[2607:f8b0:4864:20::b2e:from] X-Rspamd-Queue-Id: 4WDGPd04Rqz4vls On 6/30/24 18:03, Horse Radish wrote: > The drives in question are ssd > > > On Sun, Jun 30, 2024, 5:26 PM Ralf Mardorf > wrote: > > On Sun, 2024-06-30 at 11:48 -0700, Edward Sanford Sutton, III wrote: > > Disk I/O taking longer than expected > > Shingled Magnetic Recording vs Conventional Magnetic Recording > So, we've discovered the apparent cause and I thought I share with the class. This is an older 4 core i5 server and it was starving for resources because ... We appear to be increasingly under bot scraping attacks. This was made worse because our apache config didn't implement the mpm module to limit apache resource consumption. In effect, apache would try to take on as much works as the public network could throw at it .... which gave us load averages in the 17s and up. The fix involved several things: - getting the apache mpm module in place - tuning its settings to severely limit number of processes and theads it could use - ipfw blocking some obvious scanning abusers (looking at you degenerates at Facebook..) So far, much, much better. We'll see. From nobody Wed Jul 3 00:50:44 2024 X-Original-To: questions@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4WDLmy6vtHz5Prmh for ; Wed, 03 Jul 2024 00:50:58 +0000 (UTC) (envelope-from brett@lariat.net) Received: from mail.lariat.net (mail.lariat.net [66.62.230.51]) by mx1.freebsd.org (Postfix) with ESMTP id 4WDLmy1lxjz4McY for ; Wed, 3 Jul 2024 00:50:58 +0000 (UTC) (envelope-from brett@lariat.net) Authentication-Results: mx1.freebsd.org; dkim=none; dmarc=none; spf=pass (mx1.freebsd.org: domain of brett@lariat.net designates 66.62.230.51 as permitted sender) smtp.mailfrom=brett@lariat.net Received: from Toshi.lariat.net (localhost.lariat.org [127.0.0.1]) by mail.lariat.net (8.9.3/8.9.3) with ESMTP id SAA06884 for ; Tue, 2 Jul 2024 18:50:44 -0600 (MDT) Message-Id: <202407030050.SAA06884@mail.lariat.net> X-Mailer: QUALCOMM Windows Eudora Version 7.1.0.9 Date: Tue, 02 Jul 2024 18:50:44 -0600 To: questions@freebsd.org From: Brett Glass Subject: Close OpenSSH hole on 13.1-RELEASE server without shutting down? List-Id: User questions List-Archive: https://lists.freebsd.org/archives/freebsd-questions List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: freebsd-questions@freebsd.org Sender: owner-freebsd-questions@FreeBSD.org Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii"; format=flowed X-Spamd-Bar: - X-Spamd-Result: default: False [-1.63 / 15.00]; SUBJECT_ENDS_QUESTION(1.00)[]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; NEURAL_HAM_LONG(-0.99)[-0.993]; NEURAL_HAM_SHORT(-0.94)[-0.937]; MV_CASE(0.50)[]; R_SPF_ALLOW(-0.20)[+a]; RCVD_NO_TLS_LAST(0.10)[]; MIME_GOOD(-0.10)[text/plain]; RCPT_COUNT_ONE(0.00)[1]; RCVD_COUNT_ONE(0.00)[1]; ASN(0.00)[asn:19092, ipnet:66.62.228.0/22, country:US]; MIME_TRACE(0.00)[0:+]; FROM_HAS_DN(0.00)[]; MLMMJ_DEST(0.00)[questions@freebsd.org]; R_DKIM_NA(0.00)[]; TO_DN_NONE(0.00)[]; FROM_EQ_ENVFROM(0.00)[]; MID_RHS_MATCH_FROMTLD(0.00)[]; TO_MATCH_ENVRCPT_ALL(0.00)[]; DMARC_NA(0.00)[lariat.net]; PREVIOUSLY_DELIVERED(0.00)[questions@freebsd.org]; ARC_NA(0.00)[] X-Rspamd-Queue-Id: 4WDLmy1lxjz4McY Hello! We have a server running FreeBSD 13.1-RELEASE (curent patch level: p5) in a remote location. It's running well, and uses a custom statically linked kernel with no loadable modules to conserve memory and allow better security. We just found out about the latest OpenSSH bug, and want to patch. Unfortunately, the freebsd-update utility isn't updating it, because it is JUST ONE POINT VERSION beyond the earliest one for which the Security Team has provided updates. And we can't shut the server down to do a major upgrade right now. (Upgrades to systems using custom kernels are especially dicey and frequently result in lockouts, which in this case would not only interrupt important activities but require a 50 mile drive.) Any ideas as to how to JUST upgrade OpenSSH? I've looked at installing the openssh-portable binary package, but when I start the process by doing a "pkg update" I get a warning message indicating OS mismatches for lots of packages. The error messages all include the line To ignore this error set IGNORE_OSVERSION=yes (which I assume means to start sh, set that environment variable in the shell, and then run the command). Is this safe? --Brett Glass From nobody Wed Jul 3 01:03:28 2024 X-Original-To: questions@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4WDM3n5nHVz5PtNn for ; Wed, 03 Jul 2024 01:03:49 +0000 (UTC) (envelope-from freebsd@gushi.org) Received: from prime.gushi.org (prime.gushi.org [IPv6:2620:137:6000:10::142]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "prime.gushi.org", Issuer "RapidSSL TLS RSA CA G1" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4WDM3n3Bq7z4PXH for ; Wed, 3 Jul 2024 01:03:49 +0000 (UTC) (envelope-from freebsd@gushi.org) Authentication-Results: mx1.freebsd.org; none Received: from smtpclient.apple ([IPv6:2601:602:87f:b05d:f97a:db76:6dbe:17a2]) (authenticated bits=0) by prime.gushi.org (8.17.2/8.17.2) with ESMTPSA id 46313hRN002317 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 3 Jul 2024 01:03:44 GMT (envelope-from freebsd@gushi.org) DKIM-Filter: OpenDKIM Filter v2.10.3 prime.gushi.org 46313hRN002317 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gushi.org; s=prime2014; t=1719968624; bh=pe6fbMbW5R5BrBaFjpadl/RnAtU+UKnZHwZV4FrczTE=; h=Subject:From:In-Reply-To:Date:Cc:References:To; z=Subject:=20Re:=20Close=20OpenSSH=20hole=20on=2013.1-RELEASE=20ser ver=20without=20shutting=20down?|From:=20Dan=20Mahoney=20|In-Reply-To:=20<202407030050.SAA06884@mail.lariat.net>| Date:=20Tue,=202=20Jul=202024=2018:03:28=20-0700|Cc:=20questions@f reebsd.org|References:=20<202407030050.SAA06884@mail.lariat.net>|T o:=20Brett=20Glass=20; b=YDmQKdD+FXsH+PQ2FmQUjsuUZSFI+ZDpbHXR/mPDqw/cH+u3VX4a7lEp4tsUUyx1q 4Ty5e6yhojiYAoPOrICU2V/6oNYrXWo//GRbwNLit+JmTrzOIs2x9JpG7u49EEWTzN Z1ZarHljOsUGlXzdO1eDnoKfa0mUo75/zuLwN1Dycl6x67R73Z+k14tRwNQeqwUE/T 37vvN6LBsBUOPftTgOzUgXK6lliOBOCBa5emLc74vsDqRnjGkuiHF4qlOWQyYB8yZu EiwHWg6FUzhucOO0s3/bmVJLNuaC2HXuDm0HLrFAOf3U7SdYMZROK09YqQfaAGO6// nZe2jk5Zg3VJQ== X-Authentication-Warning: prime.gushi.org: Host [IPv6:2601:602:87f:b05d:f97a:db76:6dbe:17a2] claimed to be smtpclient.apple Content-Type: text/plain; charset=us-ascii List-Id: User questions List-Archive: https://lists.freebsd.org/archives/freebsd-questions List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: freebsd-questions@freebsd.org Sender: owner-freebsd-questions@FreeBSD.org Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3774.600.62\)) Subject: Re: Close OpenSSH hole on 13.1-RELEASE server without shutting down? From: Dan Mahoney In-Reply-To: <202407030050.SAA06884@mail.lariat.net> Date: Tue, 2 Jul 2024 18:03:28 -0700 Cc: questions@freebsd.org Content-Transfer-Encoding: quoted-printable Message-Id: References: <202407030050.SAA06884@mail.lariat.net> To: Brett Glass X-Mailer: Apple Mail (2.3774.600.62) X-Spamd-Bar: ---- X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:393507, ipnet:2620:137:6000::/44, country:US] X-Rspamd-Queue-Id: 4WDM3n3Bq7z4PXH > On Jul 2, 2024, at 17:50, Brett Glass wrote: >=20 > Hello! >=20 > We have a server running FreeBSD 13.1-RELEASE (curent patch level: p5) = in a remote location. It's running well, and uses a custom statically = linked kernel with no loadable modules to conserve memory and allow = better security. >=20 > We just found out about the latest OpenSSH bug, and want to patch. = Unfortunately, the freebsd-update utility isn't updating it, because it = is JUST ONE POINT VERSION beyond the earliest one for which the Security = Team has provided updates. And we can't shut the server down to do a = major upgrade right now. (Upgrades to systems using custom kernels are = especially dicey and frequently result in lockouts, which in this case = would not only interrupt important activities but require a 50 mile = drive.) >=20 > Any ideas as to how to JUST upgrade OpenSSH? I've looked at installing = the openssh-portable binary package, but when I start the process by = doing a "pkg update" I get a warning message indicating OS mismatches = for lots of packages. The error messages all include the line >=20 > To ignore this error set IGNORE_OSVERSION=3Dyes >=20 > (which I assume means to start sh, set that environment variable in = the shell, and then run the command). Is this safe? There is a workaround posted in the security advisory. You can also = firewall off ssh connections from anywhere but trusted sources. Note = that if you're still on 13.1 there are other security advisories to be = aware of beyond the ssh one. (Albeit none quite so egregious). -Dan From nobody Wed Jul 3 02:53:17 2024 X-Original-To: questions@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4WDPVn08Ctz5Q76p for ; Wed, 03 Jul 2024 02:53:53 +0000 (UTC) (envelope-from brett@lariat.net) Received: from mail.lariat.net (mail.lariat.net [66.62.230.51]) by mx1.freebsd.org (Postfix) with ESMTP id 4WDPVm4CdMz4Z4D for ; Wed, 3 Jul 2024 02:53:52 +0000 (UTC) (envelope-from brett@lariat.net) Authentication-Results: mx1.freebsd.org; none Received: from Toshi.lariat.net (localhost.lariat.org [127.0.0.1]) by mail.lariat.net (8.9.3/8.9.3) with ESMTP id UAA07651; Tue, 2 Jul 2024 20:53:23 -0600 (MDT) Message-Id: <202407030253.UAA07651@mail.lariat.net> X-Mailer: QUALCOMM Windows Eudora Version 7.1.0.9 Date: Tue, 02 Jul 2024 20:53:17 -0600 To: Dan Mahoney From: Brett Glass Subject: Re: Close OpenSSH hole on 13.1-RELEASE server without shutting down? Cc: questions@freebsd.org In-Reply-To: References: <202407030050.SAA06884@mail.lariat.net> List-Id: User questions List-Archive: https://lists.freebsd.org/archives/freebsd-questions List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: freebsd-questions@freebsd.org Sender: owner-freebsd-questions@FreeBSD.org Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii"; format=flowed X-Spamd-Bar: ---- X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:19092, ipnet:66.62.228.0/22, country:US] X-Rspamd-Queue-Id: 4WDPVm4CdMz4Z4D At 07:03 PM 7/2/2024, Dan Mahoney wrote: >There is a workaround posted in the security advisory. Unfortunately, the "workaround" is in many ways as bad as the vulnerability, because it exposes you to DoS attacks. >You can also firewall off ssh connections from anywhere but trusted sources. Yep. But if a worm based on this vulnerability begins to propagate, it might get behind the firewall. We really want to patch. --Brett From nobody Wed Jul 3 06:42:26 2024 X-Original-To: questions@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4WDVZk4CcSz5QZf9 for ; Wed, 03 Jul 2024 06:42:38 +0000 (UTC) (envelope-from ml@netfence.it) Received: from soth.netfence.it (mailserver.netfence.it [78.134.96.152]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "mailserver.netfence.it", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4WDVZj3MHrz43NG for ; Wed, 3 Jul 2024 06:42:37 +0000 (UTC) (envelope-from ml@netfence.it) Authentication-Results: mx1.freebsd.org; dkim=pass header.d=netfence.it header.s=202404 header.b=0SEI7wDr; dmarc=pass (policy=none) header.from=netfence.it; spf=pass (mx1.freebsd.org: domain of ml@netfence.it designates 78.134.96.152 as permitted sender) smtp.mailfrom=ml@netfence.it Received: from [10.1.2.18] (mailserver.netfence.it [78.134.96.152]) (authenticated bits=0) by soth.netfence.it (8.18.1/8.17.2) with ESMTPSA id 4636gQmV033070 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NO) for ; Wed, 3 Jul 2024 08:42:26 +0200 (CEST) (envelope-from ml@netfence.it) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=netfence.it; s=202404; t=1719988948; bh=WnfSDOhdT1low2Fricb0r40igUxMETFQ6GC7SBZLPlw=; h=Date:Subject:To:References:From:In-Reply-To; b=0SEI7wDrnwu8AKWqafhQxeCGYR3Pqj5vdOs5llM2zi8Wl/2/sl9pcS/chQ9miV625 Zt9cXostIzg/g5NsmSQcHusL/plWfZohOfF+tFwy08QxAAZAin9wq5rj4A6bPMZzIj XvPzFstoqRI2FCeUb0PiIBHRoKFpHtPZi5KNprnk= X-Authentication-Warning: soth.netfence.it: Host mailserver.netfence.it [78.134.96.152] claimed to be [10.1.2.18] Message-ID: <34091912-ef54-4310-bf91-ec8a27679916@netfence.it> Date: Wed, 3 Jul 2024 08:42:26 +0200 List-Id: User questions List-Archive: https://lists.freebsd.org/archives/freebsd-questions List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: freebsd-questions@freebsd.org Sender: owner-freebsd-questions@FreeBSD.org MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Close OpenSSH hole on a supported server without shutting down? Content-Language: en-US To: questions@freebsd.org References: <202407030050.SAA06884@mail.lariat.net> From: Andrea Venturoli In-Reply-To: <202407030050.SAA06884@mail.lariat.net> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-Scanned-By: MIMEDefang 2.86 X-Spamd-Bar: -- X-Spamd-Result: default: False [-2.99 / 15.00]; NEURAL_HAM_LONG(-1.00)[-1.000]; SUBJECT_ENDS_QUESTION(1.00)[]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; NEURAL_HAM_SHORT(-1.00)[-0.997]; DMARC_POLICY_ALLOW(-0.50)[netfence.it,none]; R_SPF_ALLOW(-0.20)[+ip4:78.134.96.152]; R_DKIM_ALLOW(-0.20)[netfence.it:s=202404]; MIME_GOOD(-0.10)[text/plain]; XM_UA_NO_VERSION(0.01)[]; RCVD_VIA_SMTP_AUTH(0.00)[]; ASN(0.00)[asn:35612, ipnet:78.134.0.0/17, country:IT]; RCPT_COUNT_ONE(0.00)[1]; MIME_TRACE(0.00)[0:+]; RCVD_COUNT_ONE(0.00)[1]; RCVD_TLS_ALL(0.00)[]; MLMMJ_DEST(0.00)[questions@freebsd.org]; ARC_NA(0.00)[]; FROM_HAS_DN(0.00)[]; HAS_XAW(0.00)[]; MID_RHS_MATCH_FROM(0.00)[]; FROM_EQ_ENVFROM(0.00)[]; TO_MATCH_ENVRCPT_ALL(0.00)[]; TO_DN_NONE(0.00)[]; PREVIOUSLY_DELIVERED(0.00)[questions@freebsd.org]; DKIM_TRACE(0.00)[netfence.it:+] X-Rspamd-Queue-Id: 4WDVZj3MHrz43NG On 7/3/24 02:50, Brett Glass wrote: > Hello! Same question here, but for supported versions (13.3 and 14.x). Is the following enough? > cd /usr/src > make buildworld > cd /usr/src/secure/usr.sbin/sshd/ > make install > cd /usr/src/secure/lib/libssh/ > make install > service sshd restart bye & Thanks av. P.S. Out of mere curiosity: _ all articles I read say that this is a vulnerability found in OpenSSH’s server in *glibc-based* Linux systems; _ I would desume that non-glibc-based systems are not vulnerable; _ but FreeBSD is??? From nobody Wed Jul 3 07:06:47 2024 X-Original-To: questions@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4WDW6h032Xz5Qd2L for ; Wed, 03 Jul 2024 07:06:52 +0000 (UTC) (envelope-from chris@cretaforce.gr) Received: from relay3.cretaforce.gr (relay3.cretaforce.gr [195.201.253.216]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "*.cretaforce.gr", Issuer "RapidSSL TLS RSA CA G1" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4WDW6f6Rtwz465d for ; Wed, 3 Jul 2024 07:06:50 +0000 (UTC) (envelope-from chris@cretaforce.gr) Authentication-Results: mx1.freebsd.org; dkim=pass header.d=cretaforce.gr header.s=cretaforce header.b=s61yfa2D; dmarc=pass (policy=none) header.from=cretaforce.gr; spf=pass (mx1.freebsd.org: domain of chris@cretaforce.gr designates 195.201.253.216 as permitted sender) smtp.mailfrom=chris@cretaforce.gr Received: from server1.cretaforce.gr (server1.cretaforce.gr [94.130.217.104]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) client-signature RSA-PSS (2048 bits)) (Client CN "*.cretaforce.gr", Issuer "RapidSSL TLS RSA CA G1" (verified OK)) by smtp1.cretaforce.gr (Postfix) with ESMTPS id D6EC31FF2F for ; Wed, 3 Jul 2024 10:06:47 +0300 (EEST) Received: from smtpclient.apple (athedsl-4449383.home.otenet.gr [79.129.212.87]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) (Authenticated sender: chris@cretaforce.gr) by server1.cretaforce.gr (Postfix) with ESMTPSA id 934AA37743 for ; Wed, 03 Jul 2024 10:06:48 +0300 (EEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cretaforce.gr; s=cretaforce; t=1719990408; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=T2FoiW1E0Zwf1zo18NkaSR6rpOUrWojgDJlt4+UPi/8=; b=s61yfa2DOZUUJQW67V2CwEz1+k5+GRmI00tY7uSUpHwQZheRKXNiLII040e8/d1bHYVIsg GO7jhsEzCvVQTCn/4r7Au2jey9mM+B9frsMIuQuuOlBLUuykUSBJqGrzPyFJVphuX0XeG5 pW6Ygw1pGxr+/zrvBbr+xTJTcWMpHLI= From: Christos Chatzaras Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable List-Id: User questions List-Archive: https://lists.freebsd.org/archives/freebsd-questions List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: freebsd-questions@freebsd.org Sender: owner-freebsd-questions@FreeBSD.org Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3774.600.62\)) Subject: Re: Close OpenSSH hole on a supported server without shutting down? Date: Wed, 3 Jul 2024 10:06:47 +0300 References: <202407030050.SAA06884@mail.lariat.net> <34091912-ef54-4310-bf91-ec8a27679916@netfence.it> To: questions@freebsd.org In-Reply-To: <34091912-ef54-4310-bf91-ec8a27679916@netfence.it> Message-Id: <0F399C03-5C48-4BD2-BBC0-010FC8D2F4E7@cretaforce.gr> X-Mailer: Apple Mail (2.3774.600.62) X-Spamd-Bar: ---- X-Spamd-Result: default: False [-4.06 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; SUBJECT_ENDS_QUESTION(1.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000]; DWL_DNSWL_LOW(-1.00)[cretaforce.gr:dkim]; NEURAL_HAM_SHORT(-0.96)[-0.958]; DMARC_POLICY_ALLOW(-0.50)[cretaforce.gr,none]; R_SPF_ALLOW(-0.20)[+ip4:195.201.253.216]; R_DKIM_ALLOW(-0.20)[cretaforce.gr:s=cretaforce]; MIME_GOOD(-0.10)[text/plain]; RCVD_IN_DNSWL_LOW(-0.10)[195.201.253.216:from]; FROM_HAS_DN(0.00)[]; RCVD_TLS_ALL(0.00)[]; TO_MATCH_ENVRCPT_ALL(0.00)[]; DKIM_TRACE(0.00)[cretaforce.gr:+]; RCPT_COUNT_ONE(0.00)[1]; FREEFALL_USER(0.00)[chris]; RCVD_VIA_SMTP_AUTH(0.00)[]; ARC_NA(0.00)[]; TO_DN_NONE(0.00)[]; RCVD_COUNT_TWO(0.00)[2]; FROM_EQ_ENVFROM(0.00)[]; ASN(0.00)[asn:24940, ipnet:195.201.0.0/16, country:DE]; PREVIOUSLY_DELIVERED(0.00)[questions@freebsd.org]; MID_RHS_MATCH_FROM(0.00)[]; MLMMJ_DEST(0.00)[questions@freebsd.org]; APPLE_MAILER_COMMON(0.00)[]; MIME_TRACE(0.00)[0:+] X-Rspamd-Queue-Id: 4WDW6f6Rtwz465d > On 3 Jul 2024, at 09:42, Andrea Venturoli wrote: >=20 > On 7/3/24 02:50, Brett Glass wrote: >> Hello! >=20 > Same question here, but for supported versions (13.3 and 14.x). >=20 > Is the following enough? >=20 >> cd /usr/src >> make buildworld >> cd /usr/src/secure/usr.sbin/sshd/ >> make install >> cd /usr/src/secure/lib/libssh/ >> make install >> service sshd restart >=20 > bye & Thanks > av. >=20 > P.S. > Out of mere curiosity: > _ all articles I read say that this is a vulnerability found in = OpenSSH=E2=80=99s server in *glibc-based* Linux systems; > _ I would desume that non-glibc-based systems are not vulnerable; > _ but FreeBSD is??? >=20 Here are the commands I used: gitup release cd /usr/src/secure/usr.sbin/sshd/ make all make install cd /usr/src/secure/lib/libssh/ make all make install Before running these commands, the date was "OpenSSH_9.6 = FreeBSD-20240104," and after executing them, the date updated to = "OpenSSH_9.6 FreeBSD-20240701." To be certain, I plan to do a full rebuild today.= From nobody Wed Jul 3 07:22:31 2024 X-Original-To: questions@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4WDWT14tXsz5MjVk for ; Wed, 03 Jul 2024 07:22:45 +0000 (UTC) (envelope-from lain@fair.moe) Received: from mail.076.ne.jp (mail.076.ne.jp [45.76.218.69]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4WDWSz36SKz49Fr for ; Wed, 3 Jul 2024 07:22:43 +0000 (UTC) (envelope-from lain@fair.moe) Authentication-Results: mx1.freebsd.org; dkim=pass header.d=076.ne.jp header.s=dkim header.b=YrPHkNh3; dmarc=none; spf=none (mx1.freebsd.org: domain of lain@fair.moe has no SPF policy when checking 45.76.218.69) smtp.mailfrom=lain@fair.moe Received: from mail.076.ne.jp (localhost [127.0.0.1]) by mail.076.ne.jp (Postfix) with ESMTP id 4WDWSp0BJvzW0nZ for ; Wed, 3 Jul 2024 16:22:34 +0900 (JST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=076.ne.jp; h= user-agent:in-reply-to:content-disposition:content-type :mime-version:references:message-id:subject:to:from:date; s= dkim; t=1719991352; x=1722583353; bh=e82ifk3o/dEXKyjlhCv8Pslt0je eLa/Oy43/HXhJQ7c=; b=YrPHkNh3vqj7BuiRd9QM+XNA4YYwkKKfFcf7ad5888r HqE047A+XmDkqzJ/0AGpGc19yLxUU6RbFASGWK0P/5ZjndsdGDBfldStrGIL80HQ E5OsbvCkmNoAB4qCBHGvfmK7qknTUcszs3CLDRKrRkylqdLLC+kpSO2hUoYqkDlM dD9fNradxTEWPKSkiXtx66PHEduo+7N+E7g+nNCgYHtEhF67oP9ClKW6i9/NzHEG CgwQJQIG5dEL8GlsxftmlkcBVIlxsM/Lba275t5KGDW+m1eH4vjhHKf3h2nRkQ8F q6yowjx8sL8jCuTvpUwSZEa6MgL/2II6DQTfYA3HCEA== X-Virus-Scanned: Debian amavisd-new at guest.guest Received: from mail.076.ne.jp ([127.0.0.1]) by mail.076.ne.jp (mail.076.ne.jp [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id WwTybhMr22Wl for ; Wed, 3 Jul 2024 16:22:32 +0900 (JST) Received: from mail.fair.moe (124.110.12.171.ap.gmobb-fix.jp [124.110.12.171]) by mail.076.ne.jp (Postfix) with ESMTPSA id 4WDWSm10F0zW0n1 for ; Wed, 3 Jul 2024 16:22:32 +0900 (JST) Date: Wed, 3 Jul 2024 16:22:31 +0900 From: "lain." To: questions@freebsd.org Subject: Re: Close OpenSSH hole on a supported server without shutting down? Message-ID: X-Location: =?utf-8?B?IkVhcnRoL+WcsOeQgyI=?= X-Operating-System: "OpenBSD" References: <202407030050.SAA06884@mail.lariat.net> <34091912-ef54-4310-bf91-ec8a27679916@netfence.it> List-Id: User questions List-Archive: https://lists.freebsd.org/archives/freebsd-questions List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: freebsd-questions@freebsd.org Sender: owner-freebsd-questions@FreeBSD.org MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="meyda5634ctgibnu" Content-Disposition: inline In-Reply-To: <34091912-ef54-4310-bf91-ec8a27679916@netfence.it> Autocrypt: addr=(null); prefer-encrypt=mutual; keydata= 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 User-Agent: NeoMutt/20240201 X-Spamd-Bar: --- X-Spamd-Result: default: False [-3.85 / 15.00]; SIGNED_PGP(-2.00)[]; SUBJECT_ENDS_QUESTION(1.00)[]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; NEURAL_HAM_LONG(-1.00)[-1.000]; NEURAL_HAM_SHORT(-0.95)[-0.946]; MID_RHS_NOT_FQDN(0.50)[]; MIME_GOOD(-0.20)[multipart/signed,text/plain]; R_DKIM_ALLOW(-0.20)[076.ne.jp:s=dkim]; RCVD_VIA_SMTP_AUTH(0.00)[]; RCPT_COUNT_ONE(0.00)[1]; DMARC_NA(0.00)[fair.moe]; MIME_TRACE(0.00)[0:+,1:+,2:~]; ASN(0.00)[asn:20473, ipnet:45.76.192.0/19, country:US]; R_SPF_NA(0.00)[no SPF record]; MLMMJ_DEST(0.00)[questions@freebsd.org]; ARC_NA(0.00)[]; FROM_EQ_ENVFROM(0.00)[]; FROM_HAS_DN(0.00)[]; RCVD_COUNT_THREE(0.00)[3]; TO_DN_NONE(0.00)[]; PREVIOUSLY_DELIVERED(0.00)[questions@freebsd.org]; TO_MATCH_ENVRCPT_ALL(0.00)[]; RCVD_TLS_LAST(0.00)[]; DKIM_TRACE(0.00)[076.ne.jp:+] X-Rspamd-Queue-Id: 4WDWSz36SKz49Fr --meyda5634ctgibnu Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On 2024=E5=B9=B407=E6=9C=8803=E6=97=A5 08:42, the silly Andrea Venturoli cl= aimed to have said: > P.S. > Out of mere curiosity: > _ all articles I read say that this is a vulnerability found in OpenSSH= =E2=80=99s > server in *glibc-based* Linux systems; > _ I would desume that non-glibc-based systems are not vulnerable; > _ but FreeBSD is??? For context, both glibc-based Linux distro's and FreeBSD, as well as macOS and a number of NetBSD ports, are volunerable because the=20 SIGALRM handler calls syslog() function the exploit relies on. OpenBSD and musl-based Linux distro's are not volunerable, because OpenBSD uses syslog_r() instead, which they developed all the way back in 2001. And in the case of musl, its syslog implementation doesn't (sub)call async-signal-unsafe functions, nor dynamically allocates memory. --=20 lain. PGP public key: https://fair.moe/lain.asc --meyda5634ctgibnu Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQGzBAABCAAdFiEEozVhUpXECiNYIKIXtWNzC1Y29b0FAmaE/DQACgkQtWNzC1Y2 9b3rlAv/ZqL83vkDc8J1x5jubinz6wMlwyz3Ay724iUd6MlFPaHw4wNxwRoVliZQ 8sfePUSm4Ji+LeHSMgsvqfc9iQG2yPbl4vQ3ZWOiRV0stJSi9IptgKpsUsl6y4ED sO8GtG483lfFjtS9rF97QMRbdOBIL41Q9g0SILPj4E/exuOrLEvfXQb1MBmcGHer hut1NUV7VsaVXSO88CLdCvMlnV6sWVwVEvruW26dDq5gNUdxOIHY/psjNyZKrg3m qMzdRDUKjZv5gvPooC2mVr++ebB0vu69dq+qStHPMt5FtPrLk+Hj+aFNCFH0OfUX mP57GHckaUrvzw92XNRAnHVYmHw8sBSON7Dhb7M1c+/cwl0UZkY/SufAcCRbbCYx D7D6IV/u/SZmxdyyy41JUkQZzeZvrMjsz0/SYfiwLqJsce1C9H3oCfxRVq71EkSo dEJnqcQblcEuW8MsDu4UDe1glPv8TwCH7An2BN0tSByUIoFvKMw8wlDwM+9NaZQ2 jKnjUTmv =wj5W -----END PGP SIGNATURE----- --meyda5634ctgibnu-- From nobody Wed Jul 3 15:57:12 2024 X-Original-To: questions@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4WDktr4pGrz5PrTX for ; Wed, 03 Jul 2024 15:57:24 +0000 (UTC) (envelope-from mma@darktemple.ch) Received: from mail-gateway-shared15.cyon.net (mail-gateway-shared15.cyon.net [194.126.200.68]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4WDktq536Sz46NM for ; Wed, 3 Jul 2024 15:57:23 +0000 (UTC) (envelope-from mma@darktemple.ch) Authentication-Results: mx1.freebsd.org; dkim=pass header.d=darktemple.ch header.s=default header.b=DmW2bCKW; dmarc=none; spf=none (mx1.freebsd.org: domain of mma@darktemple.ch has no SPF policy when checking 194.126.200.68) smtp.mailfrom=mma@darktemple.ch Received: from s073.cyon.net ([149.126.4.82]) by mail-gateway-shared15.cyon.net with esmtpsa (TLS1.2:ECDHE_SECP256R1__RSA_SHA512__AES_256_GCM:256) (Exim) (envelope-from ) id 1sP2MC-005Zv6-1M for questions@freebsd.org; Wed, 03 Jul 2024 17:57:20 +0200 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=darktemple.ch; s=default; h=MIME-Version:Content-Type:References: In-Reply-To:Date:To:From:Subject:Message-ID:Content-Transfer-Encoding:Sender: Reply-To:Cc:Content-ID:Content-Description; bh=r6W16iIv9HQuL85iUv242ok8CQrM/MIG4r2a0fTxdeA=; b=DmW2bCKWqi4Rh1vKxXJePKXmMj qEj8v4/NzeHg3ZU2sjXyBPHWb4ipEEPLFoqgl9ZQJ8Gz20S9nmfjqOjlfBlpOpOsheXNbir7SPpcI Vf+5GfZwJHjlXKhvEq8dAe2lJaxkjhAr2TjNVdJY8EyUaLweP+lbyqlgYFXP8H0DGV7+qKGCRYIpQ gdXnT098UuyC5DXZjB05g8Aylq5x4yEGCLadHSDa1vzStC11uE9JGUagdbbOiE5BcWTiH0Pe3nknB cYUtt/Pp0SCNZvl1nENJ1KL4qylpvgG8SxXGScb3xjU+iatLWuxoJWr7oPPfRSz6c4RenX4KnKwDl ML0Ei7eg==; Received: from [10.20.10.232] (port=47834 helo=mail.cyon.ch) by s073.cyon.net with esmtpa (Exim 4.96.2) (envelope-from ) id 1sP2M7-007SOt-13 for questions@freebsd.org; Wed, 03 Jul 2024 17:57:15 +0200 Message-ID: Subject: Re: help with full zfs "partitions" - can't delete files - SOLVED? From: Mathias Mader To: questions@freebsd.org Date: Wed, 03 Jul 2024 17:57:12 +0200 In-Reply-To: References: Content-Type: multipart/signed; micalg="pgp-sha256"; protocol="application/pgp-signature"; boundary="=-QWx6abGjJYIKCaM51STK" User-Agent: Evolution 3.48.4 (3.48.4-1.fc38) List-Id: User questions List-Archive: https://lists.freebsd.org/archives/freebsd-questions List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: freebsd-questions@freebsd.org Sender: owner-freebsd-questions@FreeBSD.org MIME-Version: 1.0 X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - s073.cyon.net X-AntiAbuse: Original Domain - freebsd.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - darktemple.ch X-Get-Message-Sender-Via: s073.cyon.net: authenticated_id: mma@darktemple.ch X-Authenticated-Sender: s073.cyon.net: mma@darktemple.ch X-Spamd-Bar: --- X-Spamd-Result: default: False [-3.99 / 15.00]; SIGNED_PGP(-2.00)[]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; SUBJECT_ENDS_QUESTION(1.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000]; NEURAL_HAM_SHORT(-0.49)[-0.492]; R_DKIM_ALLOW(-0.20)[darktemple.ch:s=default]; MIME_GOOD(-0.20)[multipart/signed,text/plain]; RCVD_IN_DNSWL_LOW(-0.10)[194.126.200.68:from]; TO_MATCH_ENVRCPT_ALL(0.00)[]; DKIM_TRACE(0.00)[darktemple.ch:+]; RCVD_TLS_LAST(0.00)[]; R_SPF_NA(0.00)[no SPF record]; HAS_X_AS(0.00)[mma@darktemple.ch]; DMARC_NA(0.00)[darktemple.ch]; RCPT_COUNT_ONE(0.00)[1]; HAS_X_GMSV(0.00)[mma@darktemple.ch]; HAS_X_ANTIABUSE(0.00)[]; ASN(0.00)[asn:47302, ipnet:194.126.200.0/24, country:CH]; RCVD_VIA_SMTP_AUTH(0.00)[]; FROM_EQ_ENVFROM(0.00)[]; FROM_HAS_DN(0.00)[]; ARC_NA(0.00)[]; RCVD_COUNT_TWO(0.00)[2]; MLMMJ_DEST(0.00)[questions@freebsd.org]; TO_DN_NONE(0.00)[]; MID_RHS_MATCH_FROM(0.00)[]; MIME_TRACE(0.00)[0:+,1:+,2:~] X-Rspamd-Queue-Id: 4WDktq536Sz46NM --=-QWx6abGjJYIKCaM51STK Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Hey there, I've had the same problem a couple of months back. But to my surprise, removing stuff with the `find` command still worked: find . -name 'something' -exec rm {} \; I'm not smart enough to tell why or how, but it did work. Regards, Mathias --=-QWx6abGjJYIKCaM51STK Content-Type: application/pgp-signature; name="signature.asc" Content-Description: This is a digitally signed message part -----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEEum0Wt+j5KRb8jmV5YyszEUJSlY0FAmaFdNgACgkQYyszEUJS lY2kWxAA1Ha9Clpb95tx1dA6Bfer6/qsNo8UBKE1kYRxkj5Ujb2xq+QS/CVOOu+3 pAG5Yk1QfzNtYN9x5HqxyWGdBInMsn3YZAva/MWrly3ogaIsfmsve/W6cKYLh1SQ 5FAaRJlrkuwKk0pVyMeWEY2vh/ZpD5lnqV42rOq68hv3//KpAwR9ymkY9ILbN+2s nieWFCNQbmDJK3jM0SH79bxD9yS/PDynaND8jI6ijxeCoS+vDr/KlzWrw9FYPngd r8HevCudjXl5CdqEVT773Jd/zFs7RTrd3EEozYwYh1OwXwA5Hoy+RI5DRfBEJnJF n2jSXRstT7H4ThtfoplnXM+dKJRls2fcFF9rdZTlDPkyNzmBlByTI0UUX7IKPwaO N0byEiiVBrGIF0B+UidQ9G4cietCY1PLTOsPy4EiCFMNBycP8/uf+rylzZjckN1G OuFL992xV4q1XTtPtjRiINpIQ0Dx/CrovimeR/s21QrFg3ui6u8hwf148dos6it/ cuwXSUYd5vdH8CmIBgN9DUinMmolld4pAnGA2QwS0l+zsHIblzHP1LDBhSuhq0Qc hTazUPoGGy1TE5I8o7iHU0cL4AWkL8fe9Jvq5lr2CXIVGs1ib1pe0Twbs/dYZdke x5OXcgWRc1K8cUi/F2WsRHkWtBKUDfrLQ5sydjwPTC5rhVDan0k= =rXJh -----END PGP SIGNATURE----- --=-QWx6abGjJYIKCaM51STK-- From nobody Thu Jul 4 03:48:57 2024 X-Original-To: freebsd-questions@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4WF2jR6B4Fz5Nkfh for ; Thu, 04 Jul 2024 03:50:19 +0000 (UTC) (envelope-from kpn@neutralgood.org) Received: from gunsight1.NeutralGood.ORG (gunsight1.neutralgood.org [206.196.19.100]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "gunsight1.neutralgood.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4WF2jQ5XYgz4QLj for ; Thu, 4 Jul 2024 03:50:18 +0000 (UTC) (envelope-from kpn@neutralgood.org) Authentication-Results: mx1.freebsd.org; dkim=none; dmarc=none; spf=pass (mx1.freebsd.org: domain of kpn@neutralgood.org designates 206.196.19.100 as permitted sender) smtp.mailfrom=kpn@neutralgood.org Received: from gunsight1.NeutralGood.ORG (localhost [127.0.0.1]) by gunsight1.NeutralGood.ORG (8.18.1/8.18.1) with ESMTPS id 4643mvXB056398 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NO); Wed, 3 Jul 2024 23:48:57 -0400 (EDT) (envelope-from kpn@gunsight1.NeutralGood.ORG) Received: (from kpn@localhost) by gunsight1.NeutralGood.ORG (8.18.1/8.18.1/Submit) id 4643mvUS056395; Wed, 3 Jul 2024 23:48:57 -0400 (EDT) (envelope-from kpn) Date: Wed, 3 Jul 2024 23:48:57 -0400 From: "Kevin P. Neal" To: William Dudley Cc: freebsd-questions Subject: Re: help with full zfs "partitions" - can't delete files Message-ID: References: List-Id: User questions List-Archive: https://lists.freebsd.org/archives/freebsd-questions List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: freebsd-questions@freebsd.org Sender: owner-freebsd-questions@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: X-No-archive: Yes X-Spamd-Bar: --- X-Spamd-Result: default: False [-3.30 / 15.00]; NEURAL_HAM_LONG(-1.00)[-1.000]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; NEURAL_HAM_SHORT(-1.00)[-1.000]; R_SPF_ALLOW(-0.20)[+mx]; MIME_GOOD(-0.10)[text/plain]; ARC_NA(0.00)[]; ASN(0.00)[asn:13649, ipnet:206.196.0.0/19, country:US]; MID_RHS_MATCH_FROM(0.00)[]; FREEMAIL_TO(0.00)[gmail.com]; MISSING_XM_UA(0.00)[]; R_DKIM_NA(0.00)[]; MLMMJ_DEST(0.00)[freebsd-questions@freebsd.org]; RCPT_COUNT_TWO(0.00)[2]; RCVD_COUNT_TWO(0.00)[2]; FROM_EQ_ENVFROM(0.00)[]; MIME_TRACE(0.00)[0:+]; TO_MATCH_ENVRCPT_SOME(0.00)[]; RCVD_TLS_LAST(0.00)[]; TO_DN_ALL(0.00)[]; DMARC_NA(0.00)[neutralgood.org]; FROM_HAS_DN(0.00)[] X-Rspamd-Queue-Id: 4WF2jQ5XYgz4QLj I'm not sure this was ever answered, so I'll chime in with advice for the future. On Mon, Jun 03, 2024 at 04:28:12PM -0400, William Dudley wrote: > The problem: > FreeBSD 13.3 amd64 system, with > a zfs pool built from two physical drives. > The zfs pool has 7 "partitions" (is that what they're called?) They're called "datasets". ZFS can use an entire disk, or it can live in a partition. The whole disk or partition is the container for the pool. Inside the pool are datasets. > I was copying files over from another machine and didn't realize that > I filled one of the partitions. > I can't proceed now with this one full partition. Strictly speaking, the pool is full because of the size of the dataset. The old-school advice for avoiding this is to set the property refreservation=1G on the top dataset of the pool. I had heard that this wasn't necessary anymore. But your report sounds like it actually is still needed. The reason this works is because it reserves 1G of space for that dataset so if the pool is otherwise filled there will still be that 1G free. You aren't supposed to use the top dataset for anything except child datasets. By convention, at least. Since ZFS is a copy-on-write filesystem you need free space to make any changes, but if the pool is totally full you can't make any changes. This leads to the absurd situation where the pool is so full you can't delete anything. BUT, if you have that 1G of reserved space in the top dataset then you'll always have free space and thus can always delete things or whatever. > Every single command fails due to "out of space". (Side note: It doesn't hurt to reserve that 1G of space unless you really, really need that last little scrap of space. But at point fragmentation becomes a very serious issue and you'll have terrible performance issues so, really, don't let it get to that point.) -- Kevin P. Neal http://www.pobox.com/~kpn/ "Good grief, I've just noticed I've typed in a rant. Sorry chaps!" Keir Finlow Bates, circa 1998 From nobody Thu Jul 4 14:26:40 2024 X-Original-To: freebsd-questions@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4WFJsB6Y2Xz5QGk2 for ; Thu, 04 Jul 2024 14:27:58 +0000 (UTC) (envelope-from kpn@neutralgood.org) Received: from gunsight1.NeutralGood.ORG (gunsight1.neutralgood.org [206.196.19.100]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "gunsight1.neutralgood.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4WFJs96nNhz4bLx for ; Thu, 4 Jul 2024 14:27:57 +0000 (UTC) (envelope-from kpn@neutralgood.org) Authentication-Results: mx1.freebsd.org; dkim=none; dmarc=none; spf=pass (mx1.freebsd.org: domain of kpn@neutralgood.org designates 206.196.19.100 as permitted sender) smtp.mailfrom=kpn@neutralgood.org Received: from gunsight1.NeutralGood.ORG (localhost [127.0.0.1]) by gunsight1.NeutralGood.ORG (8.18.1/8.18.1) with ESMTPS id 464EQete046430 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NO); Thu, 4 Jul 2024 10:26:40 -0400 (EDT) (envelope-from kpn@gunsight1.NeutralGood.ORG) Received: (from kpn@localhost) by gunsight1.NeutralGood.ORG (8.18.1/8.18.1/Submit) id 464EQeWZ046427; Thu, 4 Jul 2024 10:26:40 -0400 (EDT) (envelope-from kpn) Date: Thu, 4 Jul 2024 10:26:40 -0400 From: "Kevin P. Neal" To: Tim Daneliuk Cc: FreeBSD Mailing List Subject: Re: Buildworld Taking Very Long Time Message-ID: References: <3ca5191f-41fe-420c-86e9-ee4e89e599a9@gmail.com> <27ad5730-415e-4a16-b823-75a6ca383323@gmail.com> List-Id: User questions List-Archive: https://lists.freebsd.org/archives/freebsd-questions List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: freebsd-questions@freebsd.org Sender: owner-freebsd-questions@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <27ad5730-415e-4a16-b823-75a6ca383323@gmail.com> X-No-archive: Yes X-Spamd-Bar: --- X-Spamd-Result: default: False [-3.30 / 15.00]; NEURAL_HAM_LONG(-1.00)[-1.000]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; NEURAL_HAM_SHORT(-1.00)[-0.999]; R_SPF_ALLOW(-0.20)[+mx]; MIME_GOOD(-0.10)[text/plain]; ARC_NA(0.00)[]; ASN(0.00)[asn:13649, ipnet:206.196.0.0/19, country:US]; MISSING_XM_UA(0.00)[]; FREEMAIL_TO(0.00)[gmail.com]; RCPT_COUNT_TWO(0.00)[2]; MID_RHS_MATCH_FROM(0.00)[]; R_DKIM_NA(0.00)[]; MLMMJ_DEST(0.00)[freebsd-questions@freebsd.org]; RCVD_COUNT_TWO(0.00)[2]; FROM_EQ_ENVFROM(0.00)[]; MIME_TRACE(0.00)[0:+]; TO_MATCH_ENVRCPT_SOME(0.00)[]; RCVD_TLS_LAST(0.00)[]; TO_DN_ALL(0.00)[]; DMARC_NA(0.00)[neutralgood.org]; FROM_HAS_DN(0.00)[] X-Rspamd-Queue-Id: 4WFJs96nNhz4bLx On Mon, Jul 01, 2024 at 06:55:57PM -0500, Tim Daneliuk wrote: > Have buildworld and buildkern suddenly decided to ignore the -j4 and launch tons of parallel processes? > > Ideas anyone? /usr/bin/top is your friend. Especially if you tell it to order by CPU usage. It would have told you that your top CPU users were four compilations plus however many apache processes were killing your server. -- Kevin P. Neal http://www.pobox.com/~kpn/ "What is mathematics? The age-old answer is, of course, that mathematics is what mathematicians do." - Donald Knuth From nobody Thu Jul 4 20:57:06 2024 X-Original-To: freebsd-questions@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4WFTVM0scTz5PlgV for ; Thu, 04 Jul 2024 20:57:15 +0000 (UTC) (envelope-from cli_junkie@protonmail.com) Received: from mail-40133.protonmail.ch (mail-40133.protonmail.ch [185.70.40.133]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "protonmail.com", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4WFTVL1dQ7z4Lxx for ; Thu, 4 Jul 2024 20:57:14 +0000 (UTC) (envelope-from cli_junkie@protonmail.com) Authentication-Results: mx1.freebsd.org; dkim=pass header.d=protonmail.com header.s=protonmail3 header.b="a6hPp/MX"; dmarc=pass (policy=quarantine) header.from=protonmail.com; spf=pass (mx1.freebsd.org: domain of cli_junkie@protonmail.com designates 185.70.40.133 as permitted sender) smtp.mailfrom=cli_junkie@protonmail.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=protonmail.com; s=protonmail3; t=1720126631; x=1720385831; bh=hZRxxzjxx+UE5xuQJmAqaRUm0a8IXvHZnJ0uzfi34qk=; h=Date:To:From:Subject:Message-ID:Feedback-ID:From:To:Cc:Date: Subject:Reply-To:Feedback-ID:Message-ID:BIMI-Selector; b=a6hPp/MXs/S1c6oBstFHr6KiLPvmvjpi7CcixW2uIUxjneSQh4NZu1XUPQD7nlmS9 MAOo0Qkt7eqmTTSHBiCGgMuY7oHpqEaN6J6C39/LNqenc0eyVSRXbYKcwf0xUrisHP y4Bx31abF/Sb/9RDezBQ4hM3YlyIiU5/75O/+zGoNL4bhy5ibaTKiS9i/mYA3KxaL7 LY0fzqzbIif1pO4lxJUKkHkZoifvqzGY4la/n8Qy9EJV7BRz9XDGrimNGigq/2+/2K N9nPPoQkeUKn+jZCHvYCerzjmgzwNbV8zhRmzTy/Afcekma9n3GfWjr0fX0Da6qftU A1riXGBEn6Kwg== Date: Thu, 04 Jul 2024 20:57:06 +0000 To: freebsd-questions From: Pat Subject: Setting default version in Poudriere Message-ID: Feedback-ID: 34340203:user:proton X-Pm-Message-ID: ac6ebbc58c9f10bc0b6afadb02608a4b4c1f3c5e List-Id: User questions List-Archive: https://lists.freebsd.org/archives/freebsd-questions List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: freebsd-questions@freebsd.org Sender: owner-freebsd-questions@FreeBSD.org MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="b1_8nsA7OEgRWhSBvJWiRyoGNBK4g6DtqoaSsle3bM" X-Spamd-Bar: -- X-Spamd-Result: default: False [-2.17 / 15.00]; MIME_BASE64_TEXT_BOGUS(1.00)[]; NEURAL_HAM_LONG(-1.00)[-0.998]; NEURAL_HAM_SHORT(-0.98)[-0.978]; DMARC_POLICY_ALLOW(-0.50)[protonmail.com,quarantine]; R_DKIM_ALLOW(-0.20)[protonmail.com:s=protonmail3]; RWL_MAILSPIKE_VERYGOOD(-0.20)[185.70.40.133:from]; R_SPF_ALLOW(-0.20)[+ip4:185.70.40.0/24]; MIME_GOOD(-0.10)[multipart/alternative,text/plain]; MIME_BASE64_TEXT(0.10)[]; NEURAL_HAM_MEDIUM(-0.09)[-0.094]; FROM_HAS_DN(0.00)[]; ARC_NA(0.00)[]; FREEMAIL_FROM(0.00)[protonmail.com]; TO_DN_ALL(0.00)[]; MIME_TRACE(0.00)[0:+,1:+,2:~]; RCPT_COUNT_ONE(0.00)[1]; TO_MATCH_ENVRCPT_ALL(0.00)[]; DKIM_TRACE(0.00)[protonmail.com:+]; FREEMAIL_ENVFROM(0.00)[protonmail.com]; MLMMJ_DEST(0.00)[freebsd-questions@freebsd.org]; FROM_EQ_ENVFROM(0.00)[]; HAS_PHPMAILER_SIG(0.00)[]; MID_RHS_MATCH_FROM(0.00)[]; ASN(0.00)[asn:62371, ipnet:185.70.40.0/24, country:CH]; RCVD_COUNT_ZERO(0.00)[0]; MISSING_XM_UA(0.00)[]; RCVD_IN_DNSWL_NONE(0.00)[185.70.40.133:from] X-Rspamd-Queue-Id: 4WFTVL1dQ7z4Lxx This is a multi-part message in MIME format. --b1_8nsA7OEgRWhSBvJWiRyoGNBK4g6DtqoaSsle3bM Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: base64 SGVsbG8sCgpHb3QgYSBjb3VwbGUgb2YgcmF0aGVyIHNpbGx5IHF1ZXN0aW9uLCBidXQgSSBjYW4n dCBmaW5kIGEgZGVmaW5pdGl2ZSBhbnN3ZXIgdG8gZWl0aGVyLgoKSWYgSSBidWlsZCBQb3N0Z3Jl U1FMMTUtc2VydmVyLCBJIGdldCB2ZXJzaW9uIDE1LjcuIFRoYXQgaXMgdGhlIGxhdGVzdCB2ZXJz aW9uLCBzbyBub3QgdW5leHBlY3RlZC4KCkkgd291bGQgbGlrZSB0byBidWlsZCB2ZXJzaW9uIDE1 LjYuIElkZWFsbHkgSSB3b3VsZCBsaWtlIHRvIGhhdmUgYm90aCB2ZXJzaW9ucyBhdmFpbGFibGUg YmVjYXVzZSBmb3IgdGhlIG1vc3QgcGFydCBJIHdhbnQgdG8gaW5zdGFsbCAxNS43LCBidXQgSSBu ZWVkIDE1LjYgYXQgdGhlIG1vbWVudC4KClNvIG15IHF1ZXN0aW9ucyBhcmU6CkhvdyBkbyBJIGNv bmZpZ3VyZSB0aGluZ3MgdG8gaGF2ZSBib3RoIHZlcnNpb25zIGF2YWlsYWJsZT8KSWYgdGhhdCBp cyBub3QgcG9zc2libGUsIGhvdyBkbyBJIHNldCB0aGUgZGVmYXVsdCB0byBiZSAxNS42IGZvciBu b3csIHdpdGggdGhlIGludGVudCBvZiB1bmRvaW5nIHRoYXQgYWZ0ZXIgbXkgdGVzdGluZz8KClRo YW5rcywKUGF0 --b1_8nsA7OEgRWhSBvJWiRyoGNBK4g6DtqoaSsle3bM Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: base64 PGRpdiBzdHlsZT0iZm9udC1mYW1pbHk6IEFyaWFsLCBzYW5zLXNlcmlmOyBmb250LXNpemU6IDE0 cHg7Ij5IZWxsbyw8L2Rpdj48ZGl2IHN0eWxlPSJmb250LWZhbWlseTogQXJpYWwsIHNhbnMtc2Vy aWY7IGZvbnQtc2l6ZTogMTRweDsiPjxicj48L2Rpdj48ZGl2IHN0eWxlPSJmb250LWZhbWlseTog QXJpYWwsIHNhbnMtc2VyaWY7IGZvbnQtc2l6ZTogMTRweDsiPkdvdCBhIGNvdXBsZSBvZiByYXRo ZXIgc2lsbHkgcXVlc3Rpb24sIGJ1dCBJIGNhbid0IGZpbmQgYSBkZWZpbml0aXZlIGFuc3dlciB0 byBlaXRoZXIuPC9kaXY+PGRpdiBzdHlsZT0iZm9udC1mYW1pbHk6IEFyaWFsLCBzYW5zLXNlcmlm OyBmb250LXNpemU6IDE0cHg7Ij48YnI+PC9kaXY+PGRpdiBzdHlsZT0iZm9udC1mYW1pbHk6IEFy aWFsLCBzYW5zLXNlcmlmOyBmb250LXNpemU6IDE0cHg7Ij5JZiBJIGJ1aWxkIFBvc3RncmVTUUwx NS1zZXJ2ZXIsIEkgZ2V0IHZlcnNpb24gMTUuNy4gVGhhdCBpcyB0aGUgbGF0ZXN0IHZlcnNpb24s IHNvIG5vdCB1bmV4cGVjdGVkLjwvZGl2PjxkaXYgc3R5bGU9ImZvbnQtZmFtaWx5OiBBcmlhbCwg c2Fucy1zZXJpZjsgZm9udC1zaXplOiAxNHB4OyI+PGJyPjwvZGl2PjxkaXYgc3R5bGU9ImZvbnQt ZmFtaWx5OiBBcmlhbCwgc2Fucy1zZXJpZjsgZm9udC1zaXplOiAxNHB4OyI+SSB3b3VsZCBsaWtl IHRvIGJ1aWxkIHZlcnNpb24gMTUuNi4gSWRlYWxseSBJIHdvdWxkIGxpa2UgdG8gaGF2ZSBib3Ro IHZlcnNpb25zIGF2YWlsYWJsZSBiZWNhdXNlIGZvciB0aGUgbW9zdCBwYXJ0IEkgd2FudCB0byBp bnN0YWxsIDE1LjcsIGJ1dCBJIG5lZWQgMTUuNiBhdCB0aGUgbW9tZW50LjwvZGl2PjxkaXYgc3R5 bGU9ImZvbnQtZmFtaWx5OiBBcmlhbCwgc2Fucy1zZXJpZjsgZm9udC1zaXplOiAxNHB4OyI+PGJy PjwvZGl2PjxkaXYgc3R5bGU9ImZvbnQtZmFtaWx5OiBBcmlhbCwgc2Fucy1zZXJpZjsgZm9udC1z aXplOiAxNHB4OyI+U28gbXkgcXVlc3Rpb25zIGFyZTo8L2Rpdj48ZGl2IHN0eWxlPSJmb250LWZh bWlseTogQXJpYWwsIHNhbnMtc2VyaWY7IGZvbnQtc2l6ZTogMTRweDsiPkhvdyBkbyBJIGNvbmZp Z3VyZSB0aGluZ3MgdG8gaGF2ZSBib3RoIHZlcnNpb25zIGF2YWlsYWJsZT88L2Rpdj48ZGl2IHN0 eWxlPSJmb250LWZhbWlseTogQXJpYWwsIHNhbnMtc2VyaWY7IGZvbnQtc2l6ZTogMTRweDsiPklm IHRoYXQgaXMgbm90IHBvc3NpYmxlLCBob3cgZG8gSSBzZXQgdGhlIGRlZmF1bHQgdG8gYmUgMTUu NiBmb3Igbm93LCB3aXRoIHRoZSBpbnRlbnQgb2YgdW5kb2luZyB0aGF0IGFmdGVyIG15IHRlc3Rp bmc/PC9kaXY+PGRpdiBzdHlsZT0iZm9udC1mYW1pbHk6IEFyaWFsLCBzYW5zLXNlcmlmOyBmb250 LXNpemU6IDE0cHg7Ij48YnI+PC9kaXY+PGRpdiBzdHlsZT0iZm9udC1mYW1pbHk6IEFyaWFsLCBz YW5zLXNlcmlmOyBmb250LXNpemU6IDE0cHg7Ij5UaGFua3MsPC9kaXY+PGRpdiBzdHlsZT0iZm9u dC1mYW1pbHk6IEFyaWFsLCBzYW5zLXNlcmlmOyBmb250LXNpemU6IDE0cHg7Ij5QYXQ8YnI+PC9k aXY+DQo8ZGl2IGNsYXNzPSJwcm90b25tYWlsX3NpZ25hdHVyZV9ibG9jayBwcm90b25tYWlsX3Np Z25hdHVyZV9ibG9jay1lbXB0eSIgc3R5bGU9ImZvbnQtZmFtaWx5OiBBcmlhbCwgc2Fucy1zZXJp ZjsgZm9udC1zaXplOiAxNHB4OyI+DQogICAgPGRpdiBjbGFzcz0icHJvdG9ubWFpbF9zaWduYXR1 cmVfYmxvY2stdXNlciBwcm90b25tYWlsX3NpZ25hdHVyZV9ibG9jay1lbXB0eSI+DQogICAgICAg IA0KICAgICAgICAgICAgPC9kaXY+DQogICAgDQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJwcm90 b25tYWlsX3NpZ25hdHVyZV9ibG9jay1wcm90b24gcHJvdG9ubWFpbF9zaWduYXR1cmVfYmxvY2st ZW1wdHkiPg0KICAgICAgICANCiAgICAgICAgICAgIDwvZGl2Pg0KPC9kaXY+DQo= --b1_8nsA7OEgRWhSBvJWiRyoGNBK4g6DtqoaSsle3bM-- From nobody Fri Jul 5 07:56:17 2024 X-Original-To: questions@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4WFm7Z03JPz5QnR7 for ; Fri, 05 Jul 2024 07:56:58 +0000 (UTC) (envelope-from odhiambo@gmail.com) Received: from mail-ot1-x331.google.com (mail-ot1-x331.google.com [IPv6:2607:f8b0:4864:20::331]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "WR4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4WFm7X5FDMz4ctq for ; Fri, 5 Jul 2024 07:56:56 +0000 (UTC) (envelope-from odhiambo@gmail.com) Authentication-Results: mx1.freebsd.org; dkim=pass header.d=gmail.com header.s=20230601 header.b=aKViM9xt; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (mx1.freebsd.org: domain of odhiambo@gmail.com designates 2607:f8b0:4864:20::331 as permitted sender) smtp.mailfrom=odhiambo@gmail.com Received: by mail-ot1-x331.google.com with SMTP id 46e09a7af769-700cc8e447aso748701a34.2 for ; Fri, 05 Jul 2024 00:56:56 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1720166214; x=1720771014; darn=freebsd.org; h=to:subject:message-id:date:from:mime-version:from:to:cc:subject :date:message-id:reply-to; bh=ZUa8GvpwhYcgN3WaRVGsCIXbPLpkqJmqCNYtx9PJ3gs=; b=aKViM9xtNC076tJMuDV12w7Ac+DE3a5fkBQM2jlifDqx20TFkrOrJMHMXUVF9wFAD7 o6jpbjWuK6Wusi5DPGe+x/Fy2RR1tMwUsNLQyfYzWE6xAdjoZ9UHGG0xoRz5QSfeZTk3 3HWupYkwidLdK1LmAgGpTqXHRYCjlRJjpn4l9pwhLG7oIkLxj9oU11C0+iexNodZ6jcz ziGzyjAkZpLWc5LxsaSZiNtzIp5zTNmj+krcnJAbDOXzBH2EaE7sn6A4dQSRcAVSaKBZ o0K+QfkAT2vgNbLAtT3p6wiVxkOqrM6m4cPejNEylWl57/88KjqP4uux6SN89PaMminN IsRw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1720166214; x=1720771014; h=to:subject:message-id:date:from:mime-version:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=ZUa8GvpwhYcgN3WaRVGsCIXbPLpkqJmqCNYtx9PJ3gs=; b=kqLTZxGC+oG5QdkFtbDRtOzJeYaFZMFyT5yYSmBvQNRnrR1a11BmUpqUdXohs32un4 jnpWVJs3QFNK8RN7j/c2UPFHcoErBQUzmzjEc83VIwzTTv310i68/UQVlLnkKnDr0p6F uNkSPRWDxwhSLp2DxZdU9S5ah0prdbwHLebIB3JlQMl4KXCpMSDZ6LWPSUBs2Dh3A/yb HBKDVLu40xfOO7rzbDRP0MiDI79MysjLyVnz0mp09Jx2KKYlFLn/bm1MCOcMeqLvY3Ln 4Vk6mDPb5vt7kUh/qmzRBnBTDx+TOmZiQK9Xzxrc8rj0nRnS52HW2fFhSCPU1yfabnDj g2lw== X-Gm-Message-State: AOJu0YzVQYGYao/jdbKI1uWVG/80CjXHI3nD/PsxCpgwSAunk1NEVCgw IIkN5fZtSa6HJo6U7iDHcHlvaQojqe+Ws9mQctoUt6rpWQk1iOQSu8R4UqAsFa0eCa7tElE8rog cnVMMBHYEFSQRj5Vv33nURsFbx8w6uy1wu0RBcg== X-Google-Smtp-Source: AGHT+IGIJfARaG2xk1/WQjjsh0Z5VTBL8cpFhBZmlc++tlakgeKDm9LUKSqkFKhX9sWUoQiAkT1zthBJ0H0DHGCJNys= X-Received: by 2002:a05:6870:968b:b0:25e:d37:6c20 with SMTP id 586e51a60fabf-25e2bec820bmr3193929fac.36.1720166214047; Fri, 05 Jul 2024 00:56:54 -0700 (PDT) List-Id: User questions List-Archive: https://lists.freebsd.org/archives/freebsd-questions List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: freebsd-questions@freebsd.org Sender: owner-freebsd-questions@FreeBSD.org MIME-Version: 1.0 From: Odhiambo Washington Date: Fri, 5 Jul 2024 10:56:17 +0300 Message-ID: Subject: Server became inaccessible because it ran out of swap space To: questions Content-Type: multipart/alternative; boundary="000000000000249ff1061c7b68b8" X-Spamd-Bar: --- X-Spamd-Result: default: False [-4.00 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; NEURAL_HAM_LONG(-1.00)[-1.000]; NEURAL_HAM_SHORT(-1.00)[-0.998]; DMARC_POLICY_ALLOW(-0.50)[gmail.com,none]; R_DKIM_ALLOW(-0.20)[gmail.com:s=20230601]; R_SPF_ALLOW(-0.20)[+ip6:2607:f8b0:4000::/36:c]; MIME_GOOD(-0.10)[multipart/alternative,text/plain]; TO_DN_ALL(0.00)[]; RCVD_TLS_LAST(0.00)[]; ARC_NA(0.00)[]; FROM_HAS_DN(0.00)[]; MIME_TRACE(0.00)[0:+,1:+,2:~]; RCPT_COUNT_ONE(0.00)[1]; FREEMAIL_ENVFROM(0.00)[gmail.com]; FREEMAIL_FROM(0.00)[gmail.com]; TO_MATCH_ENVRCPT_ALL(0.00)[]; MISSING_XM_UA(0.00)[]; DWL_DNSWL_NONE(0.00)[gmail.com:dkim]; PREVIOUSLY_DELIVERED(0.00)[questions@freebsd.org]; FROM_EQ_ENVFROM(0.00)[]; DKIM_TRACE(0.00)[gmail.com:+]; MID_RHS_MATCH_FROMTLD(0.00)[]; ASN(0.00)[asn:15169, ipnet:2607:f8b0::/32, country:US]; MLMMJ_DEST(0.00)[questions@freebsd.org]; RCVD_COUNT_ONE(0.00)[1]; RCVD_IN_DNSWL_NONE(0.00)[2607:f8b0:4864:20::331:from] X-Rspamd-Queue-Id: 4WFm7X5FDMz4ctq --000000000000249ff1061c7b68b8 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable I have a server with 64GB RAM, 2CPUs each with 16 cores. I have also configured 13GB or swap space. ``` root@gw:/usr/local/bhyve-vms/scripts # swapinfo Device 1K-blocks Used Avail Capacity /dev/ada0p3 3163136 703316 2459820 22% /dev/md0.eli 10485760 709352 9776408 7% Total 13648896 1412668 12236228 10% root@gw:/usr/local/bhyve-vms/scripts # ``` A number of times it has become inaccessible until I do a hard reboot and this has been caused by what I believe is running out of swap. Below is what I have obtained from /var/log/messages after I rebooted. How do I identify the culprit? Arrest the situation? ``` Jul 5 06:50:56 gw kernel: failed Jul 5 06:52:11 gw kernel: failed Jul 5 06:52:11 gw kernel: out of swap space Jul 5 06:52:11 gw kernel: failed Jul 5 06:52:11 gw kernel: failed Jul 5 06:52:12 gw kernel: failed Jul 5 06:52:12 gw kernel: failed Jul 5 06:54:06 gw kernel: out of swap space Jul 5 06:54:06 gw kernel: failed Jul 5 07:16:30 gw kernel: pid 4076 (bhyve), jid 0, uid 0, was killed: failed to reclaim memory Jul 5 07:16:30 gw kernel: pid 4076 (bhyve), jid 0, uid 0, was killed: failed to reclaim memory Jul 5 07:16:30 gw kernel: tap4: link state changed to DOWN Jul 5 07:16:30 gw kernel: out of swap space Jul 5 07:16:30 gw kernel: failed Jul 5 07:16:30 gw kernel: failed Jul 5 07:16:30 gw kernel: failed Jul 5 07:16:30 gw kernel: pid 20849 (bhyve), jid 0, uid 0, was killed: failed to reclaim memory Jul 5 07:16:30 gw kernel: pid 20849 (bhyve), jid 0, uid 0, was killed: failed to reclaim memory Jul 5 07:16:30 gw kernel: tap5: link state changed to DOWN Jul 5 07:16:30 gw kernel: failed Jul 5 07:16:30 gw kernel: failed Jul 5 07:16:30 gw kernel: sonewconn: pcb 0xfffff8002866d100 (local:/var/run/wsgi.38620.0.1.sock): Listen queue overflow: 151 already in queue awaiting acceptance (1 occurrences), euid 0, rgid 0, jail 0 Jul 5 07:16:30 gw kernel: pid 3591 (bhyve), jid 0, uid 0, was killed: failed to reclaim memory Jul 5 07:16:30 gw kernel: pid 3591 (bhyve), jid 0, uid 0, was killed: failed to reclaim memory Jul 5 07:16:30 gw kernel: tap3: link state changed to DOWN Jul 5 07:16:30 gw kernel: failed Jul 5 07:16:30 gw kernel: out of swap space Jul 5 07:16:30 gw kernel: failed Jul 5 07:16:31 gw kernel: failed Jul 5 07:16:31 gw kernel: failed Jul 5 07:16:32 gw kernel: out of swap space Jul 5 07:16:33 gw kernel: out of swap space Jul 5 07:16:33 gw kernel: failed Jul 5 07:16:33 gw kernel: failed Jul 5 07:16:34 gw kernel: out of swap space Jul 5 07:16:34 gw kernel: failed Jul 5 07:16:36 gw kernel: failed Jul 5 07:16:36 gw kernel: failed Jul 5 07:16:36 gw kernel: failed Jul 5 07:16:36 gw kernel: failed Jul 5 07:16:36 gw kernel: failed Jul 5 07:16:37 gw kernel: failed Jul 5 07:16:37 gw kernel: failed Jul 5 07:16:37 gw kernel: failed Jul 5 07:16:37 gw kernel: failed Jul 5 07:16:37 gw kernel: failed Jul 5 07:16:37 gw kernel: failed Jul 5 07:16:37 gw kernel: failed Jul 5 07:16:38 gw kernel: failed ``` --=20 Best regards, Odhiambo WASHINGTON, Nairobi,KE +254 7 3200 0004/+254 7 2274 3223 In an Internet failure case, the #1 suspect is a constant: DNS. "Oh, the cruft.", egrep -v '^$|^.*#' =C2=AF\_(=E3=83=84)_/=C2=AF :-) [How to ask smart questions: http://www.catb.org/~esr/faqs/smart-questions.html] --000000000000249ff1061c7b68b8 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
I have a server with 64GB RAM, 2CPUs each with 16 cores. I= have also configured 13GB or swap space.

```
= root@gw:/usr/local/bhyve-vms/scripts # swapinfo
Device =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A01K-blocks =C2=A0 =C2=A0 Used =C2=A0 =C2=A0Avail Capacity/dev/ada0p3 =C2=A0 =C2=A0 =C2=A0 3163136 =C2=A0 703316 =C2=A02459820 =C2= =A0 =C2=A022%
/dev/md0.eli =C2=A0 =C2=A0 10485760 =C2=A0 709352 =C2=A097= 76408 =C2=A0 =C2=A0 7%
Total =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A013= 648896 =C2=A01412668 12236228 =C2=A0 =C2=A010%
root@gw:/usr/local/bhyve-= vms/scripts #
```

A number of t= imes it has become inaccessible until I do a hard reboot and this has been = caused by what I believe is running out of swap.

B= elow is what I have obtained from /var/log/messages after I rebooted.
=

How do I identify the culprit? Arrest the situation?


```
Jul =C2=A05 06:50:56 gw= kernel: failed
Jul =C2=A05 06:52:11 gw kernel: failed
Jul =C2=A05 06= :52:11 gw kernel: out of swap space
Jul =C2=A05 06:52:11 gw kernel: fail= ed
Jul =C2=A05 06:52:11 gw kernel: failed
Jul =C2=A05 06:52:12 gw ker= nel: failed
Jul =C2=A05 06:52:12 gw kernel: failed
Jul =C2=A05 06:54:= 06 gw kernel: out of swap space
Jul =C2=A05 06:54:06 gw kernel: failedJul =C2=A05 07:16:30 gw kernel: pid 4076 (bhyve), jid 0, uid 0, was kille= d: failed to reclaim memory
Jul =C2=A05 07:16:30 gw kernel: pid 4076 (bh= yve), jid 0, uid 0, was killed: failed to reclaim memory
Jul =C2=A05 07:= 16:30 gw kernel: tap4: link state changed to DOWN
Jul =C2=A05 07:16:30 g= w kernel: out of swap space
Jul =C2=A05 07:16:30 gw kernel: failed
Ju= l =C2=A05 07:16:30 gw kernel: failed
Jul =C2=A05 07:16:30 gw kernel: fai= led
Jul =C2=A05 07:16:30 gw kernel: pid 20849 (bhyve), jid 0, uid 0, was= killed: failed to reclaim memory
Jul =C2=A05 07:16:30 gw kernel: pid 20= 849 (bhyve), jid 0, uid 0, was killed: failed to reclaim memory
Jul =C2= =A05 07:16:30 gw kernel: tap5: link state changed to DOWN
Jul =C2=A05 07= :16:30 gw kernel: failed
Jul =C2=A05 07:16:30 gw kernel: failed
Jul = =C2=A05 07:16:30 gw kernel: sonewconn: pcb 0xfffff8002866d100 (local:/var/r= un/wsgi.38620.0.1.sock): Listen queue overflow: 151 already in queue awaiti= ng acceptance (1 occurrences), euid 0, rgid 0, jail 0
Jul =C2=A05 07:16:= 30 gw kernel: pid 3591 (bhyve), jid 0, uid 0, was killed: failed to reclaim= memory
Jul =C2=A05 07:16:30 gw kernel: pid 3591 (bhyve), jid 0, uid 0, = was killed: failed to reclaim memory
Jul =C2=A05 07:16:30 gw kernel: tap= 3: link state changed to DOWN
Jul =C2=A05 07:16:30 gw kernel: failed
= Jul =C2=A05 07:16:30 gw kernel: out of swap space
Jul =C2=A05 07:16:30 g= w kernel: failed
Jul =C2=A05 07:16:31 gw kernel: failed
Jul =C2=A05 0= 7:16:31 gw kernel: failed
Jul =C2=A05 07:16:32 gw kernel: out of swap sp= ace
Jul =C2=A05 07:16:33 gw kernel: out of swap space
Jul =C2=A05 07:= 16:33 gw kernel: failed
Jul =C2=A05 07:16:33 gw kernel: failed
Jul = =C2=A05 07:16:34 gw kernel: out of swap space
Jul =C2=A05 07:16:34 gw ke= rnel: failed
Jul =C2=A05 07:16:36 gw kernel: failed
Jul =C2=A05 07:16= :36 gw kernel: failed
Jul =C2=A05 07:16:36 gw kernel: failed
Jul =C2= =A05 07:16:36 gw kernel: failed
Jul =C2=A05 07:16:36 gw kernel: failedJul =C2=A05 07:16:37 gw kernel: failed
Jul =C2=A05 07:16:37 gw kernel:= failed
Jul =C2=A05 07:16:37 gw kernel: failed
Jul =C2=A05 07:16:37 g= w kernel: failed
Jul =C2=A05 07:16:37 gw kernel: failed
Jul =C2=A05 0= 7:16:37 gw kernel: failed
Jul =C2=A05 07:16:37 gw kernel: failed
Jul = =C2=A05 07:16:38 gw kernel: failed
```

--
Best regards,
Odhiambo WASHINGTON,
Nairob= i,KE
+254 7 3200 0004/+254 7 2274 3223
=C2=A0In=C2=A0an In= ternet failure case, the #1 suspect is a constant: DNS.
"Oh, the cruft.",=C2=A0egrep -v '= ;^$|^.*#'=C2=A0=C2=AF\_(=E3=83=84)_/=C2=AF=C2=A0:-)
[How to ask smart questions:=C2=A0http://www.catb.org/~esr/faqs/smart-questions.h= tml]
--000000000000249ff1061c7b68b8-- From nobody Fri Jul 5 08:27:32 2024 X-Original-To: questions@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4WFmq33RDbz5QrVk for ; Fri, 05 Jul 2024 08:27:43 +0000 (UTC) (envelope-from david.palma@takinobori.com) Received: from messages.takinobori.com (messages.takinobori.com [116.203.199.4]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "messages.takinobori.com", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4WFmq317KQz4hCC for ; Fri, 5 Jul 2024 08:27:43 +0000 (UTC) (envelope-from david.palma@takinobori.com) Authentication-Results: mx1.freebsd.org; none Received: from [127.0.0.1] (localhost [127.0.0.1]) by localhost (Mailerdaemon) with ESMTPSA id B576EFC7; Fri, 5 Jul 2024 08:27:33 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=takinobori.com; s=dkim; t=1720168054; h=from:subject:date:message-id:to:mime-version:content-type: content-transfer-encoding:content-language:in-reply-to:references; bh=8oM9T3rR804pYIS06HSk8Yyhf0TCpHyi/sblZAwacms=; b=wUGX0qsBs33QuqiVAXhhwbQ4tzMLHrsrRcQ72ZMl/jDVup/pMzQBJVmBTFpse8SlEgNGTB 5Wduii8gg1vXJTW3LHxQFeZJf98uADiUR6QV4j3s/gZZhzpQTwiC7WYT528ySxkfYtun8v ScdAiQVMVBW0qERW6M2x/IBJid7X1FYTLRveO7neWcGdSO3gYl74ldSkP3ZHk4ZOOBBfq2 couu84SBAjby3FdGUvVyEVv7ve8G6RvBR/eB5TsM5V3MZo4mox03f4lSZftloMdJ0s02ko jMLDofIz3tTEZ1fRK2Uc2yg8TMWAfkgCTKzULa+Wpv8Ad6t8lmkrcMVl2L4oMw== Message-ID: <8d2a864b-a2ad-48b7-9c52-32b2af3ceb79@takinobori.com> Date: Fri, 5 Jul 2024 08:27:32 +0000 List-Id: User questions List-Archive: https://lists.freebsd.org/archives/freebsd-questions List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: freebsd-questions@freebsd.org Sender: owner-freebsd-questions@FreeBSD.org MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: Server became inaccessible because it ran out of swap space To: Odhiambo Washington , questions References: Content-Language: pt-PT From: David Palma In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Last-TLS-Session-Version: TLSv1.3 X-Spamd-Bar: ---- X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:24940, ipnet:116.203.0.0/16, country:DE] X-Rspamd-Queue-Id: 4WFmq317KQz4hCC Hi, On 05/07/2024 07:56, Odhiambo Washington wrote: > I have a server with 64GB RAM, 2CPUs each with 16 cores. I have also > configured 13GB or swap space. > > ``` > root@gw:/usr/local/bhyve-vms/scripts # swapinfo > Device 1K-blocks Used Avail Capacity > /dev/ada0p3 3163136 703316 2459820 22% > /dev/md0.eli 10485760 709352 9776408 7% > Total 13648896 1412668 12236228 10% > root@gw:/usr/local/bhyve-vms/scripts # > ``` > > A number of times it has become inaccessible until I do a hard reboot and > this has been caused by what I believe is running out of swap. > > Below is what I have obtained from /var/log/messages after I rebooted. > > How do I identify the culprit? Arrest the situation? > > > ``` > Jul 5 06:50:56 gw kernel: failed > Jul 5 06:52:11 gw kernel: failed > Jul 5 06:52:11 gw kernel: out of swap space > Jul 5 06:52:11 gw kernel: failed > Jul 5 06:52:11 gw kernel: failed > Jul 5 06:52:12 gw kernel: failed > Jul 5 06:52:12 gw kernel: failed > Jul 5 06:54:06 gw kernel: out of swap space > Jul 5 06:54:06 gw kernel: failed > Jul 5 07:16:30 gw kernel: pid 4076 (bhyve), jid 0, uid 0, was killed: > failed to reclaim memory > Jul 5 07:16:30 gw kernel: pid 4076 (bhyve), jid 0, uid 0, was killed: > failed to reclaim memory > Jul 5 07:16:30 gw kernel: tap4: link state changed to DOWN > Jul 5 07:16:30 gw kernel: out of swap space > Jul 5 07:16:30 gw kernel: failed > Jul 5 07:16:30 gw kernel: failed > Jul 5 07:16:30 gw kernel: failed > Jul 5 07:16:30 gw kernel: pid 20849 (bhyve), jid 0, uid 0, was killed: > failed to reclaim memory > Jul 5 07:16:30 gw kernel: pid 20849 (bhyve), jid 0, uid 0, was killed: > failed to reclaim memory > Jul 5 07:16:30 gw kernel: tap5: link state changed to DOWN > Jul 5 07:16:30 gw kernel: failed > Jul 5 07:16:30 gw kernel: failed > Jul 5 07:16:30 gw kernel: sonewconn: pcb 0xfffff8002866d100 > (local:/var/run/wsgi.38620.0.1.sock): Listen queue overflow: 151 already in > queue awaiting acceptance (1 occurrences), euid 0, rgid 0, jail 0 > Jul 5 07:16:30 gw kernel: pid 3591 (bhyve), jid 0, uid 0, was killed: > failed to reclaim memory > Jul 5 07:16:30 gw kernel: pid 3591 (bhyve), jid 0, uid 0, was killed: > failed to reclaim memory > Jul 5 07:16:30 gw kernel: tap3: link state changed to DOWN > Jul 5 07:16:30 gw kernel: failed > Jul 5 07:16:30 gw kernel: out of swap space > Jul 5 07:16:30 gw kernel: failed > Jul 5 07:16:31 gw kernel: failed > Jul 5 07:16:31 gw kernel: failed > Jul 5 07:16:32 gw kernel: out of swap space > Jul 5 07:16:33 gw kernel: out of swap space > Jul 5 07:16:33 gw kernel: failed > Jul 5 07:16:33 gw kernel: failed > Jul 5 07:16:34 gw kernel: out of swap space > Jul 5 07:16:34 gw kernel: failed > Jul 5 07:16:36 gw kernel: failed > Jul 5 07:16:36 gw kernel: failed > Jul 5 07:16:36 gw kernel: failed > Jul 5 07:16:36 gw kernel: failed > Jul 5 07:16:36 gw kernel: failed > Jul 5 07:16:37 gw kernel: failed > Jul 5 07:16:37 gw kernel: failed > Jul 5 07:16:37 gw kernel: failed > Jul 5 07:16:37 gw kernel: failed > Jul 5 07:16:37 gw kernel: failed > Jul 5 07:16:37 gw kernel: failed > Jul 5 07:16:37 gw kernel: failed > Jul 5 07:16:38 gw kernel: failed > ``` > > I'm not sure but looking at the bhyve processes being killed, it reminds of an earlier issue that was solved with: `vm.disable_swapspace_pageouts=1` Cheers, David From nobody Fri Jul 5 08:47:39 2024 X-Original-To: questions@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4WFnGq4d45z5Nh7h for ; Fri, 05 Jul 2024 08:48:19 +0000 (UTC) (envelope-from odhiambo@gmail.com) Received: from mail-ot1-x32b.google.com (mail-ot1-x32b.google.com [IPv6:2607:f8b0:4864:20::32b]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "WR4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4WFnGp36ypz4kVx for ; Fri, 5 Jul 2024 08:48:18 +0000 (UTC) (envelope-from odhiambo@gmail.com) Authentication-Results: mx1.freebsd.org; none Received: by mail-ot1-x32b.google.com with SMTP id 46e09a7af769-700cc388839so922430a34.0 for ; Fri, 05 Jul 2024 01:48:18 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1720169296; x=1720774096; darn=freebsd.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=Xh/GzXDaK8LQ08aU3jK3Uv2rxUzUublcmOpMS+pOEBQ=; b=SXFob1XDI4KvpRU05hQobgdgX7xON6V0772UcUMzEGKTrCANcdphVyFcMa9kprF1Bj CJPXrJcMYveNnkneb+teRwBwQA4ELCGHIhk8fk01wl0ga35k6iAb9NCojipMk0yagKpI hKJFUrRftlTeVcBHGW5resvga/9lx/sSFwl0y8GJX+iQlgKKjn1MpRZJmFzl7p06pFIR 8YfA3tYUAlJFQceiFEtJEwGpnYRiN6b4JsVr/NUPAHjd//qNsti3k93j8dscmsQw9xQe X5xq/rLS0Q7FiaEFRO5mV33X5ebBW/dyFbrHXxDARHs1UxQO0vcuxXaWfA45uVxJkG9L WssA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1720169296; x=1720774096; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=Xh/GzXDaK8LQ08aU3jK3Uv2rxUzUublcmOpMS+pOEBQ=; b=G902p65DRUUsluJF5z4Kg5iqW1yMAyIFH0FLteuORUOMARpdgAILhQ6vZKU7VMix07 5boJWu8kFHv4AZCEBQTpQOcJevTOu/HfflD5SrLNadiTS7q7aOZLrHMX/UWgsjfl8Aji XBg7a1MHy/DRc60KRMnRJj0Z849KRvOvhQjXnRfzD3+k29CrHASjhLIy0ehfNgU8kPAT yiYZFs0F/bXDiEe0gl/j5CUD3gnOprAfoV2/dho49dJW6NR1oi4/e+ys5BALCngTrzky ktjToV4XSEL18QZEdxXnvElh5dqebIEps8NI+iuIdI2kWuYVN55UszXOWBDGtptkIP4N bvsg== X-Gm-Message-State: AOJu0YwazoLHPP4ncbVHpy6QT3VdmF18ZuQ+674QtmFmqb4ROjkRjddM BknAdjXHWDOO8k5uwU0RqPj4FrRnTAiYptMrfOzEaHPn1LeddFqyugBADNbkQ/nQV+azZvDmDfD JLbnjpFqTB/sTzQ9vI6XQNmoGOj55GcenpJg= X-Google-Smtp-Source: AGHT+IHq2s7pVcl3NjpSaZCAu99AZvzg/wMQ+uHRDdB5KE3JZv2SEjCduMR8Lw5IWfw6dgdbdJMOTwIiyeFog59BOBU= X-Received: by 2002:a05:6870:fb8b:b0:259:89a5:440e with SMTP id 586e51a60fabf-25e2bb7fb35mr3352241fac.27.1720169296199; Fri, 05 Jul 2024 01:48:16 -0700 (PDT) List-Id: User questions List-Archive: https://lists.freebsd.org/archives/freebsd-questions List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: freebsd-questions@freebsd.org Sender: owner-freebsd-questions@FreeBSD.org MIME-Version: 1.0 References: <8d2a864b-a2ad-48b7-9c52-32b2af3ceb79@takinobori.com> In-Reply-To: <8d2a864b-a2ad-48b7-9c52-32b2af3ceb79@takinobori.com> From: Odhiambo Washington Date: Fri, 5 Jul 2024 11:47:39 +0300 Message-ID: Subject: Re: Server became inaccessible because it ran out of swap space To: David Palma Cc: questions Content-Type: multipart/alternative; boundary="000000000000da8aba061c7c1f49" X-Spamd-Bar: ---- X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:15169, ipnet:2607:f8b0::/32, country:US] X-Rspamd-Queue-Id: 4WFnGp36ypz4kVx --000000000000da8aba061c7c1f49 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Fri, Jul 5, 2024 at 11:27=E2=80=AFAM David Palma wrote: > Hi, > > On 05/07/2024 07:56, Odhiambo Washington wrote: > > I have a server with 64GB RAM, 2CPUs each with 16 cores. I have also > > configured 13GB or swap space. > > > > ``` > > root@gw:/usr/local/bhyve-vms/scripts # swapinfo > > Device 1K-blocks Used Avail Capacity > > /dev/ada0p3 3163136 703316 2459820 22% > > /dev/md0.eli 10485760 709352 9776408 7% > > Total 13648896 1412668 12236228 10% > > root@gw:/usr/local/bhyve-vms/scripts # > > ``` > > > > A number of times it has become inaccessible until I do a hard reboot a= nd > > this has been caused by what I believe is running out of swap. > > > > Below is what I have obtained from /var/log/messages after I rebooted. > > > > How do I identify the culprit? Arrest the situation? > > > > > > ``` > > Jul 5 06:50:56 gw kernel: failed > > Jul 5 06:52:11 gw kernel: failed > > Jul 5 06:52:11 gw kernel: out of swap space > > Jul 5 06:52:11 gw kernel: failed > > Jul 5 06:52:11 gw kernel: failed > > Jul 5 06:52:12 gw kernel: failed > > Jul 5 06:52:12 gw kernel: failed > > Jul 5 06:54:06 gw kernel: out of swap space > > Jul 5 06:54:06 gw kernel: failed > > Jul 5 07:16:30 gw kernel: pid 4076 (bhyve), jid 0, uid 0, was killed: > > failed to reclaim memory > > Jul 5 07:16:30 gw kernel: pid 4076 (bhyve), jid 0, uid 0, was killed: > > failed to reclaim memory > > Jul 5 07:16:30 gw kernel: tap4: link state changed to DOWN > > Jul 5 07:16:30 gw kernel: out of swap space > > Jul 5 07:16:30 gw kernel: failed > > Jul 5 07:16:30 gw kernel: failed > > Jul 5 07:16:30 gw kernel: failed > > Jul 5 07:16:30 gw kernel: pid 20849 (bhyve), jid 0, uid 0, was killed: > > failed to reclaim memory > > Jul 5 07:16:30 gw kernel: pid 20849 (bhyve), jid 0, uid 0, was killed: > > failed to reclaim memory > > Jul 5 07:16:30 gw kernel: tap5: link state changed to DOWN > > Jul 5 07:16:30 gw kernel: failed > > Jul 5 07:16:30 gw kernel: failed > > Jul 5 07:16:30 gw kernel: sonewconn: pcb 0xfffff8002866d100 > > (local:/var/run/wsgi.38620.0.1.sock): Listen queue overflow: 151 alread= y > in > > queue awaiting acceptance (1 occurrences), euid 0, rgid 0, jail 0 > > Jul 5 07:16:30 gw kernel: pid 3591 (bhyve), jid 0, uid 0, was killed: > > failed to reclaim memory > > Jul 5 07:16:30 gw kernel: pid 3591 (bhyve), jid 0, uid 0, was killed: > > failed to reclaim memory > > Jul 5 07:16:30 gw kernel: tap3: link state changed to DOWN > > Jul 5 07:16:30 gw kernel: failed > > Jul 5 07:16:30 gw kernel: out of swap space > > Jul 5 07:16:30 gw kernel: failed > > Jul 5 07:16:31 gw kernel: failed > > Jul 5 07:16:31 gw kernel: failed > > Jul 5 07:16:32 gw kernel: out of swap space > > Jul 5 07:16:33 gw kernel: out of swap space > > Jul 5 07:16:33 gw kernel: failed > > Jul 5 07:16:33 gw kernel: failed > > Jul 5 07:16:34 gw kernel: out of swap space > > Jul 5 07:16:34 gw kernel: failed > > Jul 5 07:16:36 gw kernel: failed > > Jul 5 07:16:36 gw kernel: failed > > Jul 5 07:16:36 gw kernel: failed > > Jul 5 07:16:36 gw kernel: failed > > Jul 5 07:16:36 gw kernel: failed > > Jul 5 07:16:37 gw kernel: failed > > Jul 5 07:16:37 gw kernel: failed > > Jul 5 07:16:37 gw kernel: failed > > Jul 5 07:16:37 gw kernel: failed > > Jul 5 07:16:37 gw kernel: failed > > Jul 5 07:16:37 gw kernel: failed > > Jul 5 07:16:37 gw kernel: failed > > Jul 5 07:16:38 gw kernel: failed > > ``` > > > > > > I'm not sure but looking at the bhyve processes being killed, it reminds > of an earlier issue that was solved with: > > `vm.disable_swapspace_pageouts=3D1` > > Cheers, > David > Hello David, Thank you for this. Let me enable this and monitor. --=20 Best regards, Odhiambo WASHINGTON, Nairobi,KE +254 7 3200 0004/+254 7 2274 3223 In an Internet failure case, the #1 suspect is a constant: DNS. "Oh, the cruft.", egrep -v '^$|^.*#' =C2=AF\_(=E3=83=84)_/=C2=AF :-) [How to ask smart questions: http://www.catb.org/~esr/faqs/smart-questions.html] --000000000000da8aba061c7c1f49 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable


=
On Fri, Jul 5, 2024 at 11:27=E2=80=AF= AM David Palma <david.palm= a@takinobori.com> wrote:
Hi,

On 05/07/2024 07:56, Odhiambo Washington wrote:
> I have a server with 64GB RAM, 2CPUs each with 16 cores. I have also > configured 13GB or swap space.
>
> ```
> root@gw:/usr/local/bhyve-vms/scripts # swapinfo
> Device=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 1K-blocks=C2=A0 =C2=A0 =C2=A0= Used=C2=A0 =C2=A0 Avail Capacity
> /dev/ada0p3=C2=A0 =C2=A0 =C2=A0 =C2=A03163136=C2=A0 =C2=A0703316=C2=A0= 2459820=C2=A0 =C2=A0 22%
> /dev/md0.eli=C2=A0 =C2=A0 =C2=A010485760=C2=A0 =C2=A0709352=C2=A0 9776= 408=C2=A0 =C2=A0 =C2=A07%
> Total=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 13648896=C2=A0 1412668 = 12236228=C2=A0 =C2=A0 10%
> root@gw:/usr/local/bhyve-vms/scripts #
> ```
>
> A number of times it has become inaccessible until I do a hard reboot = and
> this has been caused by what I believe is running out of swap.
>
> Below is what I have obtained from /var/log/messages after I rebooted.=
>
> How do I identify the culprit? Arrest the situation?
>
>
> ```
> Jul=C2=A0 5 06:50:56 gw kernel: failed
> Jul=C2=A0 5 06:52:11 gw kernel: failed
> Jul=C2=A0 5 06:52:11 gw kernel: out of swap space
> Jul=C2=A0 5 06:52:11 gw kernel: failed
> Jul=C2=A0 5 06:52:11 gw kernel: failed
> Jul=C2=A0 5 06:52:12 gw kernel: failed
> Jul=C2=A0 5 06:52:12 gw kernel: failed
> Jul=C2=A0 5 06:54:06 gw kernel: out of swap space
> Jul=C2=A0 5 06:54:06 gw kernel: failed
> Jul=C2=A0 5 07:16:30 gw kernel: pid 4076 (bhyve), jid 0, uid 0, was ki= lled:
> failed to reclaim memory
> Jul=C2=A0 5 07:16:30 gw kernel: pid 4076 (bhyve), jid 0, uid 0, was ki= lled:
> failed to reclaim memory
> Jul=C2=A0 5 07:16:30 gw kernel: tap4: link state changed to DOWN
> Jul=C2=A0 5 07:16:30 gw kernel: out of swap space
> Jul=C2=A0 5 07:16:30 gw kernel: failed
> Jul=C2=A0 5 07:16:30 gw kernel: failed
> Jul=C2=A0 5 07:16:30 gw kernel: failed
> Jul=C2=A0 5 07:16:30 gw kernel: pid 20849 (bhyve), jid 0, uid 0, was k= illed:
> failed to reclaim memory
> Jul=C2=A0 5 07:16:30 gw kernel: pid 20849 (bhyve), jid 0, uid 0, was k= illed:
> failed to reclaim memory
> Jul=C2=A0 5 07:16:30 gw kernel: tap5: link state changed to DOWN
> Jul=C2=A0 5 07:16:30 gw kernel: failed
> Jul=C2=A0 5 07:16:30 gw kernel: failed
> Jul=C2=A0 5 07:16:30 gw kernel: sonewconn: pcb 0xfffff8002866d100
> (local:/var/run/wsgi.38620.0.1.sock): Listen queue overflow: 151 alrea= dy in
> queue awaiting acceptance (1 occurrences), euid 0, rgid 0, jail 0
> Jul=C2=A0 5 07:16:30 gw kernel: pid 3591 (bhyve), jid 0, uid 0, was ki= lled:
> failed to reclaim memory
> Jul=C2=A0 5 07:16:30 gw kernel: pid 3591 (bhyve), jid 0, uid 0, was ki= lled:
> failed to reclaim memory
> Jul=C2=A0 5 07:16:30 gw kernel: tap3: link state changed to DOWN
> Jul=C2=A0 5 07:16:30 gw kernel: failed
> Jul=C2=A0 5 07:16:30 gw kernel: out of swap space
> Jul=C2=A0 5 07:16:30 gw kernel: failed
> Jul=C2=A0 5 07:16:31 gw kernel: failed
> Jul=C2=A0 5 07:16:31 gw kernel: failed
> Jul=C2=A0 5 07:16:32 gw kernel: out of swap space
> Jul=C2=A0 5 07:16:33 gw kernel: out of swap space
> Jul=C2=A0 5 07:16:33 gw kernel: failed
> Jul=C2=A0 5 07:16:33 gw kernel: failed
> Jul=C2=A0 5 07:16:34 gw kernel: out of swap space
> Jul=C2=A0 5 07:16:34 gw kernel: failed
> Jul=C2=A0 5 07:16:36 gw kernel: failed
> Jul=C2=A0 5 07:16:36 gw kernel: failed
> Jul=C2=A0 5 07:16:36 gw kernel: failed
> Jul=C2=A0 5 07:16:36 gw kernel: failed
> Jul=C2=A0 5 07:16:36 gw kernel: failed
> Jul=C2=A0 5 07:16:37 gw kernel: failed
> Jul=C2=A0 5 07:16:37 gw kernel: failed
> Jul=C2=A0 5 07:16:37 gw kernel: failed
> Jul=C2=A0 5 07:16:37 gw kernel: failed
> Jul=C2=A0 5 07:16:37 gw kernel: failed
> Jul=C2=A0 5 07:16:37 gw kernel: failed
> Jul=C2=A0 5 07:16:37 gw kernel: failed
> Jul=C2=A0 5 07:16:38 gw kernel: failed
> ```
>
>

I'm not sure but looking at the bhyve processes being killed, it remind= s
of an earlier issue that was solved with:

`vm.disable_swapspace_pageouts=3D1`

Cheers,
David

Hello David,

=
Thank you for this.

Let me enable this and mo= nitor.=C2=A0


--
Best regards,
Odhiambo WASHING= TON,
Nairobi,KE
+254 7 3200 0004/+254 7 2274 3223
=C2=A0In=C2=A0an Internet failure case, the #1 suspect is a constant: DNS.
"Oh, the cruft.",=C2=A0egrep -v '^$|^.*#'=C2=A0=C2=AF\_(=E3=83= =84)_/=C2=AF=C2=A0:-)
<= div>[How to ask smart questions:=C2=A0http://www.catb.org/~esr/faqs/sma= rt-questions.html]
--000000000000da8aba061c7c1f49-- From nobody Fri Jul 5 08:57:19 2024 X-Original-To: questions@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4WFnTP15Qcz5NjNn for ; Fri, 05 Jul 2024 08:57:29 +0000 (UTC) (envelope-from mirror176@hotmail.com) Received: from NAM10-DM6-obe.outbound.protection.outlook.com (mail-dm6nam10acsn20805.outbound.protection.outlook.com [IPv6:2a01:111:f400:7e88::805]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "mail.protection.outlook.com", Issuer "DigiCert Cloud Services CA-1" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4WFnTN0Tlsz4lxj for ; Fri, 5 Jul 2024 08:57:28 +0000 (UTC) (envelope-from mirror176@hotmail.com) Authentication-Results: mx1.freebsd.org; dkim=pass header.d=hotmail.com header.s=selector1 header.b=YDtA2JMK; dmarc=pass (policy=none) header.from=hotmail.com; spf=pass (mx1.freebsd.org: domain of mirror176@hotmail.com designates 2a01:111:f400:7e88::805 as permitted sender) smtp.mailfrom=mirror176@hotmail.com; arc=pass ("microsoft.com:s=arcselector9901:i=1") ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=hZwWxZ278Q9OW8nk5C6AUIx8yFHq/X710pzGtNpiu3G6XchWtWsbTQE9t1cw3WR3fr8vX4Qh0c8BrMd8sT77XcA3yCh5UIHBGYGZ6Sawsh3ktW9yppa/RlHlzx1nflhSBBZYb96BVEPgSwAZ+vq97sU1R0WiioUu2Bg85ttm66wZSuXG3syhCRROtWD/Ci/loFE6TKuNFosfnzNfHZd4dFkTt03D3TKSlINthpeg7N9NcLADWhACLlGcDHSE/nU32gp46Zm32MKDGZUqHgdrpedJYl7O91fTHVpZ6hUbQNRtyKBCaHh+cqmfIYnzLNKV1r69U2qNN87+k+0SG+OzHw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=ke6TFHuJwxwpnB6wYwbnu0kW08YpkKbk2onIKWHvlcY=; b=Ts3vxc2MAIFexUAAE3BE8SYe1JaNp1IR7ogunx3c7XGaxqzqxgOdYjiDl6MQAVTXP6PWcVMiLgibxeptS2wqA2qxa4ZH7ZQzZI7DRr2nKGfeHo1qm0BqJd1+MzQDaVBkLMd9InwLi0SXuTfjCJBN1qphkBJHLPAxlSMZMfaB9t2rbItj+7VuqkRbq6uLNNwP+V5DD9ZYhHwWzB1V928PX95fG9hDAlhna/r6QCXUEuuAwoUSQwld7nfyHoheaR66CBKypqlKMIrk+liLKkEQ85rh+tFqq1l8zcEqo24A3oGXsAkCy5mtYfSZADCZd0B+iknsLwRQ/JTVAHaWn2NrCQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=hotmail.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ke6TFHuJwxwpnB6wYwbnu0kW08YpkKbk2onIKWHvlcY=; b=YDtA2JMKo+Hlyb/nQ8uNnoBkw5Np3NUTsXl1ggwHnvIJ+UAhoomm4VNOl4TKwl/tD7avrGttWLuPbmrxKDAX7/5cw1LR4pDceN2suPjxb1snIgeLFsgOyXZ06H9Mfqf2EKMMbi0aTryZ5R6RF4qw1SIiDJzG3iAupMLGwnLYqCdUUvVeS/m5Z0UsIQRCturuNCvxZwVNq376Gx5kOMxmcWQe0CM0QVWsM8ZOjQVoBZ5K0U5USK08y0AxW/D73bANqxHnyOppay/wE86c9qhi5ttxjtuh2pffvVXWfyy81hGC7SV8AKYZdnj7a4MDOppEsJ8hoENfJC4c6sDwjVGbNw== Received: from CO1PR11MB4770.namprd11.prod.outlook.com (2603:10b6:303:94::19) by BL3PR11MB6457.namprd11.prod.outlook.com (2603:10b6:208:3bc::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7719.29; Fri, 5 Jul 2024 08:57:23 +0000 Received: from CO1PR11MB4770.namprd11.prod.outlook.com ([fe80::bffd:9e35:4afa:a747]) by CO1PR11MB4770.namprd11.prod.outlook.com ([fe80::bffd:9e35:4afa:a747%4]) with mapi id 15.20.7719.029; Fri, 5 Jul 2024 08:57:22 +0000 Message-ID: Date: Fri, 5 Jul 2024 01:57:19 -0700 User-Agent: Mozilla Thunderbird Subject: Re: Setting default version in Poudriere To: questions@freebsd.org References: Content-Language: en-US From: "Edward Sanford Sutton, III" In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-TMN: [7W/viIcG4zh3on/2fIK49etnkymyuD+t] X-ClientProxiedBy: BL1PR13CA0361.namprd13.prod.outlook.com (2603:10b6:208:2c0::6) To CO1PR11MB4770.namprd11.prod.outlook.com (2603:10b6:303:94::19) X-Microsoft-Original-Message-ID: List-Id: User questions List-Archive: https://lists.freebsd.org/archives/freebsd-questions List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: freebsd-questions@freebsd.org Sender: owner-freebsd-questions@FreeBSD.org MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1PR11MB4770:EE_|BL3PR11MB6457:EE_ X-MS-Office365-Filtering-Correlation-Id: 0e88073f-a412-47da-1441-08dc9cd07bcc X-Microsoft-Antispam: BCL:0;ARA:14566002|19110799003|461199028|8060799006|56899033|3412199025|440099028; X-Microsoft-Antispam-Message-Info: Gqd73P/QgF4oT6OSagp9aca14oJMEI+JUsqqMcB/nbe5DGaC1ixPvRuFDil0yuyGbnki5ehxSnF3M1cE7GZfIkGlvU4twgKYt20voyS9qo/VQBaL9YhKfUQIx8Kz0uoYJe7LVyjD2bIose5uskMXXKiSxde7VFDbpTJkDjYB9zyvSHB9RENKV8Mn27MFHVDr/7H50spuFwwQ6WBS8Q8UpyVUUSl86j4ucV/l0CmRiEh7yreG2tRfI8qtDhc+9GpWyIXP6BlALzktr/ot8BJDzhBzlXmzfYuHPG8xpvTiv1ksDjctumqt6WbKpwJqRpPTsp15wz55iLOtyYZ6EMnUgkQMYZ6sqPmbmqdrnuDUUiLFzxNb6CyQeR2c2lMzv0KeHnXHU+iQnJx6Hm1rZCwTUhc9RmnBr2hP6stC/aYF+ypgXZUWnJMXpivqB6MPY7gUipOcm4WlILX6/OojhiwbN5iZPD0taI+QkBRzFFv/INvwVZRxTpVcUWqY5gp9uugIibWd34GNz7gfgR77/Z5JK/gAgPMV+Z7eRFCtUoocun5ML7iAY5yw8GSdDyEcey7HO28qlErULi8xxBTGrhcoNsjfJ4KI7JuAeOJD2w37HbzK5wUI83lv1ZviBSS11gWE4QgHqfGpX5BAQaV9Sk6UNA== X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?L29FSzVLR1BoRDV1cWU3a3gvTCtsakg1WVoyNG1kR0JXNjRYQzNuME14ZWsw?= =?utf-8?B?SUdNTzkrL2ZTMXNiTWhZUzdVZzJEaVFod1FDU2grM3pmVStxZHY3NU1qUDRo?= =?utf-8?B?bE9KS0hlVmZ1TkdkcWpiQkZSNENKMlhQdkxacVhJTG9DZHdlQzN5aVBKS0pq?= =?utf-8?B?SnJ0RWs3RW9TU3piMndYWW50TGJrNWwySUp1MHp0aDlCNlFtVll3cjlybjBD?= =?utf-8?B?b0lpbDJteTluaE4rYUp3cTVzdmg5dGFUZHFNdHN0VURRMFJWU2ovMFM3MjBT?= =?utf-8?B?eS95UzJHc1dZRkJvK3VUazNPUUhhM0lCUFpVQXJmZ0x0L05kc0lUYnlTdmpD?= =?utf-8?B?cUFXWmIwYzFaTkVLS3lHaHBPdUlaUDF0WUZxOUp4ZDJ6WkxCb1IzK2IvaStV?= =?utf-8?B?TmwyVTVCKzFhSnJkTmdrMVdWSzJRWHRVVy9NUXFGZEo2Y3dMSk5wWFcvcnp4?= =?utf-8?B?UG5la1hwQTIxUUo2TjdhUEMrN3RHSGUwbzA1UnlGZE40bGx4MHJ5Z0tMclBn?= =?utf-8?B?LzBCTEJvZzRvR0lGaU5hYk5ZeFhjanppNmlXOXdGVi83ZGtSODU2emZPdk9u?= =?utf-8?B?R0tIbEY4MHdBYWthTUFreXJvUnR5T2JYb090dUYvQXMyV1lVRzBaOFhOTVc1?= =?utf-8?B?U3JsTFN5cnE5aTNWRGNUTUljTUdmQysvRjVsMjJrTitLUEJvZXU2RjJYU2ZN?= =?utf-8?B?aW5mWExHaGo1Tlp5WWpyMlI0YkZXOUsvN0NMdExZL0ljekFxUmM0SEN3Y244?= =?utf-8?B?L2crMmJDSXVEZVZUcWlNNFg2eE1oblFpcUl1SlUwRnhzdUJ0Rlp3RzNzaTFz?= =?utf-8?B?TmVEYUxURVdhSTVWYjJoNG9Ca2hxbklrRDVmRXVVNDl6YVdEVXZ0M0pUeGhB?= =?utf-8?B?ZnJ3akRncW9sVDY5dGJ0MGIyNXNabFg5Wmh5NGdTa3N0RkFBaVp1WjMrTnU5?= =?utf-8?B?cmdGSTh6dEthbUZLMkpYcjI3VG1SM25MMmRIamQxMTVMajV4TE9hUzVEeEg3?= =?utf-8?B?clZQaTZPNEpZYlo2dEUzT2FHMWhoVStNamxXSjdhb1dmSkFqY09yc3hENCtT?= =?utf-8?B?MWdIMGN3ZTIvUXZSZm9oZDNTK2pWcXlaUWI2QUVpMUxYejRNbVRNei9ONmVW?= =?utf-8?B?WlZlWFlGakJCdEN3Rm9rN0V1WEJ4RDlNMzRZOEkxNnJjT0hweXBkdUpXTVpv?= =?utf-8?B?UE5TeEIrckZDdFpTR0hyeGJTWnZEb3BhRHl2NFoyTEROTHoxWUZkOGRqWmdx?= =?utf-8?B?V1owelJhZ3liUTVzUHNCK3pabm1Tc01iNERscEpvd0dFeUhRUzZpMGxmTHZq?= =?utf-8?B?U0FrZTN0b2xOMVlLREhwRG5YRDlaSmRzemJ0ckxjVzdhSlliM3F4UnkvMVpB?= =?utf-8?B?ZGROL2kxenpiczVsdSsvc2ZPWHdvNjRDYURGcFRuczNEUWxCekFuMmlGY21m?= =?utf-8?B?N0pvcCtWcVVoalMzTmZrZEJOaDZMSU93WjVHUDFVUThJMDhLbkg4UGlYZnBz?= =?utf-8?B?V0g0UWZCSktiTEN4dXhHVjdFTkxRdS9hNzcvV0wyZUQ4V2c2VmcwazVIcVF2?= =?utf-8?B?NTVnbVNEcTJlVjVCNWk5eERKOUhDYUo0dU5heVRJaVdWOHNJVVo4UnJ1S0h1?= =?utf-8?Q?gGrIGs4NQP6HyAnPTo/vJ/AxjJgotMyxIWfasbHx3ELI=3D?= X-OriginatorOrg: sct-15-20-4755-11-msonline-outlook-e8f36.templateTenant X-MS-Exchange-CrossTenant-Network-Message-Id: 0e88073f-a412-47da-1441-08dc9cd07bcc X-MS-Exchange-CrossTenant-AuthSource: CO1PR11MB4770.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Jul 2024 08:57:22.7650 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL3PR11MB6457 X-Spamd-Bar: - X-Spamd-Result: default: False [-1.38 / 15.00]; FORGED_MUA_THUNDERBIRD_MSGID_UNKNOWN(2.50)[]; NEURAL_HAM_LONG(-1.00)[-1.000]; ARC_ALLOW(-1.00)[microsoft.com:s=arcselector9901:i=1]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; DMARC_POLICY_ALLOW(-0.50)[hotmail.com,none]; R_SPF_ALLOW(-0.20)[+ip6:2a01:111:f400::/48]; R_DKIM_ALLOW(-0.20)[hotmail.com:s=selector1]; NEURAL_SPAM_SHORT(0.11)[0.109]; MIME_GOOD(-0.10)[text/plain]; XM_UA_NO_VERSION(0.01)[]; MIME_TRACE(0.00)[0:+]; FREEMAIL_FROM(0.00)[hotmail.com]; FREEMAIL_ENVFROM(0.00)[hotmail.com]; DWL_DNSWL_NONE(0.00)[hotmail.com:dkim]; ASN(0.00)[asn:8075, ipnet:2a01:111:f000::/36, country:US]; RCPT_COUNT_ONE(0.00)[1]; FROM_HAS_DN(0.00)[]; FROM_EQ_ENVFROM(0.00)[]; TO_MATCH_ENVRCPT_ALL(0.00)[]; RCVD_TLS_LAST(0.00)[]; TO_DN_NONE(0.00)[]; RCVD_COUNT_TWO(0.00)[2]; MLMMJ_DEST(0.00)[questions@freebsd.org]; DKIM_TRACE(0.00)[hotmail.com:+] X-Rspamd-Queue-Id: 4WFnTN0Tlsz4lxj On 7/4/24 13:57, Pat wrote: > Hello, > > Got a couple of rather silly question, but I can't find a definitive > answer to either. > > If I build PostgreSQL15-server, I get version 15.7. That is the latest > version, so not unexpected. > > I would like to build version 15.6. Ideally I would like to have both > versions available because for the most part I want to install 15.7, but > I need 15.6 at the moment. > > So my questions are: > How do I configure things to have both versions available? > If that is not possible, how do I set the default to be 15.6 for now, > with the intent of undoing that after my testing? There is only one port for version 15; to use 15.6 you need a copy of the ports tree with any git commit from 6fa897631d45dd11a5b1fcea5993590f9ccbef48 to before ade1c57e3a72ec9c4a7c02ce28dbfbd5efcce373 (probably de67baaee9ffaf88fa80dcda1f89d83df424d0a4 but I'm bad at sorting through git hashes). You could also manually patch the tree to have an older copy in place of the newer one. With poudriere, you can have multiple ports trees which once created you can then select for tasks such as `poudriere bulk -j 14 -p outdated databases/postgresql15-server` I'm not sure how easily you can have just a directory separate from the ports tree for poudriere to use in a port's place but tools such as ports-mgmt/portdowngrade may simplify the process for downgrading the port but I haven't tried it since git. If you want both versions available simultaneously from 1 poudriere run, I presume you need to add a new unique tree entry that is a copy of 15.6 under its own named path and add it to databaes's Makefile. If you are just doing some a/b testing where you want to keep bouncing back and forth, I'd just have the tree with the old version as a separate ports tree and do the poudriere build of it and the updated version as 2 separate repos then change which one pkg looks at and (force?) installation of packages for each test. > Thanks, > Pat From nobody Fri Jul 5 11:05:22 2024 X-Original-To: freebsd-questions@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4WFrK51JMgz5P2qV for ; Fri, 05 Jul 2024 11:05:29 +0000 (UTC) (envelope-from ml@netfence.it) Received: from soth.netfence.it (mailserver.netfence.it [78.134.96.152]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "mailserver.netfence.it", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4WFrK41JRNz4yyR for ; Fri, 5 Jul 2024 11:05:28 +0000 (UTC) (envelope-from ml@netfence.it) Authentication-Results: mx1.freebsd.org; dkim=none; dmarc=pass (policy=none) header.from=netfence.it; spf=pass (mx1.freebsd.org: domain of ml@netfence.it designates 78.134.96.152 as permitted sender) smtp.mailfrom=ml@netfence.it Received: from [10.1.2.18] (mailserver.netfence.it [78.134.96.152]) (authenticated bits=0) by soth.netfence.it (8.18.1/8.17.2) with ESMTPSA id 465B5MWS015176 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NO) for ; Fri, 5 Jul 2024 13:05:23 +0200 (CEST) (envelope-from ml@netfence.it) X-Authentication-Warning: soth.netfence.it: Host mailserver.netfence.it [78.134.96.152] claimed to be [10.1.2.18] Message-ID: Date: Fri, 5 Jul 2024 13:05:22 +0200 List-Id: User questions List-Archive: https://lists.freebsd.org/archives/freebsd-questions List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: freebsd-questions@freebsd.org Sender: owner-freebsd-questions@FreeBSD.org MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: AirPrint printer [solved] Content-Language: en-US From: Andrea Venturoli To: freebsd-questions@freebsd.org References: In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Scanned-By: MIMEDefang 2.86 X-Spamd-Bar: --- X-Spamd-Result: default: False [-3.58 / 15.00]; NEURAL_HAM_LONG(-1.00)[-1.000]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; NEURAL_HAM_SHORT(-0.79)[-0.793]; DMARC_POLICY_ALLOW(-0.50)[netfence.it,none]; R_SPF_ALLOW(-0.20)[+ip4:78.134.96.152]; MIME_GOOD(-0.10)[text/plain]; XM_UA_NO_VERSION(0.01)[]; RCVD_VIA_SMTP_AUTH(0.00)[]; ASN(0.00)[asn:35612, ipnet:78.134.0.0/17, country:IT]; RCPT_COUNT_ONE(0.00)[1]; MIME_TRACE(0.00)[0:+]; RCVD_COUNT_ONE(0.00)[1]; RCVD_TLS_ALL(0.00)[]; R_DKIM_NA(0.00)[]; MLMMJ_DEST(0.00)[freebsd-questions@freebsd.org]; FROM_HAS_DN(0.00)[]; HAS_XAW(0.00)[]; MID_RHS_MATCH_FROM(0.00)[]; FROM_EQ_ENVFROM(0.00)[]; TO_MATCH_ENVRCPT_ALL(0.00)[]; TO_DN_NONE(0.00)[]; PREVIOUSLY_DELIVERED(0.00)[freebsd-questions@freebsd.org]; ARC_NA(0.00)[] X-Rspamd-Queue-Id: 4WFrK41JRNz4yyR On 6/7/24 08:56, Andrea Venturoli wrote: > Hello. > > I'm evaluating a Brother DCP-L2660DW printer/scanner. > On OpenPrinting it's deemed as a "Driverless printer" implementing the > AirPrint standard. > > My understanding is that CUPS will handle it natively without any hassle. > Is this correct? > > Details: > _ the printer will be installed via LAN cable; > _ I'm not interested in sharing this printer to other devices via > CUPS/Samba/whatever as other devices will eventually connect directly to > the printer; > _ it should support scanning via SMTP, so I won't need to manage > scanning from the clients. > > Any experience? Just to report: I bought the printer and it would work only with a driver. Then I read: https://loga.us/2020/09/02/avahi-in-freebsd/ After accepting I neede Avahi & co and following that tutorial, everything started working properly. bye av. From nobody Fri Jul 5 19:40:56 2024 X-Original-To: questions@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4WG3m03vP8z5QJTb for ; Fri, 05 Jul 2024 19:41:04 +0000 (UTC) (envelope-from cli_junkie@protonmail.com) Received: from mail-40131.protonmail.ch (mail-40131.protonmail.ch [185.70.40.131]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "protonmail.com", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4WG3ly6lCyz4kM8 for ; Fri, 5 Jul 2024 19:41:02 +0000 (UTC) (envelope-from cli_junkie@protonmail.com) Authentication-Results: mx1.freebsd.org; dkim=pass header.d=protonmail.com header.s=protonmail3 header.b=qGvWfGf8; dmarc=pass (policy=quarantine) header.from=protonmail.com; spf=pass (mx1.freebsd.org: domain of cli_junkie@protonmail.com designates 185.70.40.131 as permitted sender) smtp.mailfrom=cli_junkie@protonmail.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=protonmail.com; s=protonmail3; t=1720208460; x=1720467660; bh=3rx0Tyg9CKnLboVbau11gd7PypAdnOeCPAAfHZSm/1o=; h=Date:To:From:Subject:Message-ID:In-Reply-To:References: Feedback-ID:From:To:Cc:Date:Subject:Reply-To:Feedback-ID: Message-ID:BIMI-Selector; b=qGvWfGf8RgW/9C8sxKPILfX4F21X1/YdSI09Hivqu5/8DrUSCEEA3ARgZA/tXAG2L 08dEkZBg+AxoeOuROC8NHidIaxsZW0zE7Sk2cskH+0CrlHB42PQUggp9iNKGFH/+4D LUSjVi96E/aGWy1Ag2C2dI8+Qgb+kKU8vgR+VwF55FdXm0jUsMirPccxEcljFaYKQM YB7K91jOcCdrACA5rvYoYeXO6SnqGqNvMpgf+o10qqz2SGGjhJ0Trel+8FbzbZFFS0 tRDUYMh4HKjzYStXf9Kklu5p6k5zIwco7+dDdsOZ8smV4mRgVEIvW/DuztKR6OkKcj 1QFTFp+0HAeKw== Date: Fri, 05 Jul 2024 19:40:56 +0000 To: "questions@freebsd.org" From: Pat Subject: Re: Setting default version in Poudriere Message-ID: In-Reply-To: References: Feedback-ID: 34340203:user:proton X-Pm-Message-ID: 9e14cba2a32d779a29f8e945f78f246c568e91a6 List-Id: User questions List-Archive: https://lists.freebsd.org/archives/freebsd-questions List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: freebsd-questions@freebsd.org Sender: owner-freebsd-questions@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spamd-Bar: ---- X-Spamd-Result: default: False [-4.09 / 15.00]; NEURAL_HAM_LONG(-1.00)[-1.000]; NEURAL_HAM_MEDIUM(-1.00)[-0.998]; NEURAL_HAM_SHORT(-1.00)[-0.996]; DMARC_POLICY_ALLOW(-0.50)[protonmail.com,quarantine]; R_SPF_ALLOW(-0.20)[+ip4:185.70.40.0/24]; R_DKIM_ALLOW(-0.20)[protonmail.com:s=protonmail3]; MIME_GOOD(-0.10)[text/plain]; RWL_MAILSPIKE_GOOD(-0.10)[185.70.40.131:from]; ASN(0.00)[asn:62371, ipnet:185.70.40.0/24, country:CH]; ARC_NA(0.00)[]; MIME_TRACE(0.00)[0:+]; RCVD_IN_DNSWL_NONE(0.00)[185.70.40.131:from]; MISSING_XM_UA(0.00)[]; FREEMAIL_ENVFROM(0.00)[protonmail.com]; FREEMAIL_FROM(0.00)[protonmail.com]; RCPT_COUNT_ONE(0.00)[1]; RCVD_COUNT_ZERO(0.00)[0]; MLMMJ_DEST(0.00)[questions@freebsd.org]; FROM_HAS_DN(0.00)[]; MID_RHS_MATCH_FROM(0.00)[]; FROM_EQ_ENVFROM(0.00)[]; TO_MATCH_ENVRCPT_ALL(0.00)[]; TO_DN_EQ_ADDR_ALL(0.00)[]; DKIM_TRACE(0.00)[protonmail.com:+] X-Rspamd-Queue-Id: 4WG3ly6lCyz4kM8 On Friday, July 5th, 2024 at 08:57, Edward Sanford Sutton, III wrote: >=20 >=20 > On 7/4/24 13:57, Pat wrote: >=20 > > Hello, > >=20 > > Got a couple of rather silly question, but I can't find a definitive > > answer to either. > >=20 > > If I build PostgreSQL15-server, I get version 15.7. That is the latest > > version, so not unexpected. > >=20 > > I would like to build version 15.6. Ideally I would like to have both > > versions available because for the most part I want to install 15.7, bu= t > > I need 15.6 at the moment. > >=20 > > So my questions are: > > How do I configure things to have both versions available? > > If that is not possible, how do I set the default to be 15.6 for now, > > with the intent of undoing that after my testing? >=20 >=20 > There is only one port for version 15; to use 15.6 you need a copy of > the ports tree with any git commit from > 6fa897631d45dd11a5b1fcea5993590f9ccbef48 to before > ade1c57e3a72ec9c4a7c02ce28dbfbd5efcce373 (probably > de67baaee9ffaf88fa80dcda1f89d83df424d0a4 but I'm bad at sorting through > git hashes). You could also manually patch the tree to have an older > copy in place of the newer one. Thanks for taking the time to reply, and pinning to a specific commit is in line with some of the information that I found, in particular in the FreeBSD forums. But that leads to another question. I haven't done a lot with git in some time, but I am familiar with the basics. I seem to recall that in order to identify a directory as a git repo there should be a .git directory and a few other git related items. I do not see any of that in any of the ports directories. For instance: ls /usr/local/poudriere/ports/default/databases/postgresql15-server total 259 drwxr-xr-x 3 root wheel 13 May 16 13:07 ./ drwxr-xr-x 1085 root wheel 1086 Jun 24 20:19 ../ -rw-r--r-- 1 root wheel 801 May 16 13:07 Makefile -rw-r--r-- 1 root wheel 187 May 16 13:07 distinfo drwxr-xr-x 2 root wheel 18 May 16 13:07 files/ -rw-r--r-- 1 root wheel 1238 Mar 1 11:12 pkg-descr -rw-r--r-- 1 root wheel 482 Mar 1 11:12 pkg-install-server -rw-r--r-- 1 root wheel 58816 Mar 1 11:12 pkg-plist-client -rw-r--r-- 1 root wheel 10763 Mar 1 11:12 pkg-plist-contrib -rw-r--r-- 1 root wheel 979 Mar 1 11:12 pkg-plist-plperl -rw-r--r-- 1 root wheel 1389 Mar 1 11:12 pkg-plist-plpython -rw-r--r-- 1 root wheel 197 Mar 1 11:12 pkg-plist-pltcl -rw-r--r-- 1 root wheel 89992 May 16 13:07 pkg-plist-server Is that the right tree, or should I be looking elsewhere? I'm just not sure where run the git commands from. If I knew that I might could figure the rest out from there. > With poudriere, you can have multiple ports trees which once created > you can then select for tasks such as `poudriere bulk -j 14 -p outdated d= atabases/postgresql15-server` > I'm not sure how easily you can have just a directory separate from > the ports tree for poudriere to use in a port's place but tools such as > ports-mgmt/portdowngrade may simplify the process for downgrading the > port but I haven't tried it since git. > If you want both versions available simultaneously from 1 poudriere > run, I presume you need to add a new unique tree entry that is a copy of > 15.6 under its own named path and add it to databaes's Makefile. If you > are just doing some a/b testing where you want to keep bouncing back and > forth, I'd just have the tree with the old version as a separate ports > tree and do the poudriere build of it and the updated version as 2 > separate repos then change which one pkg looks at and (force?) > installation of packages for each test. Yeah, my intent here is to do some simple a/b testing prior to a production upgrade. I think the easiest option is to just create two jails, one at the current level, and one at 15.6. I just need to figure out the pinning part and I'm probably good. >=20 > > Thanks, > > Pat >=20 > From nobody Fri Jul 5 21:14:54 2024 X-Original-To: questions@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4WG5rR4tGDz5QW1F for ; Fri, 05 Jul 2024 21:15:03 +0000 (UTC) (envelope-from lysfjord.daniel@smokepit.net) Received: from smtp-out.smokepit.net (smtp-out.smokepit.net [18.200.56.156]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp-out.smokepit.net", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4WG5rR31h9z4t7f for ; Fri, 5 Jul 2024 21:15:03 +0000 (UTC) (envelope-from lysfjord.daniel@smokepit.net) Authentication-Results: mx1.freebsd.org; none DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=smokepit.net; s=loke; h=Content-Transfer-Encoding:Content-Type:Message-ID: References:In-Reply-To:Subject:Cc:To:From:Date:MIME-Version:Sender:Reply-To: Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender: Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe: List-Subscribe:List-Post:List-Owner:List-Archive; bh=9G2+vIq7pGNxLgcH1TTIkWtXs5Jtzu0MWFIVZ8Sk35E=; b=d9Iz/q6/w+9eVybBP9mJRzprJw vQebdxIvv3uh5Cu2vOIP1sNm7Xig+WqvqSQdxsUr5L0F4oYKjcHtV5uK1gLlTqTFc5/8TBUn7V5Kb iGvz7FGb0MAdkgTO4axo6wZAURHS7EhTqki1e56iuHMA9qIPsxecmE0E4UanumbcFm3M=; Received: from ti0005a400-1212.bb.online.no ([80.212.65.198] helo=smokepit.net) by smtp-out.smokepit.net with esmtpsa (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.93) (envelope-from ) id 1sPqGd-0002ST-Pr; Fri, 05 Jul 2024 21:14:55 +0000 Received: from httpd.lan.smokepit.net ([10.0.3.114] helo=webmail.smokepit.net) by smokepit.net with esmtpsa (TLS1.3) tls TLS_AES_256_GCM_SHA384 (Exim 4.97.1 (FreeBSD)) (envelope-from ) id 1sPqGd-000000003KE-1zLK; Fri, 05 Jul 2024 23:14:55 +0200 List-Id: User questions List-Archive: https://lists.freebsd.org/archives/freebsd-questions List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: freebsd-questions@freebsd.org Sender: owner-freebsd-questions@FreeBSD.org MIME-Version: 1.0 Date: Fri, 05 Jul 2024 23:14:54 +0200 From: Daniel Lysfjord To: Pat Cc: questions@freebsd.org Subject: Re: Setting default version in Poudriere In-Reply-To: References: Message-ID: <2a09efe671bc45d93f84ff69269e4388@smokepit.net> X-Sender: lysfjord.daniel@smokepit.net Content-Type: text/plain; charset=US-ASCII; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Report: Action: no action Symbol: FREEMAIL_ENVRCPT(0.00) Symbol: FROM_HAS_DN(0.00) Symbol: FROM_EQ_ENVFROM(0.00) Symbol: RCVD_TLS_ALL(0.00) Symbol: BAYES_HAM(-3.00) Symbol: TO_MATCH_ENVRCPT_ALL(0.00) Symbol: MIME_GOOD(-0.10) Symbol: RCPT_COUNT_TWO(0.00) Symbol: MID_RHS_MATCH_FROM(0.00) Symbol: FREEMAIL_TO(0.00) Symbol: RCVD_VIA_SMTP_AUTH(0.00) Symbol: ARC_NA(0.00) Symbol: MISSING_XM_UA(0.00) Symbol: RCVD_COUNT_ONE(0.00) Symbol: MIME_TRACE(0.00) Symbol: TO_DN_SOME(0.00) Message-ID: 2a09efe671bc45d93f84ff69269e4388@smokepit.net X-Spamd-Bar: ---- X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:16509, ipnet:18.200.0.0/16, country:US] X-Rspamd-Queue-Id: 4WG5rR31h9z4t7f On 2024-07-05 21:40, Pat wrote: > On Friday, July 5th, 2024 at 08:57, Edward Sanford Sutton, III > wrote: > >> >> >> On 7/4/24 13:57, Pat wrote: >> >> > Hello, >> > >> > Got a couple of rather silly question, but I can't find a definitive >> > answer to either. >> > >> > If I build PostgreSQL15-server, I get version 15.7. That is the latest >> > version, so not unexpected. >> > >> > I would like to build version 15.6. Ideally I would like to have both >> > versions available because for the most part I want to install 15.7, but >> > I need 15.6 at the moment. >> > >> > So my questions are: >> > How do I configure things to have both versions available? >> > If that is not possible, how do I set the default to be 15.6 for now, >> > with the intent of undoing that after my testing? >> >> >> There is only one port for version 15; to use 15.6 you need a copy of >> the ports tree with any git commit from >> 6fa897631d45dd11a5b1fcea5993590f9ccbef48 to before >> ade1c57e3a72ec9c4a7c02ce28dbfbd5efcce373 (probably >> de67baaee9ffaf88fa80dcda1f89d83df424d0a4 but I'm bad at sorting >> through >> git hashes). You could also manually patch the tree to have an older >> copy in place of the newer one. > > Thanks for taking the time to reply, and pinning to a specific commit > is in line with some of the information that I found, in particular > in the FreeBSD forums. But that leads to another question. > > I haven't done a lot with git in some time, but I am familiar with the > basics. I seem to recall that in order to identify a directory as a > git repo there should be a .git directory and a few other git related > items. I do not see any of that in any of the ports directories. For > instance: > > ls /usr/local/poudriere/ports/default/databases/postgresql15-server > total 259 > drwxr-xr-x 3 root wheel 13 May 16 13:07 ./ > drwxr-xr-x 1085 root wheel 1086 Jun 24 20:19 ../ > -rw-r--r-- 1 root wheel 801 May 16 13:07 Makefile > -rw-r--r-- 1 root wheel 187 May 16 13:07 distinfo > drwxr-xr-x 2 root wheel 18 May 16 13:07 files/ > -rw-r--r-- 1 root wheel 1238 Mar 1 11:12 pkg-descr > -rw-r--r-- 1 root wheel 482 Mar 1 11:12 pkg-install-server > -rw-r--r-- 1 root wheel 58816 Mar 1 11:12 pkg-plist-client > -rw-r--r-- 1 root wheel 10763 Mar 1 11:12 pkg-plist-contrib > -rw-r--r-- 1 root wheel 979 Mar 1 11:12 pkg-plist-plperl > -rw-r--r-- 1 root wheel 1389 Mar 1 11:12 pkg-plist-plpython > -rw-r--r-- 1 root wheel 197 Mar 1 11:12 pkg-plist-pltcl > -rw-r--r-- 1 root wheel 89992 May 16 13:07 pkg-plist-server > > Is that the right tree, or should I be looking elsewhere? I'm just > not sure where run the git commands from. If I knew that I might > could figure the rest out from there. > >> With poudriere, you can have multiple ports trees which once created >> you can then select for tasks such as `poudriere bulk -j 14 -p >> outdated databases/postgresql15-server` >> I'm not sure how easily you can have just a directory separate from >> the ports tree for poudriere to use in a port's place but tools such >> as >> ports-mgmt/portdowngrade may simplify the process for downgrading the >> port but I haven't tried it since git. >> If you want both versions available simultaneously from 1 poudriere >> run, I presume you need to add a new unique tree entry that is a copy >> of >> 15.6 under its own named path and add it to databaes's Makefile. If >> you >> are just doing some a/b testing where you want to keep bouncing back >> and >> forth, I'd just have the tree with the old version as a separate ports >> tree and do the poudriere build of it and the updated version as 2 >> separate repos then change which one pkg looks at and (force?) >> installation of packages for each test. > > Yeah, my intent here is to do some simple a/b testing prior to a > production upgrade. I think the easiest option is to just create > two jails, one at the current level, and one at 15.6. I just need to > figure out the pinning part and I'm probably good. > >> >> > Thanks, >> > Pat >> >> I would suggest just creating a port for postgres 15.6 in addition to the 15.7 that's already in the ports tree From nobody Sat Jul 6 01:47:55 2024 X-Original-To: freebsd-questions@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4WGCvZ1zgkz5P9lj for ; Sat, 06 Jul 2024 01:48:10 +0000 (UTC) (envelope-from freebsd@shaneware.biz) Received: from mail-relay3.dca2.superb.net (mail-relay3.dca2.superb.net [66.148.95.55]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4WGCvY1m2Fz4Sjc for ; Sat, 6 Jul 2024 01:48:09 +0000 (UTC) (envelope-from freebsd@shaneware.biz) Authentication-Results: mx1.freebsd.org; dkim=pass header.d=superb.net header.s=mailrelay header.b="ZFiYzg/F"; dmarc=fail reason="No valid SPF, DKIM not aligned (relaxed)" header.from=shaneware.biz (policy=quarantine); spf=softfail (mx1.freebsd.org: 66.148.95.55 is neither permitted nor denied by domain of freebsd@shaneware.biz) smtp.mailfrom=freebsd@shaneware.biz DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=superb.net; s=mailrelay; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: References:To:Subject:MIME-Version:Date:Message-ID:Sender:Reply-To:Cc: Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender: Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe: List-Subscribe:List-Post:List-Owner:List-Archive; bh=a+QE4hZE5P7fnZRpe+HLIehNlecmq9maA5gG2KJYB9g=; b=ZFiYzg/FurEZuWlmciN7dby2sO CZS1Zj9ptkTuGL1Da3wngZOpcjlrcLEVNzcwjF+vYbsfWIeZdjtnWhqyAgVxsXCUoktGHmhNjm5vm 1sOtnYdkOAowCBIOGxdptnR5LAnG89CJ1xs1KRy9TJyHy7MN8KyAwnG4VWWSM4kSHk2UdEhyjEyUC vG24upO+nk9fXvZg4NwRqrGCz5pAdyNGgiCa+Y8BEQa9EKmCHnyhIlZpkF4rFINSXUx2tR1RPOsSF NDvWRhG5iKfqkxJpx0vq8z6RPNqa3aYQpolHxT9crnnWiUi12e8RyN9fljNQ6OIvLnHSZHsh9zQ+B DVszOsWQ==; Received: from ppp230-11.static.internode.on.net ([203.122.230.11] helo=[192.168.9.155]) by mail-relay3.dca2.superb.net with esmtpsa (TLS1.2:ECDHE-RSA-AES128-GCM-SHA256:128) (envelope-from ) id 1sPuWv-0007SY-85; Fri, 05 Jul 2024 21:48:02 -0400 Message-ID: <74d6fd53-a530-a905-2fa9-3920a5d50f39@ShaneWare.Biz> Date: Sat, 6 Jul 2024 11:17:55 +0930 List-Id: User questions List-Archive: https://lists.freebsd.org/archives/freebsd-questions List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: freebsd-questions@freebsd.org Sender: owner-freebsd-questions@FreeBSD.org MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: Setting default version in Poudriere To: Pat , freebsd-questions References: Content-Language: en-AU From: Shane Ambler In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-SA-Score: -3.1 X-Spamd-Bar: - X-Spamd-Result: default: False [-1.80 / 15.00]; DMARC_POLICY_QUARANTINE(1.50)[shaneware.biz : No valid SPF, DKIM not aligned (relaxed),quarantine]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; NEURAL_HAM_LONG(-1.00)[-1.000]; NEURAL_HAM_SHORT(-1.00)[-0.998]; R_DKIM_ALLOW(-0.20)[superb.net:s=mailrelay]; MIME_GOOD(-0.10)[text/plain]; ARC_NA(0.00)[]; RCVD_VIA_SMTP_AUTH(0.00)[]; ASN(0.00)[asn:14361, ipnet:66.148.95.0/24, country:US]; MIME_TRACE(0.00)[0:+]; RCVD_COUNT_ONE(0.00)[1]; DWL_DNSWL_NONE(0.00)[superb.net:dkim]; RCVD_TLS_ALL(0.00)[]; MID_RHS_MATCH_FROM(0.00)[]; RCPT_COUNT_TWO(0.00)[2]; FROM_EQ_ENVFROM(0.00)[]; FROM_HAS_DN(0.00)[]; FREEMAIL_TO(0.00)[protonmail.com,freebsd.org]; R_SPF_SOFTFAIL(0.00)[~all]; TO_DN_ALL(0.00)[]; TO_MATCH_ENVRCPT_SOME(0.00)[]; MLMMJ_DEST(0.00)[freebsd-questions@freebsd.org]; DKIM_TRACE(0.00)[superb.net:+] X-Rspamd-Queue-Id: 4WGCvY1m2Fz4Sjc On 5/7/24 06:27, Pat wrote: > Hello, > > Got a couple of rather silly question, but I can't find a definitive answer to either. > > If I build PostgreSQL15-server, I get version 15.7. That is the latest version, so not unexpected. > > I would like to build version 15.6. Ideally I would like to have both versions available because for the most part I want to install 15.7, but I need 15.6 at the moment. > > So my questions are: > How do I configure things to have both versions available? > If that is not possible, how do I set the default to be 15.6 for now, with the intent of undoing that after my testing? As far as ports go, you can configure the major postgresql version (14.x, 15.x), in make.conf add DEFAULT_VERSIONS= pgsql=15 Considering you have a database requiring 15.6, you would have that installed and running already, I would suggest setting up 15.7 DB in a jail or second machine for regression tests and not need a second 15.6 server running. So you would only need to build the newer version. Are you aware of the postgresql versioning changes since 10? The first number is a major version, the second is a minor bug/security update 15.6 to 15.7 is a minor update that can be done in-place. >From https://www.postgresql.org/support/versioning/ Minor release upgrades do not require a dump and restore; you simply stop the database server, install the updated binaries, and restart the server. Such upgrades might require additional steps so always read the release notes first. Minor releases only contain fixes for frequently-encountered bugs, low-risk fixes, security issues, and data corruption problems. The community considers performing minor upgrades to be less risky than continuing to run an old minor version. -- FreeBSD - the place to B...Serving Data Shane Ambler From nobody Sat Jul 6 17:18:18 2024 X-Original-To: questions@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4WGcYB3gN0z5PBnR for ; Sat, 06 Jul 2024 17:18:38 +0000 (UTC) (envelope-from kob6558@gmail.com) Received: from mail-yw1-x1134.google.com (mail-yw1-x1134.google.com [IPv6:2607:f8b0:4864:20::1134]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "WR4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4WGcY949Khz4vmc for ; Sat, 6 Jul 2024 17:18:37 +0000 (UTC) (envelope-from kob6558@gmail.com) Authentication-Results: mx1.freebsd.org; dkim=pass header.d=gmail.com header.s=20230601 header.b=TEVNbvZt; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (mx1.freebsd.org: domain of kob6558@gmail.com designates 2607:f8b0:4864:20::1134 as permitted sender) smtp.mailfrom=kob6558@gmail.com Received: by mail-yw1-x1134.google.com with SMTP id 00721157ae682-65465878c1fso14815127b3.2 for ; Sat, 06 Jul 2024 10:18:37 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1720286315; x=1720891115; darn=freebsd.org; h=to:subject:message-id:date:from:mime-version:from:to:cc:subject :date:message-id:reply-to; bh=EZu287iMdnTDNHDbwNnCdZvjpbAQK3PE3ysM55V1BRs=; b=TEVNbvZttIYK/8G+sccx4tBVAAviMlAgDS6GErhMI+KVGSp1CKHkeUJta478PT5+CV bFk+wlXZ/S0Wwd4bbgQbyH3ddPKUcmk2AWeFtm10GJu1zd+WcTfIQfB0Dug5Q5RYTEVY GuZo6IyF4XCDhmx+ylOBJnKOdWrmv5y1bG3eIAOqKA3XjPjq2a1hHrRM7RNKxe2aI8Dp eLEIPQ3+v33njytVl5/3xxBj1XqLb6e/FsMcFKbnDmXqNwJyVBSdY0onqL6uVXpEhNAK PzABOgoEAcoyDsqWQT6E+zi2tn5GTA0Um6XL487EQ3IfJuX7dQKrvO5Qy45NG6l47YWT b12w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1720286315; x=1720891115; h=to:subject:message-id:date:from:mime-version:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=EZu287iMdnTDNHDbwNnCdZvjpbAQK3PE3ysM55V1BRs=; b=paW5UPnTh6LGjwv4vZamAfaAOID0mz1bfMwQE2LgXqFFD7ItfrGirLlcNcO5sR46NN iuKs3S7Xho+FPsLI4O1/wYw4ylXxgQPb5OqBKkCAPIj+Z2zVBUX+jdxqFDjLWP2Szvn/ cCSFr5hc4OafNaUqEG4EwlxewidFeDpN8ZfFiksY6OxxUnh44QA+5aC5PBe6pVKR+ZV2 pd4p7xuqICjbso9OLyaWou5RpUHn3MEjPrO+PMuv3tl5lIi5L44rjdw4bC26vFSnGqjD T2awLoCRFetkoKRrrER6oYmzkIsz0KI8AgYscFSFux2w+EnB0xGmQaQ2FBpWjD9lbFAj do3A== X-Gm-Message-State: AOJu0YwbWRr6i09JViquUdWYivVttSBQJDkniLgMba/3Lu63vn5/M5ZR 1ilQi8xxgruYHv9rOfJEZkR4Dv1Tw8AE2hPYjqTzzmP4GGfz4mJlJ8Cu5GBPqUqHAa936krotWF VljHQMLjrNkpHIiNqJCIPBjMror0LCCEe02g= X-Google-Smtp-Source: AGHT+IHQdjFjmXP/3rw9Fdmdg3IOsoXqaO1lISa9MFYatqGx6hYslP8d11wpwqIRBV38Qvy+I/oxd1OMrEzTTyDonGY= X-Received: by 2002:a81:848b:0:b0:650:9c5e:f6e2 with SMTP id 00721157ae682-652d7a681aamr75040847b3.34.1720286315109; Sat, 06 Jul 2024 10:18:35 -0700 (PDT) List-Id: User questions List-Archive: https://lists.freebsd.org/archives/freebsd-questions List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: freebsd-questions@freebsd.org Sender: owner-freebsd-questions@FreeBSD.org MIME-Version: 1.0 From: Kevin Oberman Date: Sat, 6 Jul 2024 10:18:18 -0700 Message-ID: Subject: Corrupted UFS2 file system? To: "freebsd-questions@freebsd.org" Content-Type: multipart/alternative; boundary="000000000000b965d7061c975efa" X-Spamd-Bar: -- X-Spamd-Result: default: False [-2.70 / 15.00]; SUBJECT_ENDS_QUESTION(1.00)[]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; NEURAL_HAM_SHORT(-1.00)[-0.999]; NEURAL_HAM_LONG(-1.00)[-0.999]; DMARC_POLICY_ALLOW(-0.50)[gmail.com,none]; FORGED_SENDER(0.30)[rkoberman@gmail.com,kob6558@gmail.com]; R_SPF_ALLOW(-0.20)[+ip6:2607:f8b0:4000::/36]; R_DKIM_ALLOW(-0.20)[gmail.com:s=20230601]; MIME_GOOD(-0.10)[multipart/alternative,text/plain]; RCVD_TLS_LAST(0.00)[]; ARC_NA(0.00)[]; FROM_HAS_DN(0.00)[]; MIME_TRACE(0.00)[0:+,1:+,2:~]; RCPT_COUNT_ONE(0.00)[1]; DWL_DNSWL_NONE(0.00)[gmail.com:dkim]; FREEMAIL_FROM(0.00)[gmail.com]; TO_DN_ALL(0.00)[]; MISSING_XM_UA(0.00)[]; DKIM_TRACE(0.00)[gmail.com:+]; MLMMJ_DEST(0.00)[questions@freebsd.org]; PREVIOUSLY_DELIVERED(0.00)[questions@freebsd.org]; FROM_NEQ_ENVFROM(0.00)[rkoberman@gmail.com,kob6558@gmail.com]; TO_MATCH_ENVRCPT_ALL(0.00)[]; MID_RHS_MATCH_FROMTLD(0.00)[]; RCVD_COUNT_ONE(0.00)[1]; ASN(0.00)[asn:15169, ipnet:2607:f8b0::/32, country:US]; FREEMAIL_ENVFROM(0.00)[gmail.com]; RCVD_IN_DNSWL_NONE(0.00)[2607:f8b0:4864:20::1134:from] X-Rspamd-Queue-Id: 4WGcY949Khz4vmc --000000000000b965d7061c975efa Content-Type: text/plain; charset="UTF-8" I use rsync to update a backup disk on a server. For a few months I have been getting errors for a few lost+found files. I have done "ls -l -o" and found many system flags are set on the files. Attempting to modify the files as root fails: # chflags 0 #31232359 chflags: #31232359: Operation not supported This is clearly a corruption. All three files show a bad creation date (Dec 22 1971) and a size of 4096. All include the flags sappnd, schg, sunlnk, snapshot, hidden, uunlnk, rdonly, and system. I suspect that snapshot prevents me from doing anything to the files, but I have no idea how I might fix this. Full fsck finds no errors. SMART shows a past error, but o current ones. Any clue as to how this might be fixed other than reinitialising the partition and starting from scratch? -- Kevin Oberman, Part time kid herder and retired Network Engineer E-mail: rkoberman@gmail.com PGP Fingerprint: D03FB98AFA78E3B78C1694B318AB39EF1B055683 --000000000000b965d7061c975efa Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
I use rsync to update a backup disk on a server.= For a few months I have been getting errors for a few lost+found files. I = have done "ls -l -o" and found many system flags are set on the f= iles. Attempting to modify the files as root fails:
# chflag= s 0 #31232359
chflags: #31232359: Operation not supported

This is clearly a corruption. All three files show a b= ad creation date (Dec 22 =C2=A01971) and a size of 4096. All include the fl= ags sappnd, schg, sunlnk, snapshot, hidden, uunlnk, rdonly, and system. I s= uspect that snapshot prevents me from doing anything to the files, but I ha= ve no idea how I might fix this. Full fsck finds no errors. SMART shows a p= ast error, but o current ones.

Any = clue as to how this might be fixed other than reinitialising the partition = and starting from scratch?
= --
Kevin Oberman, Part time kid herder and retired Ne= twork Engineer
E-mail: rkoberman@gmail.com
PGP Fingerprint: D03FB98AFA78= E3B78C1694B318AB39EF1B055683
--000000000000b965d7061c975efa-- From nobody Sat Jul 6 17:56:12 2024 X-Original-To: freebsd-questions@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4WGdNb5MlGz5PHWy for ; Sat, 06 Jul 2024 17:56:15 +0000 (UTC) (envelope-from r.m@rmswch.plus.com) Received: from avasout-ptp-001.plus.net (avasout-ptp-001.plus.net [84.93.230.227]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "avasout.plus.net", Issuer "GeoTrust TLS RSA CA G1" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4WGdNZ6278z50L6 for ; Sat, 6 Jul 2024 17:56:14 +0000 (UTC) (envelope-from r.m@rmswch.plus.com) Authentication-Results: mx1.freebsd.org; dkim=pass header.d=plus.com header.s=042019 header.b=pofbIiLD; dmarc=none; spf=none (mx1.freebsd.org: domain of r.m@rmswch.plus.com has no SPF policy when checking 84.93.230.227) smtp.mailfrom=r.m@rmswch.plus.com Received: from opendev.home ([80.229.151.92]) by smtp with SMTP id Q9dss3kOg4PsgQ9dtsiJkO; Sat, 06 Jul 2024 18:56:13 +0100 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=plus.com; s=042019; t=1720288573; bh=OxMXxiNx6T/UI10MpPwT3tFaglDa+ykqFrugiw9687I=; h=Date:From:To:Subject; b=pofbIiLDBnBHwJXxiXIxIXLEfdvS8DasuYgXjdS7CIeu/fJel4OQXQHMeOH6YLq4X 9MGzmpJVUQ7TknEZJXOk2P2nB2bIAkxmCxZO0PWEe10KRudgq8gkmnVabS92heclYP 1ofS7vUpsuJztT6UzADjbGBDZ/WR/cW+PBqAcG6otei8YfsOHKShrwLya2ZbcG7Ig2 ghWdQyiruqZcPDAybjwD+7nAtPSpsCvVK98O2JwVVhaXHMbuSNMMh+QN/z9Z2MtKp1 bjYW8X20Ti2QWlzFQw2Hl3ugIR1iyrDAFxqVwG/8ED6MOyBE3wEklIclwwUkkONCoB YlrCdc+azPNUw== X-Clacks-Overhead: "GNU Terry Pratchett" X-CM-Score: 0.00 X-CNFS-Analysis: v=2.4 cv=eeSefKEH c=1 sm=1 tr=0 ts=6689853d a=6xlXYeu7y0jVCiZ/8t1ozg==:117 a=6xlXYeu7y0jVCiZ/8t1ozg==:17 a=l5a0Lw2Lsyz7zFqPH5cA:9 a=CjuIK1q_8ugA:10 a=pX8CbCtnQw11f6GLFNAA:9 Date: Sat, 6 Jul 2024 17:56:12 +0000 From: Roger Marsh To: freebsd-questions@freebsd.org Subject: sqlite3.OperationalError seen after freebsd-update from 14.0 to 14.1 and ports upgrade Message-ID: <20240706175612.0dd7ad18@opendev.home> X-Mailer: Claws Mail 4.2.0 (GTK 3.24.41; x86_64-unknown-openbsd7.5) List-Id: User questions List-Archive: https://lists.freebsd.org/archives/freebsd-questions List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: freebsd-questions@freebsd.org Sender: owner-freebsd-questions@FreeBSD.org MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="MP_/_K4Ve8z/W.S1rTnI07hgcX+" X-CMAE-Envelope: MS4xfPWddGE98VKrFyl/UsUJ0A3nw6xhyH8xboM9hRZXZulEvfsKZwLwbB/Dviwia7gTNpqHlQQIeEDMGqt2dztkDTV36ElpJcYjsLa+CNM7c9lq6xa4jOd7 6d4TxRnrltFYyc7EEnFvDYoZ66XY8sEVNkI0+ehsMYoJeHhiNyBxb2LmLvtvqdwDccJsXKqNAneNJnkkPXeGrtk9dOMC1VeYeOk= X-Spamd-Bar: --- X-Spamd-Result: default: False [-3.40 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; NEURAL_HAM_LONG(-1.00)[-1.000]; NEURAL_HAM_SHORT(-1.00)[-0.998]; R_DKIM_ALLOW(-0.20)[plus.com:s=042019]; ONCE_RECEIVED(0.10)[]; MIME_GOOD(-0.10)[multipart/mixed,text/plain,text/x-python]; RWL_MAILSPIKE_GOOD(-0.10)[84.93.230.227:from]; RCVD_IN_DNSWL_LOW(-0.10)[84.93.230.227:from]; ARC_NA(0.00)[]; RCVD_COUNT_ONE(0.00)[1]; RCPT_COUNT_ONE(0.00)[1]; MIME_TRACE(0.00)[0:+,1:+,2:+]; ASN(0.00)[asn:6871, ipnet:84.92.0.0/15, country:GB]; DKIM_TRACE(0.00)[plus.com:+]; MLMMJ_DEST(0.00)[freebsd-questions@freebsd.org]; FROM_EQ_ENVFROM(0.00)[]; FROM_HAS_DN(0.00)[]; DMARC_NA(0.00)[plus.com]; R_SPF_NA(0.00)[no SPF record]; TO_MATCH_ENVRCPT_ALL(0.00)[]; TO_DN_NONE(0.00)[]; RCVD_TLS_LAST(0.00)[]; HAS_ATTACHMENT(0.00)[] X-Rspamd-Queue-Id: 4WGdNZ6278z50L6 --MP_/_K4Ve8z/W.S1rTnI07hgcX+ Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Content-Disposition: inline Hi, The SQL statement: select field1 , Segment , RecordCount , file1 from file1_field1 where field1 == "one" and Segment == 0 gets exception: sqlite3.OperationalError: no such column: one when executed via the sqlite3 or apsw modules in Python3.9 on FreeBSD 14.1. The exception is not seen on various Python versions on OpenBSD or Microsoft Windows 10, and was not seen on FreeBSD before the upgrade to 14.1. The attachment has the following code to cause the exception. import sqlite3 as engine FIELD1 = " ".join( ( "create table if not exists file1_field1", "( field1 , Segment , RecordCount, file1 )", ) ) if __name__ == "__main__": dbenv = engine.Connection(":memory:") cursor = dbenv.cursor() cursor.execute("begin") cursor.execute(FIELD1) cursor.execute("commit") ss = " ".join( ( "select field1 , Segment , RecordCount , file1 from", 'file1_field1 where field1 == "one" and Segment == 0', ) ) dbenv.cursor().execute(ss) Bug? Roger --MP_/_K4Ve8z/W.S1rTnI07hgcX+ Content-Type: text/x-python Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=test__sqlite_essential.py # test__sqlite_essential.py # Trimmed down version of unit test which has this error. # No exceptions seen on OpenBSD: # Python 3.10.14 sqlite_version 3.44.2. # No exceptions seen on Microsoft Windows 10: # Python 3.12.0 sqlite_version 3.42.0. # No exceptions seen on MSys2 (Microsoft Windows 10): # Python 3.11.8 sqlite_version 3.45.1. # No exceptions seen on FreeBSD before ports upgrade after freebsd-update # from 14.0 to 14.1. # But on FreeBSD 14.1: # Python 3.9.18 sqlite_version 3.45.1. # 'sqlite3.OperationalError: no such column: one' with sqlite3. # 'apsw.SQLError: SQLError: no such column: one" with apsw. import sqlite3 as engine # Same outcome with apsw instead of sqlite3. # Real code does these operations on nested dict of file and field names. FIELD1 = " ".join( ( "create table if not exists file1_field1", "( field1 , Segment , RecordCount, file1 )", ) ) if __name__ == "__main__": # Essential statements for problem extracted from methods in real code. dbenv = engine.Connection(":memory:") # "memory:" accepted by sqlite3. cursor = dbenv.cursor() cursor.execute("begin") cursor.execute(FIELD1) cursor.execute("commit") ss = " ".join( ( "select field1 , Segment , RecordCount , file1 from", 'file1_field1 where field1 == "one" and Segment == 0', ) ) dbenv.cursor().execute(ss) # Real code has this in a method. #cursor.execute(ss) # This line has the exception too. --MP_/_K4Ve8z/W.S1rTnI07hgcX+-- From nobody Sat Jul 6 18:30:24 2024 X-Original-To: freebsd-questions@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4WGf8s5rqGz5PN1s for ; Sat, 06 Jul 2024 18:31:09 +0000 (UTC) (envelope-from wfdudley@gmail.com) Received: from mail-vk1-xa2f.google.com (mail-vk1-xa2f.google.com [IPv6:2607:f8b0:4864:20::a2f]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "WR4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4WGf8s1GLjz593y for ; Sat, 6 Jul 2024 18:31:09 +0000 (UTC) (envelope-from wfdudley@gmail.com) Authentication-Results: mx1.freebsd.org; dkim=pass header.d=gmail.com header.s=20230601 header.b=c1CO2mcB; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (mx1.freebsd.org: domain of wfdudley@gmail.com designates 2607:f8b0:4864:20::a2f as permitted sender) smtp.mailfrom=wfdudley@gmail.com Received: by mail-vk1-xa2f.google.com with SMTP id 71dfb90a1353d-4f2c8e99c0fso927118e0c.1 for ; Sat, 06 Jul 2024 11:31:09 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1720290667; x=1720895467; darn=freebsd.org; h=to:subject:message-id:date:from:mime-version:from:to:cc:subject :date:message-id:reply-to; bh=Y5B3IxlGmZ0QxigpxSK5pBjxD2vZVG7pfkF+NkAOsnw=; b=c1CO2mcBs1W4xB+rbGLWYlU9fRS0HCaAaDL2r4/eiVJ4mXQOvWqhtljqJ5hpeil5qc ZXZLIreCv7+mBqVUZ3+igZiJOhPFeSNClkW/KgxSgffTvX04Yl8n+2+dVg0dmecrEbVJ kTbCStCVvv/Cj5X3u9W7XMgH7SSMYik1vBARJrhvge6aWFmv2jrvKB1UiIUtUr2IGYSV Fr94J7SXR94HjgUZS2SwmBRIRIJS/6ePDsQEVlUE0pjXfj6JNk4cfyn51xf+vsZnnDrH J8HLLXgJ6GV2pVA2lWFvwzefSxIn7pOzmT1t+11Q1Z/wNqQ3zEY3VVuVd2AONU2sJW7/ BJ4g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1720290667; x=1720895467; h=to:subject:message-id:date:from:mime-version:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=Y5B3IxlGmZ0QxigpxSK5pBjxD2vZVG7pfkF+NkAOsnw=; b=vR3kn55lKGrvyIQRmyLMjfUSwV1JKRb3arP+3sHHWcF2ZVAnp7nnsB2ZJrwj3jvZEY mcNJU1cYhx/hfRfKtHeAUmqRdxqz75oFQqkAicHbK2/XfWlrUv8sm2ixXqDp4p6uiMwy +teYioEAw44r4gViczsIXmiLgcpIhzj2oDxAZOL6nZAEvcGBJfL6may3AujBaXHEaY32 79O/QoWUm+9Ynqtead+CtcHwZiEt+KuKsk7KwPh2dj1qpFQzn4jUrkB6XZ0wIE+EZ79v OOhrmFtp7jYH4gpQgnv4R6GNU7hkyB4Uc6w5LPdPbdXBntrRBgoZLx9kXgl/Spd3wQCG iOfQ== X-Gm-Message-State: AOJu0YzwgaOg5rbEWpiEd99dRtxAm1Q6d3+VQBeiONv4rKyoPffhrw3S yYI17bylspgpw3OxPrBDIe7e1tp2WYqY6Ac8FiAtHBV8QdNUksIRz6KlV4YfqcnaH+2nHvvtLWj +YFefI4IFk1JW/afSdfp/hP1D7XMKtQ== X-Google-Smtp-Source: AGHT+IEvkMuY/cFLTbTVSQvRfSQOHLBJaVfPT8GEe12Nc5P4+Vb0JXilUHX+U2M+0NuG1G6KlnVkjaQRgNpDn/Pz/6Y= X-Received: by 2002:a05:6122:430c:b0:4ef:774e:8b7e with SMTP id 71dfb90a1353d-4f2f40723d5mr8324424e0c.16.1720290667170; Sat, 06 Jul 2024 11:31:07 -0700 (PDT) List-Id: User questions List-Archive: https://lists.freebsd.org/archives/freebsd-questions List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: freebsd-questions@freebsd.org Sender: owner-freebsd-questions@FreeBSD.org MIME-Version: 1.0 From: William Dudley Date: Sat, 6 Jul 2024 14:30:24 -0400 Message-ID: Subject: why do I need to do "zpool import " every time I boot? To: freebsd-questions Content-Type: multipart/alternative; boundary="00000000000020963d061c986273" X-Spamd-Bar: -- X-Spamd-Result: default: False [-2.96 / 15.00]; SUBJECT_ENDS_QUESTION(1.00)[]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; NEURAL_HAM_LONG(-1.00)[-1.000]; NEURAL_HAM_SHORT(-0.96)[-0.961]; DMARC_POLICY_ALLOW(-0.50)[gmail.com,none]; R_SPF_ALLOW(-0.20)[+ip6:2607:f8b0:4000::/36]; R_DKIM_ALLOW(-0.20)[gmail.com:s=20230601]; MIME_GOOD(-0.10)[multipart/alternative,text/plain]; TO_DN_ALL(0.00)[]; RCVD_TLS_LAST(0.00)[]; ARC_NA(0.00)[]; FROM_HAS_DN(0.00)[]; MIME_TRACE(0.00)[0:+,1:+,2:~]; RCPT_COUNT_ONE(0.00)[1]; FREEMAIL_ENVFROM(0.00)[gmail.com]; FREEMAIL_FROM(0.00)[gmail.com]; TO_MATCH_ENVRCPT_ALL(0.00)[]; MISSING_XM_UA(0.00)[]; DWL_DNSWL_NONE(0.00)[gmail.com:dkim]; PREVIOUSLY_DELIVERED(0.00)[freebsd-questions@freebsd.org]; FROM_EQ_ENVFROM(0.00)[]; DKIM_TRACE(0.00)[gmail.com:+]; MLMMJ_DEST(0.00)[freebsd-questions@freebsd.org]; ASN(0.00)[asn:15169, ipnet:2607:f8b0::/32, country:US]; MID_RHS_MATCH_FROMTLD(0.00)[]; RCVD_COUNT_ONE(0.00)[1]; RCVD_IN_DNSWL_NONE(0.00)[2607:f8b0:4864:20::a2f:from] X-Rspamd-Queue-Id: 4WGf8s1GLjz593y --00000000000020963d061c986273 Content-Type: text/plain; charset="UTF-8" FreeBSD 13.4 amd64 fresh install. I've got another installation running with a zfs raid0 and it works. However, on this system, EVERY TIME I cold boot, the zfs system is "missing", and I have to do "zpool import poolname". WHY? Thanks, Bill Dudley east coast USA This email is free of malware because I run Linux. --00000000000020963d061c986273 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
FreeBSD 13.4 amd64
fresh install.
I've g= ot another installation running with a zfs raid0 and it works.
Ho= wever, on this system, EVERY TIME I cold boot, the zfs system is "miss= ing",
and I have to do "zpool import poolname".

WHY?

Thanks,
Bill= Dudley
east coast USA
This email is fre= e of malware because I run Linux.
--00000000000020963d061c986273-- From nobody Sat Jul 6 18:50:44 2024 X-Original-To: freebsd-questions@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4WGfcK6qLsz5PgDk for ; Sat, 06 Jul 2024 18:51:29 +0000 (UTC) (envelope-from wfdudley@gmail.com) Received: from mail-vs1-xe2a.google.com (mail-vs1-xe2a.google.com [IPv6:2607:f8b0:4864:20::e2a]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "WR4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4WGfcK078rz41s9 for ; Sat, 6 Jul 2024 18:51:29 +0000 (UTC) (envelope-from wfdudley@gmail.com) Authentication-Results: mx1.freebsd.org; dkim=pass header.d=gmail.com header.s=20230601 header.b=Sy31T4DB; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (mx1.freebsd.org: domain of wfdudley@gmail.com designates 2607:f8b0:4864:20::e2a as permitted sender) smtp.mailfrom=wfdudley@gmail.com Received: by mail-vs1-xe2a.google.com with SMTP id ada2fe7eead31-48ffc762640so578941137.3 for ; Sat, 06 Jul 2024 11:51:29 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1720291887; x=1720896687; darn=freebsd.org; h=to:subject:message-id:date:from:in-reply-to:references:mime-version :from:to:cc:subject:date:message-id:reply-to; bh=8NBcBI7mHGijspOoqaXltuHPSDLRq9KcQVU0gpVsft8=; b=Sy31T4DBrrZR8P185LLZfeGxJMzg+omoiT7/Wlprst3Aix6lvJ1MdWOeDyuSgDNSFM 27zwkq8qQ/pkxvDKfJHmmTYLgjN+8TRvTBQPG2Y3Y4rlUX0E3nXn60PQUJfU/AsSOZui EkRL1PH+heBPPb4dFcmO9NQWd4xj35pZo0zyI9fpgw5I0R38UjS+QV4tQFYGDyGU206h HrIw1BiSrAB35squYYXo7D7ld3OjDjchrwmmdnTbhI/A1RPnfnmUYafeCaaUgYiP/Bw4 0kvGhtYlR5g8+a2ptyoSEIJMhnWTsrAkCMQw1DTi5foBhoKI0r1wneq9gAkR/cg5bkJ3 /85g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1720291887; x=1720896687; h=to:subject:message-id:date:from:in-reply-to:references:mime-version :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=8NBcBI7mHGijspOoqaXltuHPSDLRq9KcQVU0gpVsft8=; b=ekB/9rW9L3DPk+UZQMg4xeFfJzWSNFu1grkj3sEHGV/xFEz6JL0pMuKMIvkF8fKQ77 HjjaRCZ9tM8DMgh4dtSqT3UJUkKW2Dw7w/ibj6kcCzqVpmhIHwERwR0P1xELE4iMpa8t bIXqBrAsoOvtwyDhdk1nBPBCKRvFJqbxVLEAii2bTi8wYOfEsupUFqnUWaOkd4WFUEwd +rFm2XFUS10P2GMxfvtJy5ZX/8u7a2cOUKfzmSwD+5Kj58+HRqm/8vKcov3NL0983+Oy N6G6RDBp6uWJ5P5zRxC2FbxxY8XJXxRtj74BKyzwArNt6lIZOELXc5RZvX1xWHGwTBc/ GJtg== X-Gm-Message-State: AOJu0YyyMpIMvJUfvzFl/l+S6IifrChz5YVmqB0WFhayWQddagQC5UK3 2HHdlaQxNGrpGgJwo6jhjUpClLHITY8Lu4yy1tzKjxipTIcK32khqjxGJAFN1iOTB5NLb+nrUfX jQYonjC4chIc3/EhY+GvWlls4C5v0pA== X-Google-Smtp-Source: AGHT+IEN9W3xFyhrcW0ETmp0gRcYerm21OuxT6BC4ZQzzpv11XqyvkR+KLzS4MVkGEPljcpZe4w9hYQ4vhggzXEF6z0= X-Received: by 2002:a05:6102:1152:b0:48f:e9b1:322 with SMTP id ada2fe7eead31-48fee6607b1mr7172057137.12.1720291887591; Sat, 06 Jul 2024 11:51:27 -0700 (PDT) List-Id: User questions List-Archive: https://lists.freebsd.org/archives/freebsd-questions List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: freebsd-questions@freebsd.org Sender: owner-freebsd-questions@FreeBSD.org MIME-Version: 1.0 References: In-Reply-To: From: William Dudley Date: Sat, 6 Jul 2024 14:50:44 -0400 Message-ID: Subject: Re: why do I need to do "zpool import " every time I boot? To: freebsd-questions Content-Type: multipart/alternative; boundary="000000000000deb81c061c98aa4f" X-Spamd-Bar: -- X-Spamd-Result: default: False [-2.96 / 15.00]; SUBJECT_ENDS_QUESTION(1.00)[]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; NEURAL_HAM_LONG(-1.00)[-0.999]; NEURAL_HAM_SHORT(-0.96)[-0.960]; DMARC_POLICY_ALLOW(-0.50)[gmail.com,none]; R_SPF_ALLOW(-0.20)[+ip6:2607:f8b0:4000::/36]; R_DKIM_ALLOW(-0.20)[gmail.com:s=20230601]; MIME_GOOD(-0.10)[multipart/alternative,text/plain]; TO_DN_ALL(0.00)[]; RCVD_TLS_LAST(0.00)[]; ARC_NA(0.00)[]; FROM_HAS_DN(0.00)[]; MIME_TRACE(0.00)[0:+,1:+,2:~]; RCPT_COUNT_ONE(0.00)[1]; FREEMAIL_ENVFROM(0.00)[gmail.com]; FREEMAIL_FROM(0.00)[gmail.com]; TO_MATCH_ENVRCPT_ALL(0.00)[]; MISSING_XM_UA(0.00)[]; DWL_DNSWL_NONE(0.00)[gmail.com:dkim]; PREVIOUSLY_DELIVERED(0.00)[freebsd-questions@freebsd.org]; FROM_EQ_ENVFROM(0.00)[]; DKIM_TRACE(0.00)[gmail.com:+]; MLMMJ_DEST(0.00)[freebsd-questions@freebsd.org]; ASN(0.00)[asn:15169, ipnet:2607:f8b0::/32, country:US]; MID_RHS_MATCH_FROMTLD(0.00)[]; RCVD_COUNT_ONE(0.00)[1]; RCVD_IN_DNSWL_NONE(0.00)[2607:f8b0:4864:20::e2a:from] X-Rspamd-Queue-Id: 4WGfcK078rz41s9 --000000000000deb81c061c98aa4f Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable I think I figured out my mistake, though I haven't tried to reboot yet. I was missing zfs_enable=3D"YES" in /etc/rc.conf. Thanks, Bill Dudley This email is free of malware because I run Linux. On Sat, Jul 6, 2024 at 2:30=E2=80=AFPM William Dudley = wrote: > FreeBSD 13.4 amd64 > fresh install. > I've got another installation running with a zfs raid0 and it works. > However, on this system, EVERY TIME I cold boot, the zfs system is > "missing", > and I have to do "zpool import poolname". > > WHY? > > Thanks, > Bill Dudley > east coast USA > This email is free of malware because I run Linux. > --000000000000deb81c061c98aa4f Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
I think I figured out my mistake, though I haven't tri= ed to reboot yet.

I was missing zfs_enable=3D"YES&q= uot; in /etc/rc.conf.

Thanks,
Bill Dudle= y
This email is free of malware because I run Linu= x.


On Sat, Jul 6, 2024 at 2:30=E2=80=AFPM William Dudl= ey <wfdudley@gmail.com> wro= te:
FreeBSD 13.4 amd64
fresh install.
I've got another i= nstallation running with a zfs raid0 and it works.
However, on th= is system, EVERY TIME I cold boot, the zfs system is "missing",
and I have to do "zpool import poolname".

=
WHY?

Thanks,
Bill Dudley
east coast USA
This email is free of malware because I run Linux.
--000000000000deb81c061c98aa4f--