Re: RFC: Use of VOP_ALLOCATE() by NFSV4.2 nfsd

2021-10-10 Thread Willem Jan Withagen via freebsd-current

On 10-10-2021 07:57, Rick Macklem wrote:



This leads me to a couple of questions:
- Is there a good reason for not using vop_stdallocate() for ZFS?

Yes.  posix_fallocate is supposed to guarantee that subsequent writes
to the file will not fail with ENOSPC.  But ZFS, being a copy-on-write
file system, cannot possibly guarantee that.  See SVN r325320.

However, vop_stdallocate() just does VOP_WRITE()s to the area (with
bytes of data all zeros). Wouldn't that satisfy the criteria?

I had the same problem in Ceph, where a guaranteed writable space is 
required
for keeping a log of modifications to the system. Not having this space 
might case loss of data.


Writing al zero's is probably even worse on filesystems that have 
compression set.

Almost nothing is allocated, and so no guarantee at all.
Next trick wass to write random data, but then you run into the problem 
signaled by

Alan and Warner. New writes will need free space, since the CoW nature.

Solution was to actually create a specific zpool just for this.
But that will not help you with NFS 4.2 I guess

--WjW




Re: PATH: /usr/local before or after /usr ?

2021-08-15 Thread Willem Jan Withagen via freebsd-current

On 16-7-2021 18:46, Ian Lepore wrote:

On Fri, 2021-07-16 at 09:01 -0600, Alan Somers wrote:

FreeBSD has always placed /usr/local/X after /usr/X in the default PATH.
AFAICT that convention began with SVN revision 37 "Initial import of 386BSD
0.1 othersrc/etc".  Why is that?  It would make sense to me that
/usr/local/X should come first.  That way programs installed from ports can
override FreeBSD's defaults.  Is there a good reason for this convention,
or is it just inertia?
-Alan

I have a hierarchy on my machines rooted at /local and /local/bin is
before /bin and /usr/bin in my PATH, so I can override system tools
when I explicitly want to without suffering any problems of an
unexpected override from installing a port or package.

If you're using ports as a development environment to work on a new
gstat replacement, you could do something similar and put PREFIX=/local
in your port makefile while you're developing on it.

+1

Cannot recall running into any issues over a long time.
I'm only annoyed by having to fix access to installed ports when this 
reorder

is not done...

Perhaps just don't do this for root?

--WjW



Re: Changes to backtrace() ??

2021-07-02 Thread Willem Jan Withagen via freebsd-current

On 2-7-2021 12:17, Tobias Kortkamp wrote:

On Fri, Jul 02, 2021 at 11:52:14AM +0200, Willem Jan Withagen via 
freebsd-current wrote:

Hi,

Have there been changes in the backtrace() calls?
I recently upgraded my current server, and now the Ceph backtrace test
starts to fail

It looks like it is implemented in the llvm code.
So it could be that something is off in that code.

lang/rust also fails to build on at least aarch64 after the LLVM12
import (the prebuilt bootstrap crashes).  Very similar backtrace.
See https://bugs.freebsd.org/256864

Yup,
That trace looks very similar.

Forgot to explicitly mention that my problem is with a very recent 14.0
FreeBSD quad-b.digiware.nl 14.0-CURRENT FreeBSD 14.0-CURRENT #1 
main-n247587-33b8c039a96: Sun Jun 27 21:19:03 CEST 2021 
r...@quad-b.digiware.nl:/usr/obj/usr/src/amd64.amd64/sys/GENERIC-NODEBUG 
amd64


The one before that was from around early May, and that did not have the
problem...
I have a Jenkins builder/tester that checks all changes that get submitted.
And only after the upgrade last weekend things started to go wrong.

But I do not track changes to current so I have no clue as to what has 
changed there.


--WjW




Changes to backtrace() ??

2021-07-02 Thread Willem Jan Withagen via freebsd-current

Hi,

Have there been changes in the backtrace() calls?
I recently upgraded my current server, and now the Ceph backtrace test
starts to fail

It looks like it is implemented in the llvm code.
So it could be that something is off in that code.

--WjW

Program terminated with signal SIGSEGV, Segmentation fault.
#0  libunwind::LocalAddressSpace::get32 (this=0x80b144828 
, addr=408197395)

    at /usr/src/contrib/llvm-project/libunwind/src/AddressSpace.hpp:164
164 memcpy(, (void *)addr, sizeof(val));
(gdb) bt
#0  libunwind::LocalAddressSpace::get32 (this=0x80b144828 
, addr=408197395)

    at /usr/src/contrib/llvm-project/libunwind/src/AddressSpace.hpp:164
#1 libunwind::CFI_Parser::findFDE 
(addressSpace=..., pc=pc@entry=4578143, ehSectionStart=5219072,
    sectionLength=, fdeHint=, 
fdeHint@entry=0, fdeInfo=fdeInfo@entry=0x7fffd7a0, 
cieInfo=0x7fffd768)

    at /usr/src/contrib/llvm-project/libunwind/src/DwarfParser.hpp:233
#2  0x00080b141091 in 
libunwind::UnwindCursorlibunwind::Registers_x86_64>::getInfoFromDwarfSection (
    this=this@entry=0x7fffdde0, pc=pc@entry=4578143, sects=..., 
fdeSectionOffsetHint=fdeSectionOffsetHint@entry=0)

    at /usr/src/contrib/llvm-project/libunwind/src/UnwindCursor.hpp:1566
#3  0x00080b13db40 in 
libunwind::UnwindCursorlibunwind::Registers_x86_64>::setInfoBasedOnIPRegister (
    this=0x7fffdde0, isReturnAddress=true) at 
/usr/src/contrib/llvm-project/libunwind/src/UnwindCursor.hpp:1958
#4  0x00080b13d99b in 
libunwind::UnwindCursorlibunwind::Registers_x86_64>::step (this=0x7fffdde0)

    at /usr/src/contrib/llvm-project/libunwind/src/UnwindCursor.hpp:2103
#5  0x00080b13b345 in _Unwind_Backtrace (callback=0x80ace5fe0 
, ref=0x7fffdf78)
    at 
/usr/src/contrib/llvm-project/libunwind/src/UnwindLevel1-gcc-ext.c:131
#6  0x00080ace5fa7 in backtrace (arr=, len=out>) at /usr/src/contrib/libexecinfo/unwind.c:69

#7  0x0045e698 in ceph::BackTrace::BackTrace(int) ()
#8  0x0045dd94 in foo() ()
#9  0x0045dfc8 in BackTrace_Basic_Test::TestBody() ()
#10 0x004ddaeb in void 
testing::internal::HandleSehExceptionsInMethodIfSupportedvoid>(testing::Test*, void (testing::Test::*)(), char const*) ()
#11 0x004c468a in void 
testing::internal::HandleExceptionsInMethodIfSupportedvoid>(testing::Test*, void (testing::Test::*)(), char const*) ()

#12 0x004a7d43 in testing::Test::Run() ()
#13 0x004a88f4 in testing::TestInfo::Run() ()
#14 0x004a8efb in testing::TestSuite::Run() ()
#15 0x004b44ca in testing::internal::UnitTestImpl::RunAllTests() ()
#16 0x004e220b in bool 
testing::internal::HandleSehExceptionsInMethodIfSupportedbool>(testing::internal::UnitTestImpl*, bool 
(testing::internal::UnitTestImpl::*)(), char const*) ()
#17 0x004c6a9a in bool 
testing::internal::HandleExceptionsInMethodIfSupportedbool>(testing::internal::UnitTestImpl*, bool 
(testing::internal::UnitTestImpl::*)(), char const*) ()

#18 0x004b408e in testing::UnitTest::Run() ()
#19 0x004850f1 in RUN_ALL_TESTS() ()
#20 0x004850cb in main ()




Re: Trying to build Current

2021-04-16 Thread Willem Jan Withagen via freebsd-current

On 15-4-2021 14:20, Emmanuel Vadot wrote:

On Thu, 15 Apr 2021 10:51:39 +0200
Willem Jan Withagen via freebsd-current 
wrote:


Hi,

I actually went completely back to the basic setup with directories
/usr/src and /usr/obj
But even then I do not manage to buildworld.
The process keeps bumping into missing bsm/audit.

First case was when it tried to build the 64bit libc.
I copied the bsm directory into
      /usr/obj/usr/src/amd64.amd64/tmp/usr/include/sys/

Which allowed it to continue.
But then a bit further on it halts again in 32bit libc.
Whcih I could fix the same way.

--- fts.o ---
In file included from /usr/src/lib/libc/gen/fts.c:40:
In file included from
/usr/obj/usr/src/amd64.amd64/obj-lib32/tmp/usr/include/sys/mount.h:38:
/usr/obj/usr/src/amd64.amd64/obj-lib32/tmp/usr/include/sys/ucred.h:42:10:
fatal error: 'bsm/audit.h' file not found
#include 
   ^

Even defining HISTORICAL_MAKE_WORLD did not help, but then I'm not doing
'make world'

So why is this include file missing?



  Try with
https://cgit.freebsd.org/src/commit/?id=f41efc453ab5563cde214cb19273d87e6e4aa2d4
applied.
  You probably have WITHOUT_AUDIT=yes in src.conf


That seems to do the trick.

Thanx,
--WjW


___
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: Trying to build Current

2021-04-15 Thread Willem Jan Withagen via freebsd-current

On 15-4-2021 14:20, Emmanuel Vadot wrote:

On Thu, 15 Apr 2021 10:51:39 +0200
Willem Jan Withagen via freebsd-current 
wrote:


Hi,

I actually went completely back to the basic setup with directories
/usr/src and /usr/obj
But even then I do not manage to buildworld.
The process keeps bumping into missing bsm/audit.

First case was when it tried to build the 64bit libc.
I copied the bsm directory into
      /usr/obj/usr/src/amd64.amd64/tmp/usr/include/sys/

Which allowed it to continue.
But then a bit further on it halts again in 32bit libc.
Whcih I could fix the same way.

--- fts.o ---
In file included from /usr/src/lib/libc/gen/fts.c:40:
In file included from
/usr/obj/usr/src/amd64.amd64/obj-lib32/tmp/usr/include/sys/mount.h:38:
/usr/obj/usr/src/amd64.amd64/obj-lib32/tmp/usr/include/sys/ucred.h:42:10:
fatal error: 'bsm/audit.h' file not found
#include 
   ^

Even defining HISTORICAL_MAKE_WORLD did not help, but then I'm not doing
'make world'

So why is this include file missing?



  Try with
https://cgit.freebsd.org/src/commit/?id=f41efc453ab5563cde214cb19273d87e6e4aa2d4
applied.
  You probably have WITHOUT_AUDIT=yes in src.conf



I'm pretty sure that was one of the settings in src.conf.

But the fan in the powersupply of my builder has crashed, and leaving my 
office smelling of melted plastic. ;(


So I first need to find a replacement PSU.

--WjW


___
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: Trying to build Current

2021-04-15 Thread Willem Jan Withagen via freebsd-current

On 15-4-2021 12:44, Yuri Pankov wrote:

Willem Jan Withagen via freebsd-current wrote:

On 15-4-2021 11:47, Gary Jennejohn wrote:

On Thu, 15 Apr 2021 10:51:39 +0200
Willem Jan Withagen via freebsd-current 
wrote:


Hi,

I actually went completely back to the basic setup with directories
/usr/src and /usr/obj
But even then I do not manage to buildworld.
The process keeps bumping into missing bsm/audit.

First case was when it tried to build the 64bit libc.
I copied the bsm directory into
   __ /usr/obj/usr/src/amd64.amd64/tmp/usr/include/sys/

Which allowed it to continue.
But then a bit further on it halts again in 32bit libc.
Whcih I could fix the same way.

--- fts.o ---
In file included from /usr/src/lib/libc/gen/fts.c:40:
In file included from
/usr/obj/usr/src/amd64.amd64/obj-lib32/tmp/usr/include/sys/mount.h:38:
/usr/obj/usr/src/amd64.amd64/obj-lib32/tmp/usr/include/sys/ucred.h:42:10:

fatal error: 'bsm/audit.h' file not found
#include 
    ^

Even defining HISTORICAL_MAKE_WORLD did not help, but then I'm not doing
'make world'

So why is this include file missing?


Try running make includes first. This step is missing because you are NOT
doing a buildworld.


Well actual the commands were:

rm -rf /usr/src /usr/obj
mkdir -p /usr/src /usr/obj
cd /usr/src
git clone https://git.freebsd.org/src.git .
make -j16 buildworld

But I'll give it a shot anyways.

Anything in /etc/make.conf and /etc/src.conf?

I had the same idea,  but only after I asked the question
There was quite a lot of old cruft there
Removed it all, and I'm trying fresh again.
But Clang building, even with ccache takes quite some time.

--WjW
--WjW
___
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: Trying to build Current

2021-04-15 Thread Willem Jan Withagen via freebsd-current

On 15-4-2021 11:47, Gary Jennejohn wrote:

On Thu, 15 Apr 2021 10:51:39 +0200
Willem Jan Withagen via freebsd-current  wrote:


Hi,

I actually went completely back to the basic setup with directories
/usr/src and /usr/obj
But even then I do not manage to buildworld.
The process keeps bumping into missing bsm/audit.

First case was when it tried to build the 64bit libc.
I copied the bsm directory into
  __ /usr/obj/usr/src/amd64.amd64/tmp/usr/include/sys/

Which allowed it to continue.
But then a bit further on it halts again in 32bit libc.
Whcih I could fix the same way.

--- fts.o ---
In file included from /usr/src/lib/libc/gen/fts.c:40:
In file included from
/usr/obj/usr/src/amd64.amd64/obj-lib32/tmp/usr/include/sys/mount.h:38:
/usr/obj/usr/src/amd64.amd64/obj-lib32/tmp/usr/include/sys/ucred.h:42:10:
fatal error: 'bsm/audit.h' file not found
#include 
   ^

Even defining HISTORICAL_MAKE_WORLD did not help, but then I'm not doing
'make world'

So why is this include file missing?


Try running make includes first. This step is missing because you are NOT
doing a buildworld.


Well actual the commands were:

rm -rf /usr/src /usr/obj
mkdir -p /usr/src /usr/obj
cd /usr/src
git clone https://git.freebsd.org/src.git .
make -j16 buildworld

But I'll give it a shot anyways.

--WjW
___
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"


Trying to build Current

2021-04-15 Thread Willem Jan Withagen via freebsd-current

Hi,

I actually went completely back to the basic setup with directories 
/usr/src and /usr/obj

But even then I do not manage to buildworld.
The process keeps bumping into missing bsm/audit.

First case was when it tried to build the 64bit libc.
I copied the bsm directory into
    /usr/obj/usr/src/amd64.amd64/tmp/usr/include/sys/

Which allowed it to continue.
But then a bit further on it halts again in 32bit libc.
Whcih I could fix the same way.

--- fts.o ---
In file included from /usr/src/lib/libc/gen/fts.c:40:
In file included from 
/usr/obj/usr/src/amd64.amd64/obj-lib32/tmp/usr/include/sys/mount.h:38:
/usr/obj/usr/src/amd64.amd64/obj-lib32/tmp/usr/include/sys/ucred.h:42:10: 
fatal error: 'bsm/audit.h' file not found

#include 
 ^

Even defining HISTORICAL_MAKE_WORLD did not help, but then I'm not doing 
'make world'


So why is this include file missing?

--WjW

___
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"