Date: Tue, 8 Nov 2022 09:37:35 -0800 From: Mark Millard <marklmi@yahoo.com> To: Archimedes Gaviola <archimedes.gaviola@gmail.com> Cc: Ronald Klop <ronald-lists@klop.ws>, freebsd-current <freebsd-current@freebsd.org> Subject: Re: 14.0-CURRENT failed to reclaim memory error in RPi 3B build Message-ID: <1E33E6A3-ABB8-4804-B2A2-0E95E853C860@yahoo.com> In-Reply-To: <1722758786.127406.1667909706281@localhost> References: <84376CC9-B991-4BF3-AF5F-0AA09CB28339.ref@yahoo.com> <84376CC9-B991-4BF3-AF5F-0AA09CB28339@yahoo.com> <CAJFbk7FfYPSe3eF00HgDdebW70HKp5zKR0JaChTVniUDPG2qxQ@mail.gmail.com> <CA350C16-3604-4D88-9C14-040A45F6F125@yahoo.com> <CAJFbk7Hxvr9gs7GnniWtJ-QEH4yjYbB9S-vKVLjipa8v5VHa%2Bw@mail.gmail.com> <CAJFbk7GQhvgQS-23jFfFf=ershgGNKByHR8ug08Df8merwkh6Q@mail.gmail.com> <A11AA52B-BDB0-43C7-BF85-3C252B276F17@yahoo.com> <CAJFbk7HnFTdzANtdERqvgX30hcHmufAZmrNvbfEWORkUJJ7_3w@mail.gmail.com> <CAJFbk7HJ1WA5Qc0LNEZpKgv78yiM0w7ex=gjgpjjTf3chhHhiQ@mail.gmail.com> <CANCZdfruoDPQE%2ByqebDomg8w7YKCkbFPvrPweJQUqoaOMN3rwA@mail.gmail.com> <1722758786.127406.1667909706281@localhost>
next in thread | previous in thread | raw e-mail | index | archive | help
On Nov 8, 2022, at 04:15, Ronald Klop <ronald-lists@klop.ws> wrote: > Van: Warner Losh <imp@bsdimp.com> > Datum: dinsdag, 8 november 2022 04:28 > Aan: Archimedes Gaviola <archimedes.gaviola@gmail.com > . . . > ... > swap_pager: indefinite wait buffer: bufobj: 0, blkno: 256929, size: = 4096 > swap_pager: indefinite wait buffer: bufobj: 0, blkno: 3628, size: 4096 > swap_pager: indefinite wait buffer: bufobj: 0, blkno: 255839, size: = 40960 > pid 46153 (c++), jid 0, uid 0, was killed: a thread waited too long to = allocate a page > swap_pager: indefinite wait buffer: bufobj: 0, blkno: 255857, size: = 28672 > swap_pager: indefinite wait buffer: bufobj: 0, blkno: 3634, size: 8192 > swap_pager: indefinite wait buffer: bufobj: 0, blkno: 256037, size: = 4096 > swap_pager: indefinite wait buffer: bufobj: 0, blkno: 255320, size: = 8192 > This means that paging to the swap partition and/or swap file took = too long (> 30 seconds... that's all that indefinite means). It also = means that it can't write to backing store dirty pages to give to = another process... > Typical reason is that the disk / flash is not responsive to writes = for some reason. You'll need to find why... I'd look at trims. > Or.... if you can't change the disk... you need to put less memory = pressure on it.. > Warner > =20 >=20 >=20 > NB: a way to put less memory pressure on it is not using -j3, but -j2 = or -j1 in your make command. >=20 Extending Ronold's comment: If things are really taking this long for the paging I/O, you might actually find, say, -j2 takes less elapsed time than -j3 because of the latencies involved in -j3 causing more overall delay. vm.pfault_oom_attempts=3D-1 would still be appropriate for avoiding I/O kills at any -jN: the smaller -jN just makes the issue less likely, not impossible. (Again, presuming sufficient swap/paging space if deadlock is to be well avoided.) (I use NVMe or SSD USB media that do not get such long delays but fit the power limitations of the context. I have about as little on microsd card media as I can get away with in my context. I also avoid spinning rust. Thus I've only gotten "indefinite wait buffer" or the like back before such was true, long ago.) =3D=3D=3D Mark Millard marklmi at yahoo.com
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1E33E6A3-ABB8-4804-B2A2-0E95E853C860>