Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 21 Jun 2018 07:16:19 -0700
From:      Mark Millard <marklmi@yahoo.com>
To:        Trev <freebsd-arm@sentry.org>
Cc:        freebsd-arm <freebsd-arm@freebsd.org>, bob prohaska <fbsd@www.zefox.net>
Subject:   Re: GPT vs MBR for swap devices
Message-ID:  <1D86911D-20D1-494A-822B-1C07C5598CB1@yahoo.com>
In-Reply-To: <a232ed45-a9a9-1017-72ed-720a6c7a8f03@sentry.org>
References:  <25F1A4BA-FBFC-4C32-85DD-5F5BA71A2B1A@yahoo.com> <20180620023253.GA89924@www.zefox.net> <a232ed45-a9a9-1017-72ed-720a6c7a8f03@sentry.org>

next in thread | previous in thread | raw e-mail | index | archive | help


On 2018-Jun-21, at 12:28 AM, Trev <freebsd-arm at sentry.org> wrote:

> I gave in and bought an Raspberry Pi 3B+ and now I've been bitten by =
Bob's OOM assassin too...
>=20
> % gpart show
> =3D>      63  31116225  mmcsd0  MBR  (15G)
>        63      2016          - free -  (1.0M)
>      2079    102312       1  fat32lba  [active]  (50M)
>    104391  31008825       2  freebsd  (15G)
>  31113216      3072          - free -  (1.5M)
>=20
> =3D>       0  31008825  mmcsd0s2  BSD  (15G)
>         0        57            - free -  (29K)
>        57  31008768         1  freebsd-ufs  (15G)
>=20
> =3D>      40  60567472  da0  GPT  (29G)
>        40   4194304    1  freebsd-swap  (2.0G)
>   4194344  56373168    2  freebsd-ufs  (27G)
>=20
> % cat /etc/fstab
> # Custom /etc/fstab for FreeBSD embedded images
> /dev/ufs/rootfs   /       ufs     rw,noatime      1       1
> /dev/msdosfs/MSDOSBOOT /boot/msdos msdosfs rw,noatime 0 0
> md1 /tmp mfs rw,noatime,-s100m 0 0
> md2 /var/log mfs rw,noatime,-s15m 0 0
> md3 /var/tmp mfs rw,noatime,-s15m 0 0
> /dev/ufs/swap   none    swap    sw      0       0
> /dev/ufs/usr    /usr    ufs     rw,noatime      2       2
>=20
> da0 is a brand new 32G EMTEC USB2 memory key housing /usr and swap =
partitions.
>=20
> FreeBSD 12.0-CURRENT #0 r335317: Mon Jun 18 17:37:04 UTC 2018 =
root@releng3.nyi.freebsd.org:/usr/obj/usr/src/arm64.aarch64/sys/GENERIC =
arm64
>=20
> make -j4 buildworld resulted in:
>=20
> Jun 21 17:05:12 rpi3 kernel: pid 10326 (c++), uid 0, was killed: out =
of swap space
> --- CodeGen/AsmPrinter/CodeViewDebug.o ---
> c++: error: unable to execute command: Killed
> c++: error: clang frontend command failed due to signal (use -v to see =
invocation)
> FreeBSD clang version 6.0.0 (tags/RELEASE_600/final 326565) (based on =
LLVM 6.0.0)
> Target: aarch64-unknown-freebsd12.0
> Thread model: posix
> InstalledDir: /usr/bin
> c++: note: diagnostic msg: PLEASE submit a bug report to =
https://bugs.freebsd.org/submit/ and include the crash backtrace, =
preprocessed source, and associated run script.
> c++: note: diagnostic msg:
>=20
> I happened to have been watching top (5 second interval) at the time =
and of the 2G swap, only 45M was shown to be in use.

Are you getting errors such as those listed in:

https://lists.freebsd.org/pipermail/freebsd-arm/2018-June/018091.html

? If not, your context may be a better test case than Bob P.'s.

It looks like the latest from Bob P. is that when his /dev/da0
is not used for swap (and so has far less I/O) his builds finish,
apparently without logging errors:

=
http://www.zefox.net/~fbsd/rpi3/swaptests/newtests/1gbsdflash_1.3gbusbmech=
anical_swapinfo/readme

where he writes:

> This test used the 1 GB SD flash swap partition plus a 1.3 GB =
partition=20
> on a USB mechanical disk. The -j4 buildworld ran to completion without
> obvious errors, serving mostly to suggest there's nothing wrong with=20=

> the read/write behavior of /dev/da0, the USB flash drive holding /usr
> and with it /usr/obj.


(I do not share his conclusion about /dev/da0 based on the smaller
amount of I/O when it was not used for swapping.)

As far as I know the swap system is far more dependent on timely
I/O than the other I/O involved in a build.

Even without errors considered Bob was getting things like the
large ms/w figures below:

> Mon Jun 18 09:42:05 PDT 2018
> Device          1K-blocks     Used    Avail Capacity
> /dev/da0b         1048576     3412  1045164     0%
> /dev/mmcsd0s3b    1048576     3508  1045068     0%
> Total             2097152     6920  2090232     0%
> dT: 10.043s  w: 10.000s
> L(q)  ops/s    r/s   kBps   ms/r    w/s   kBps   ms/w    d/s   kBps   =
ms/d   %busy Name
>    0      0      0      0    0.0      0      9   10.8      0      0    =
0.0    0.1  mmcsd0
>   46      0      0      0    0.0      0     16  12355      0      0    =
0.0   85.9  da0
>    0      0      0      0    0.0      0      9   10.8      0      0    =
0.0    0.1  mmcsd0s3
>    0      0      0      0    0.0      0      9   10.8      0      0    =
0.0    0.1  mmcsd0s3a
>   33      0      0      0    0.0      0     22  12318      0      0    =
0.0  114.1  da0d
> Mon Jun 18 09:42:25 PDT 2018
> Device          1K-blocks     Used    Avail Capacity
> /dev/da0b         1048576     3412  1045164     0%
> /dev/mmcsd0s3b    1048576     3508  1045068     0%
> Total             2097152     6920  2090232     0%


Are you getting such during the swapping activity?

Overall: the I/O errors (if any) and the large ms/w (or ms/r) figures
are things to look for.

=3D=3D=3D
Mark Millard
marklmi at yahoo.com
( dsl-only.net went
away in early 2018-Mar)




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1D86911D-20D1-494A-822B-1C07C5598CB1>