Re: buildworld: lib/libc: install: short write to libc.so.7.debug: [_libinstall] Error code 71

2020-11-22 Thread Alexander Richardson
On Sun, 22 Nov 2020 at 16:06, Kyle Evans  wrote:
>
> On Sun, Nov 22, 2020 at 6:00 AM Dimitry Andric  wrote:
> >
> > On 22 Nov 2020, at 08:06, Graham Perrin  wrote:
> > >
> > > On 20/11/2020 09:57, Graham Perrin wrote:
> > >> On 16/11/2020 09:27, Graham Perrin wrote:
> > >>> Attempting to build r367615 on Friday 13th:
> > >>>
> > >>> …
> > >>>
> > >>> ===> lib/libprocstat/zfs (install)
> > >>> install -U  -C -o root -g wheel -m 444 
> > >>> /usr/src/lib/libprocstat/libprocstat.h 
> > >>> /usr/obj/usr/src/amd64.amd64/tmp/usr/include/
> > >>> ===> lib/libc (obj,all,install)
> > >>> install -U  -C -o root -g wheel -m 444   libc.a 
> > >>> /usr/obj/usr/src/amd64.amd64/tmp/usr/lib/
> > >>> install -U  -s -o root -g wheel -m 444   -S  libc.so.7 
> > >>> /usr/obj/usr/src/amd64.amd64/tmp/lib/
> > >>> install -U  -o root -g wheel -m 444libc.so.7.debug 
> > >>> /usr/obj/usr/src/amd64.amd64/tmp/usr/lib/debug/lib/
> > >>> install: short write to 
> > >>> /usr/obj/usr/src/amd64.amd64/tmp/usr/lib/debug/lib/libc.so.7.debug: 
> > >>> 393216 bytes written, 7462472 bytes asked to write
> > >>> *** [_libinstall] Error code 71
> > >>>
> > >>> make[4]: stopped in /usr/src/lib/libc
> > >>> 1 error
> > >>>
> > >>> make[4]: stopped in /usr/src/lib/libc
> > >>> root@mowa219-gjp4-8570p:/usr/src #
> > >>
> > >> The same problem – short write to 
> > >> /usr/obj/usr/src/amd64.amd64/tmp/usr/lib/debug/lib/libc.so.7.debug – 
> > >> when attempting buildworld of r367847.
> > >>
> > >> If it's relevant: I'm using r367081 for these attempts.
> > >
> > > The same problem when attempting buildworld of r367923. Prior to this I 
> > > performed a fresh checkout of /usr/src
> > >
> > > What might cause these failures?
> > >
> > > If it's relevant: I have compression set to gzip-9 for the ZFS dataset 
> > > that mounts at /usr
> >
> > I'd guess it's an unintended side-effect of
> > https://svnweb.freebsd.org/base?view=revision&revision=366697
> > ("install(1): Avoid unncessary fstatfs() calls and use mmap() based on
> > size").
> >
>
> Almost certainly -- before, we would never attempt to mmap() on ZFS.
>
> Tossing arichardson@ into CC as the committer
> Tossing mmacy@ and freqlabs@ into CC as ZFS folks
>
> Looking through sys/contrib/openzfs, there's special handling for mmap
> on linux because it bypasses the page cache and relies on caching in
> ARC. AFAICT the FreeBSD side seems to handle write() to mmap'd
> regions, but doesn't do anything with VOP_MMAPPED which might be
> needed to sync the file when it's mmap'd for reading like this. My
> understanding of how this is supposed to actually work on FreeBSD is
> limited, though, so I defer...
>
I'm quite surprised by this, I simply re-used the logic that bin/cp also has.
However, it's possible that this is no longer used in cp due to copy_file_range?
To be honest I'm not sure whether mmap() even improves performance
compared to read/write since the all the MMU setup might be quite
expensive and the data might not even be available so we end up
copying anyway. Maybe we should change install to use read/write
unconditionally? It might also make sense to factor out the
copy_file_range+read/write fallback logic in bin/cp to a library that
can be used in usr.bin/install.

Alex
___
freebsd-current@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"


Re: buildworld: lib/libc: install: short write to libc.so.7.debug: [_libinstall] Error code 71

2020-11-22 Thread Kyle Evans
On Sun, Nov 22, 2020 at 6:00 AM Dimitry Andric  wrote:
>
> On 22 Nov 2020, at 08:06, Graham Perrin  wrote:
> >
> > On 20/11/2020 09:57, Graham Perrin wrote:
> >> On 16/11/2020 09:27, Graham Perrin wrote:
> >>> Attempting to build r367615 on Friday 13th:
> >>>
> >>> …
> >>>
> >>> ===> lib/libprocstat/zfs (install)
> >>> install -U  -C -o root -g wheel -m 444 
> >>> /usr/src/lib/libprocstat/libprocstat.h 
> >>> /usr/obj/usr/src/amd64.amd64/tmp/usr/include/
> >>> ===> lib/libc (obj,all,install)
> >>> install -U  -C -o root -g wheel -m 444   libc.a 
> >>> /usr/obj/usr/src/amd64.amd64/tmp/usr/lib/
> >>> install -U  -s -o root -g wheel -m 444   -S  libc.so.7 
> >>> /usr/obj/usr/src/amd64.amd64/tmp/lib/
> >>> install -U  -o root -g wheel -m 444libc.so.7.debug 
> >>> /usr/obj/usr/src/amd64.amd64/tmp/usr/lib/debug/lib/
> >>> install: short write to 
> >>> /usr/obj/usr/src/amd64.amd64/tmp/usr/lib/debug/lib/libc.so.7.debug: 
> >>> 393216 bytes written, 7462472 bytes asked to write
> >>> *** [_libinstall] Error code 71
> >>>
> >>> make[4]: stopped in /usr/src/lib/libc
> >>> 1 error
> >>>
> >>> make[4]: stopped in /usr/src/lib/libc
> >>> root@mowa219-gjp4-8570p:/usr/src #
> >>
> >> The same problem – short write to 
> >> /usr/obj/usr/src/amd64.amd64/tmp/usr/lib/debug/lib/libc.so.7.debug – when 
> >> attempting buildworld of r367847.
> >>
> >> If it's relevant: I'm using r367081 for these attempts.
> >
> > The same problem when attempting buildworld of r367923. Prior to this I 
> > performed a fresh checkout of /usr/src
> >
> > What might cause these failures?
> >
> > If it's relevant: I have compression set to gzip-9 for the ZFS dataset that 
> > mounts at /usr
>
> I'd guess it's an unintended side-effect of
> https://svnweb.freebsd.org/base?view=revision&revision=366697
> ("install(1): Avoid unncessary fstatfs() calls and use mmap() based on
> size").
>

Almost certainly -- before, we would never attempt to mmap() on ZFS.

Tossing arichardson@ into CC as the committer
Tossing mmacy@ and freqlabs@ into CC as ZFS folks

Looking through sys/contrib/openzfs, there's special handling for mmap
on linux because it bypasses the page cache and relies on caching in
ARC. AFAICT the FreeBSD side seems to handle write() to mmap'd
regions, but doesn't do anything with VOP_MMAPPED which might be
needed to sync the file when it's mmap'd for reading like this. My
understanding of how this is supposed to actually work on FreeBSD is
limited, though, so I defer...

Thanks,

Kyle Evans
___
freebsd-current@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"


Re: buildworld: lib/libc: install: short write to libc.so.7.debug: [_libinstall] Error code 71

2020-11-22 Thread Dimitry Andric
On 22 Nov 2020, at 08:06, Graham Perrin  wrote:
> 
> On 20/11/2020 09:57, Graham Perrin wrote:
>> On 16/11/2020 09:27, Graham Perrin wrote:
>>> Attempting to build r367615 on Friday 13th:
>>> 
>>> …
>>> 
>>> ===> lib/libprocstat/zfs (install)
>>> install -U  -C -o root -g wheel -m 444 
>>> /usr/src/lib/libprocstat/libprocstat.h 
>>> /usr/obj/usr/src/amd64.amd64/tmp/usr/include/
>>> ===> lib/libc (obj,all,install)
>>> install -U  -C -o root -g wheel -m 444   libc.a 
>>> /usr/obj/usr/src/amd64.amd64/tmp/usr/lib/
>>> install -U  -s -o root -g wheel -m 444   -S  libc.so.7 
>>> /usr/obj/usr/src/amd64.amd64/tmp/lib/
>>> install -U  -o root -g wheel -m 444libc.so.7.debug 
>>> /usr/obj/usr/src/amd64.amd64/tmp/usr/lib/debug/lib/
>>> install: short write to 
>>> /usr/obj/usr/src/amd64.amd64/tmp/usr/lib/debug/lib/libc.so.7.debug: 393216 
>>> bytes written, 7462472 bytes asked to write
>>> *** [_libinstall] Error code 71
>>> 
>>> make[4]: stopped in /usr/src/lib/libc
>>> 1 error
>>> 
>>> make[4]: stopped in /usr/src/lib/libc
>>> root@mowa219-gjp4-8570p:/usr/src #
>> 
>> The same problem – short write to 
>> /usr/obj/usr/src/amd64.amd64/tmp/usr/lib/debug/lib/libc.so.7.debug – when 
>> attempting buildworld of r367847.
>> 
>> If it's relevant: I'm using r367081 for these attempts.
> 
> The same problem when attempting buildworld of r367923. Prior to this I 
> performed a fresh checkout of /usr/src
> 
> What might cause these failures?
> 
> If it's relevant: I have compression set to gzip-9 for the ZFS dataset that 
> mounts at /usr

I'd guess it's an unintended side-effect of
https://svnweb.freebsd.org/base?view=revision&revision=366697
("install(1): Avoid unncessary fstatfs() calls and use mmap() based on
size").

If you only revert usr.bin/xinstall to r366696, and then rebuild it,
does it still occur?

-Dimitry



signature.asc
Description: Message signed with OpenPGP


r367927 buildkernel stops on isp.o undeclared ATPDPSIZE

2020-11-22 Thread Peter Libassi
svnlite info /usr/src

Path: .
Working Copy Root Path: /usr/src
URL: https://svn.freebsd.org/base/head
Relative URL: ^/head
Repository Root: https://svn.freebsd.org/base
Repository UUID: ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
Revision: 367927
Node Kind: directory
Schedule: normal
Last Changed Author: rew
Last Changed Rev: 367927
Last Changed Date: 2020-11-22 06:00:28 +0100 (Sun, 22 Nov 2020)

make -j4 buildkernel KERNCONF="GENERIC-NODEBUG”

--- isp.o ---
/usr/src/sys/dev/isp/isp.c:750:50: error: use of undeclared identifier 
'ATPDPSIZE'
icbp->icb_xchgcnt = MIN(isp->isp_maxcmds / 2, 
ATPDPSIZE);
  ^
/usr/src/sys/dev/isp/isp.c:750:50: error: use of undeclared identifier 
'ATPDPSIZE'
2 errors generated.
*** [isp.o] Error code 1

make[2]: stopped in /usr/obj/usr/src/amd64.amd64/sys/GENERIC-NODEBUG
--- modules-all ---
ctfconvert -L VERSION -g ar5212_eeprom.o
*** [modules-all] Error code 2

make[2]: stopped in /usr/obj/usr/src/amd64.amd64/sys/GENERIC-NODEBUG
--- isp_freebsd.o ---
ctfconvert -L VERSION -g isp_freebsd.o
--- if_ipw.o ---
ctfconvert -L VERSION -g if_ipw.o
2 errors

make[2]: stopped in /usr/obj/usr/src/amd64.amd64/sys/GENERIC-NODEBUG


/Peter
___
freebsd-current@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"


Re: buildworld: lib/libc: install: short write to libc.so.7.debug: [_libinstall] Error code 71

2020-11-22 Thread Graham Perrin

On 17/11/2020 00:39, Konstantin Belousov wrote:

On Mon, Nov 16, 2020 at 10:56:06AM +, Graham Perrin wrote:

On 16/11/2020 09:32, Benjamin Kaduk wrote:

On Mon, Nov 16, 2020 at 09:27:29AM +, Graham Perrin wrote:

Attempting to build r367615 on Friday 13th:

…

===> lib/libprocstat/zfs (install)
install -U  -C -o root -g wheel -m 444
/usr/src/lib/libprocstat/libprocstat.h
/usr/obj/usr/src/amd64.amd64/tmp/usr/include/
===> lib/libc (obj,all,install)
install -U  -C -o root -g wheel -m 444   libc.a
/usr/obj/usr/src/amd64.amd64/tmp/usr/lib/
install -U  -s -o root -g wheel -m 444   -S  libc.so.7
/usr/obj/usr/src/amd64.amd64/tmp/lib/
install -U  -o root -g wheel -m 444    libc.so.7.debug
/usr/obj/usr/src/amd64.amd64/tmp/usr/lib/debug/lib/
install: short write to
/usr/obj/usr/src/amd64.amd64/tmp/usr/lib/debug/lib/libc.so.7.debug:
393216 bytes written, 7462472 bytes asked to write
*** [_libinstall] Error code 71

Is your disk/filesystem full?

-Ben

AVAIL: 204G

And what is the type of filesystem you are _installing_ to ?
Also what is the type of filesystem for /tmp, and how much space do you
have there ?


root@mowa219-gjp4-8570p:~ # zfs get available,compression copperbowl/tmp 
copperbowl/usr

NAME    PROPERTY VALUE   SOURCE
copperbowl/tmp  available    221G    -
copperbowl/tmp  compression  off local
copperbowl/usr  available    221G    -
copperbowl/usr  compression  gzip-9  local
root@mowa219-gjp4-8570p:~ # zfs list
NAME   USED  AVAIL REFER  MOUNTPOINT
copperbowl 213G   221G 88K  /copperbowl
copperbowl/ROOT   97.5G   221G 88K  none
copperbowl/ROOT/Waterfox   348M   221G 59.3G  /
copperbowl/ROOT/r367081e  1.61M   221G 38.0G  /
copperbowl/ROOT/r367081f  97.2G   221G 39.2G  /
copperbowl/VirtualBox  288K   221G 288K  
/usr/local/VirtualBox
copperbowl/iocage 4.35G   221G 3.68M  
/copperbowl/iocage
copperbowl/iocage/download 359M   221G 88K  
/copperbowl/iocage/download
copperbowl/iocage/download/12.0-RELEASE    359M   221G 359M  
/copperbowl/iocage/download/12.0-RELEASE
copperbowl/iocage/images    88K   221G 88K  
/copperbowl/iocage/images
copperbowl/iocage/jails   2.75G   221G 88K  
/copperbowl/iocage/jails
copperbowl/iocage/jails/jbrowsers 2.75G   221G 92K  
/copperbowl/iocage/jails/jbrowsers
copperbowl/iocage/jails/jbrowsers/root    2.75G   221G 3.99G  
/copperbowl/iocage/jails/jbrowsers/root
copperbowl/iocage/log  100K   221G 100K  
/copperbowl/iocage/log
copperbowl/iocage/releases    1.24G   221G 88K  
/copperbowl/iocage/releases
copperbowl/iocage/releases/12.0-RELEASE   1.24G   221G 88K  
/copperbowl/iocage/releases/12.0-RELEASE
copperbowl/iocage/releases/12.0-RELEASE/root  1.24G   221G 1.24G  
/copperbowl/iocage/releases/12.0-RELEASE/root
copperbowl/iocage/templates 88K   221G 88K  
/copperbowl/iocage/templates
copperbowl/poudriere  35.9G   221G 88K  
/copperbowl/poudriere
copperbowl/poudriere/data 1.73G   221G 96K  
/usr/local/poudriere/data
copperbowl/poudriere/data/.m    88K   221G 88K  
/usr/local/poudriere/data/.m
copperbowl/poudriere/data/cache    224K   221G 224K  
/usr/local/poudriere/data/cache
copperbowl/poudriere/data/logs    1.71G   221G 1.71G  
/usr/local/poudriere/data/logs
copperbowl/poudriere/data/packages    24.3M   221G 24.3M  
/usr/local/poudriere/data/packages
copperbowl/poudriere/data/wrkdirs   88K   221G 88K  
/usr/local/poudriere/data/wrkdirs
copperbowl/poudriere/jails    2.05G   221G 88K  
/copperbowl/poudriere/jails
copperbowl/poudriere/jails/head   2.05G   221G 2.05G  
/usr/local/poudriere/jails/head
copperbowl/poudriere/ports    32.1G   221G 88K  
/copperbowl/poudriere/ports
copperbowl/poudriere/ports/default    32.1G   221G 32.1G  
/usr/local/poudriere/ports/default

copperbowl/tmp 808K   221G 808K  /tmp
copperbowl/usr    70.4G   221G 88K  /usr
copperbowl/usr/home   67.5G   221G 61.9G  /usr/home
copperbowl/usr/ports  1.83G   221G 1.83G  /usr/ports
copperbowl/usr/src    1.06G   221G 1.06G  /usr/src
copperbowl/var    4.14G   221G 88K  /var
copperbowl/var/audit    88K   221G 88K  /var/audit
copperbowl/var/crash  3.81G   221G 3.81G  /var/crash
copperbowl/var/log    15.7M   221G 15.7M  /var/log
copperbowl/var/mail    136K   221G 136K  /var/mail
copperbowl/var/tmp