From owner-svn-src-head@freebsd.org Fri Apr 14 20:37:41 2017 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id B29ADD3A7D5; Fri, 14 Apr 2017 20:37:41 +0000 (UTC) (envelope-from ler@lerctr.org) Received: from thebighonker.lerctr.org (thebighonker.lerctr.org [IPv6:2001:470:1f0f:3ad:223:7dff:fe9e:6e8a]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "thebighonker.lerctr.org", Issuer "COMODO RSA Domain Validation Secure Server CA" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 8D9731E27; Fri, 14 Apr 2017 20:37:41 +0000 (UTC) (envelope-from ler@lerctr.org) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lerctr.org; s=lerami; h=Content-transfer-encoding:Content-type:Mime-version:In-Reply-To: References:Message-ID:CC:To:From:Subject:Date: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=MVZQOjrlrhpsxebE2wLM+/juVvbJKm5HlqSqgOSVnfw=; b=nSO2/jCDAoOnt0I9QgZQBMKRfS S0Jj736Y7DOI/yOoM1rXJ1rAuKmPGv11nM4eGKMqImfxYdOAYl1cD8eBJoGwW6lttgjZaFjfHnOZi u3pKOdJw2NZrZgakj3LDh9BPYKCVncTSZDcNgIz/FWig4OoSwQCwX2VyREumHWzx/ZG8=; Received: from [74.203.163.58] (port=32826 helo=[10.106.10.41]) by thebighonker.lerctr.org with esmtpsa (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) (Exim 4.89 (FreeBSD)) (envelope-from ) id 1cz7yO-000IUK-Go; Fri, 14 Apr 2017 15:37:40 -0500 User-Agent: Microsoft-MacOutlook/f.21.0.170409 Date: Fri, 14 Apr 2017 15:37:10 -0500 Subject: Re: svn commit: r316938 - head/sbin/savecore From: Larry Rosenman To: "Ngie Cooper (yaneurabeya)" CC: Slawa Olhovchenkov , "svn-src-head@freebsd.org" , "svn-src-all@freebsd.org" , "src-committers@freebsd.org" , Ngie Cooper , Alan Somers Message-ID: Thread-Topic: svn commit: r316938 - head/sbin/savecore References: <201704141941.v3EJfmCW003347@repo.freebsd.org> <20170414201431.GF20974@zxy.spb.ru> <0CAE4B1C-228B-4C71-86E9-4337753DFF74@lerctr.org> In-Reply-To: Mime-version: 1.0 Content-type: text/plain; charset="UTF-8" Content-transfer-encoding: quoted-printable X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Apr 2017 20:37:41 -0000 On 4/14/17, 3:33 PM, "Ngie Cooper (yaneurabeya)" wr= ote: =20 > On Apr 14, 2017, at 13:26, Larry Rosenman wrote: >=20 > On 4/14/17, 3:19 PM, "Ngie Cooper (yaneurabeya)" wrote: >=20 >> On Apr 14, 2017, at 13:14, Slawa Olhovchenkov wrote= : >>=20 >> On Fri, Apr 14, 2017 at 01:49:51PM -0600, Alan Somers wrote: >>=20 >>> On Fri, Apr 14, 2017 at 1:41 PM, Ngie Cooper wro= te: >>>> Author: ngie >>>> Date: Fri Apr 14 19:41:48 2017 >>>> New Revision: 316938 >>>> URL: https://svnweb.freebsd.org/changeset/base/316938 >>>>=20 >>>> Log: >>>> savecore: fix space calculation with respect to `minfree` in check= _space(..) >>>>=20 >>>> - Use strtoll(3) instead of atoi(3), because atoi(3) limits the >>>> representable data to INT_MAX. Check the values received from >>>> strtoll(3), trimming trailing whitespace off the end to maintain >>>> POLA. >>>> - Use `KiB` instead of `kB` when describing free space, total spac= e, >>>> etc. I am now fully aware of `KiB` being the IEC standard for 10= 24 >>>> bytes and `kB` being the IEC standard for 1000 bytes. >>>> - Store available number of KiB in `available` so it can be more >>>> easily queried and compared to ensure that there are enough KiB = to >>>> store the dump image on disk. >>>> - Print out the reserved space on disk, per `minfree`, so end-user= s >>>> can troubleshoot why check_space(..) is reporting that there isn= 't >>>> enough free space. >>>>=20 >>>> MFC after: 7 weeks >>>> Reviewed by: Anton Rang (earlier diff), cem (earli= er diff) >>>> Tested with: positive/negative cases (see review); make tinderbox >>>> Sponsored by: Dell EMC Isilon >>>> Differential Revision: D10379 >>>=20 >>> The free space calculation is still uselessly conservative, because= it >>> doesn't account for the fact that core dumps will always be either >>> spare or compressed. The result is that savecore will frequently >>> refuse to save corefiles even when there's plenty of space. I >>> proposed removing the space check altogether in >>> https://reviews.freebsd.org/D2587. However, I agreed to wait until >>> after the compressed core dump feature was merged, because then mos= tly >>> accurate space checks will be possible. AFAIK the compressed core >>> dump feature still hasn't been finished. >>=20 >> Is posible (in the future) to use multiple swaps (on multiple disks) >> for save core dumps? >=20 > Multiple swap devices is already handled by savecore(8), if one us= es fstab(5) or dumpon(8). Otherwise, you must invoke savecore(8) on individu= al devices. >=20 > As far as saving to multiple disks is concerned, I would hope that= one is using a redundancy capable filesystem (zfs) or RAID-like technology = (gmirror, graid, LSI Fusion=E2=80=99s RAID product line) to stripe and/or mirror t= he data across multiple disks. =20 =E2=80=A6 =20 > How do I use multiple devices to have the system dump on all of my sw= ap? I got a message about not enough space, but there (I think) was enough = between multiple drives=E2=80=A6. =20 Something like: =20 - Create a zpool - Mount zpool to /crashdumps - Change dumpdir in /etc/rc.conf to be /crashdumps, e.g., echo =E2=80=98dumpd= ir=3D/crashdumps=E2=80=99 =20 ? HTH, -Ngie =20 PS The issue with lack of space might be the issue that Alan brought up= earlier with compressed dumps and overly conservative free space checks, or= it might be the fact that dumpdir (default: /var/crash) is full. I was talking about the actual crashdump to swap by the system. /var/crash= has 10T of space (my root pool). =20