re: CVS commit: src/distrib/sets/lists/base

2020-09-09 Thread matthew green
"Adam Ciarcinski" writes:
> Module Name:  src
> Committed By: adam
> Date: Tue Sep  8 13:01:47 UTC 2020
> 
> Modified Files:
>   src/distrib/sets/lists/base: shl.mi
> 
> Log Message:
> Restore libgomp, liblsan, and libstdc++ as GCC-only

thank you.


.mrg.


re: CVS commit: src/external/gpl3/binutils/dist/bfd

2020-09-07 Thread matthew green
> Modified Files:
>   src/external/gpl3/binutils/dist/bfd: Makefile.am Makefile.in
> 
> Log Message:
> Fix `build.sh tools -j1` compilation, where bfd.h wasn't generated early
> enough.

FWIW, this looks right to me and not a hack.  thanks.


.mrg.


re: CVS commit: src/sys/kern

2020-09-07 Thread matthew green
"Jason R Thorpe" writes:
> Module Name:  src
> Committed By: thorpej
> Date: Mon Sep  7 03:50:41 UTC 2020
> 
> Modified Files:
>   src/sys/kern: files.kern init_main.c
> 
> Log Message:
> Add the ability to set an alternate cnmagic in the kernel config
> file, e.g.:
> 
> optionsCNMAGIC="\"+\""

thanks!  i need this for my er4 that some how does do break properly..

options(4) update?


re: CVS commit: src/sbin/amrctl

2020-09-06 Thread matthew green
> What's wrong with printf("%s", NULL)? It produces '(null)', and at
> least it's visible something is missing there. I think gcc 9.3 is
> overly eager for this.

our libc "(null)" is beyond standard, and while useful,
the current result is UB from a standards POV.

it's a nice thing in that broken code doesn't crash and
you get a maybe OK result, but it's still bad code to
rely upon this -- it indicates an assertable condition
to me.

> Is it correct to just omit the parameter altogether and change output format

perhaps.  do you have a better idea?  "-"?

thanks.


.mrg.

> Jaromir
> 
> Le dim. 6 sept. 2020 =C3=A0 04:41, matthew green 
> >
> > Module Name:src
> > Committed By:   mrg
> > Date:   Sun Sep  6 02:34:03 UTC 2020
> >
> > Modified Files:
> > src/sbin/amrctl: amrctl.c
> >
> > Log Message:
> > avoid calling printf() %s with NULL.
> >
> >
> > To generate a diff of this commit:
> > cvs rdiff -u -r1.11 -r1.12 src/sbin/amrctl/amrctl.c
> >
> > Please note that diffs are not public domain; they are subject to the
> > copyright notices on the relevant files.
> >
> 


re: CVS commit: src/sys/arch/alpha/include

2020-09-03 Thread matthew green
"Jason R Thorpe" writes:
> Module Name:  src
> Committed By: thorpej
> Date: Thu Sep  3 04:20:54 UTC 2020
> 
> Modified Files:
>   src/sys/arch/alpha/include: cpu.h
> 
> Log Message:
> Garabage-collect curpcb / cpu_info::ci_curpcb.

does alpha have modules?  this may be a ABI change needing
a kernel version bump...


.mrg.


re: CVS commit: src/sys/uvm/pmap

2020-08-23 Thread matthew green
> Modified Files:
>   src/sys/uvm/pmap: pmap_segtab.c
> 
> Log Message:
> Remove the #if defined(__mips_n64) && PAGE_SIZE == 8192 and make the
> check MI - all PTs are PAGE_SIZE aligned

thanks!  that is a much better way of doing it.


.mrg.


re: CVS commit: src/share/man/man8

2020-08-15 Thread matthew green
> Yeah. I was hesistant to do it this way because hw.machine_arch didn't
> occur to me (uname gives the wrong thing for package sets on arm, etc)

"uname -p"?


.mrg.


re: CVS commit: src/sys

2020-08-10 Thread matthew green
matthew green writes:
> > also, these updates to video(4) don't require a kernel bump
> > so please revert that too.
> 
> but this part could be done if you do it fast..

uvideo(4) as a module proves me wrong about this one too..

however, i'm looking at the changes and i'm not 100% convinced
it's safe to simply replace this file as-is.

 - struct v4l2_pix_format is laid out differently
 - enum v4l2_buf_type <-> u_int32_t does not seem safe, in
   eg struct v4l2_buffer.  i *think* it may be, but it won't
   work with eg, -fshort-enums now.
 - struct v4l2_rect width/height are now unsigned (probably ok?)
 - struct v4l2_window has a new member (global_alpha)

... this is enough for you to need to look at all of these
closely to ensure you haven't broken binary compat.  please look
at all the structure layouts and ensure they aren't changed.

thanks.


.mrg.


re: CVS commit: src/sys

2020-08-10 Thread matthew green
> > Import sys/videoio.h from OpenBSD, this is just the Linux headers
> > concatenated together.
> 
> this seems very problematic in that you've added GPLv2 code
> into src/sys/sys.
> 
> please revert.

ah- i see it has dual-license, please ignore me.  thanks
to nia@ for the hint..

> also, these updates to video(4) don't require a kernel bump
> so please revert that too.

but this part could be done if you do it fast..


.mrg.


re: CVS commit: src/sys

2020-08-10 Thread matthew green
"Robert Swindells" writes:
> Module Name:  src
> Committed By: rjs
> Date: Mon Aug 10 19:27:28 UTC 2020
> 
> Modified Files:
>   src/sys/dev: video.c
>   src/sys/dev/usb: uvideo.c
>   src/sys/sys: videoio.h
> 
> Log Message:
> Add some extra V4L ioctl() requests to latest V4L userland to work.
> 
> Import sys/videoio.h from OpenBSD, this is just the Linux headers
> concatenated together.

this seems very problematic in that you've added GPLv2 code
into src/sys/sys.

please revert.

also, these updates to video(4) don't require a kernel bump
so please revert that too.


.mrg.


re: CVS commit: src/external/gpl3/gcc/dist/gcc/config/m68k

2020-08-10 Thread matthew green
> May be we should also check other ports for similar gotcha proactively?

good idea.  no other gcc/config/*/*netbsd* files define the
nasty STACK_BOUNDARY macro so hopefully we're good now.

thanks!


.mrg.


re: CVS commit: src/sys/arch

2020-08-10 Thread matthew green
thanks!

> XXX
> Apply similar fixes to other m68k ports.

yes...but also, a long-term project to consolidate all the
almost-identical m68k code copied into each port would
avoid this probably :-)


re: CVS commit: src/sys/dev

2020-07-28 Thread matthew green
"Jaromir Dolecek" writes:
> Module Name:  src
> Committed By: jdolecek
> Date: Tue Jul 28 09:36:05 UTC 2020
> 
> Modified Files:
>   src/sys/dev/ic: nvmevar.h
>   src/sys/dev/pci: nvme_pci.c
> 
> Log Message:
> add a quirk to disable MSI, and enable it for Intel SSD DC P4500
> 
> this device seems to cause serious system responsiveness issues when 
> configured
> to use MSI, while it works fine when configured for either INTx or MSI-X
> 
> this is important so this works well under Xen Dom0, which doesn't
> support MSI-X yet
> 
> fixes another issue reported as feedback for PR port-xen/55285 by Frank Kardel

i wonder if the label "force_intx" should be renamed now
that it can be active _after_ msi-x.

can't think of a good name, "skip_to_intx" maybe useful?

thanks.


.mrg.


re: CVS commit: src/usr.bin/make

2020-07-26 Thread matthew green
> In a follow-up commit, I adjusted the build scripts, and I'm doing a
> full build right now. I'm pretty confident that everything works now
> again, and if not, I'll fix it immediately.

thanks!


.mrg.


re: CVS commit: src/usr.bin/make

2020-07-26 Thread matthew green
"Roland Illig" writes:
> Module Name:  src
> Committed By: rillig
> Date: Sun Jul 26 07:15:26 UTC 2020
> 
> Modified Files:
>   src/usr.bin/make: Makefile
> Added Files:
>   src/usr.bin/make: lst.c
> Removed Files:
>   src/usr.bin/make/lst.lib: Makefile lstAppend.c lstAtEnd.c lstAtFront.c
>   lstClose.c lstConcat.c lstDatum.c lstDeQueue.c lstDestroy.c
>   lstDupl.c lstEnQueue.c lstFind.c lstFindFrom.c lstFirst.c
>   lstForEach.c lstForEachFrom.c lstInit.c lstInsert.c lstInt.h
>   lstIsAtEnd.c lstIsEmpty.c lstLast.c lstMember.c lstNext.c lstOpen.c
>   lstPrev.c lstRemove.c lstReplace.c lstSucc.c
> 
> Log Message:
> make(1): condense the list library into a single file

hi Roland.


this has broken the build:

cc: error: /usr/src3/usr.bin/make/lst.lib/*.c: No such file or directory

please be more careful with make changes they affect everyone.

thanks.


.mrg.


re: CVS commit: src/sys/arch/amiga/amiga

2020-07-21 Thread matthew green
thanks for getting more m68k working!

"Rin Okuyama" writes:
> Module Name:  src
> Committed By: rin
> Date: Tue Jul 21 06:39:31 UTC 2020
> 
> Modified Files:
>   src/sys/arch/amiga/amiga: locore.s
> 
> Log Message:
> Align tmpstk to 4-byte boundary in the same manner as mac68k.
> 
> However, unfortunately, this does not fix strange crashes of GCC8-compiled
> kernel, for which I cannot even enter DDB nor obtain crash dump.
> 
> We need further investigation...

boo.  can you update the README.gcc8 file (external/gpl3/gcc),
for the m68k: line on L87 or so, and add 'y' for the known
working kernels, and 'n' for the failed ones.

thanks.


.mrg.


re: CVS commit: src/sys/dev/pci

2020-07-17 Thread matthew green
"Jaromir Dolecek" writes:
> Module Name:  src
> Committed By: jdolecek
> Date: Fri Jul 17 09:48:21 UTC 2020
> 
> Modified Files:
>   src/sys/dev/pci: if_bnx.c
> 
> Log Message:
> re-enable MSI/MSI-X, the TX timeouts were caused by the IFF_OACTIVE handling,
> which was fixed in previous revision

"fixed IFF_OACTIVE" in modern netbsd means "removed IFF_OACTIVE
and handled it in the driver", as the flag is not SMP friendly.

any chance you can look at NET_MPSAFE here etc? :)

thanks.


.mrg.


re: CVS commit: src/sys/uvm

2020-07-16 Thread matthew green
"Rin Okuyama" writes:
> Module Name:  src
> Committed By: rin
> Date: Wed Jul 15 15:08:26 UTC 2020
> 
> Modified Files:
>   src/sys/uvm: uvm_physseg.c
> 
> Log Message:
> Fix typo. Use PRIxPADDR rather than casting.

thanks!  i'll try to remember we have PRIxPADDR because i
considered looking for it and thought we didn't have it...


.mrg.


re: CVS commit: src/share/mk

2020-07-13 Thread matthew green
Joerg Sonnenberger writes:
> On Mon, Jul 13, 2020 at 07:22:51AM +0000, matthew green wrote:
> > Module Name:src
> > Committed By:   mrg
> > Date:   Mon Jul 13 07:22:51 UTC 2020
> > 
> > Modified Files:
> > src/share/mk: bsd.README
> > 
> > Log Message:
> > MKLLVMRT is automatically enabled on x86 and arm64, not mesa18+.
> 
> It is both.

we only use mesa20 in xsrc now so there's no "choice"
about mesa here.  just haven't deleted mesa.old yet..


.mrg.


re: CVS commit: src/libexec/httpd

2020-07-13 Thread matthew green
thanks for this.  please cc me directly for bozohttpd changes,
i have a couple review comments :-)

> Committed By: jruoho
> Date: Sat Jul 11 08:10:52 UTC 2020
> 
> Modified Files:
>   src/libexec/httpd: Makefile auth-bozo.c bozohttpd.8 bozohttpd.c
>   bozohttpd.h
> 
> Log Message:
> Add blocklistd(8) support.
> 
> 
> To generate a diff of this commit:
> cvs rdiff -u -r1.28 -r1.29 src/libexec/httpd/Makefile
> cvs rdiff -u -r1.24 -r1.25 src/libexec/httpd/auth-bozo.c
> cvs rdiff -u -r1.80 -r1.81 src/libexec/httpd/bozohttpd.8
> cvs rdiff -u -r1.115 -r1.116 src/libexec/httpd/bozohttpd.c
> cvs rdiff -u -r1.61 -r1.62 src/libexec/httpd/bozohttpd.h

please add -DNO_BLOCKLIST_SUPPORT to Makefile.boot.

i'm not sure i agree about 500 -> abusive behaviour.  that's
when there's some _internal_ error and could just as easily
be caused by a human or code error on the server side.

i don't know blocklist well enough to suggestion what we 
should do here, but this feels wrong to me.

thanks again.


.mrg.


re: [mii locking] Re: CVS commit: src/sys

2020-07-13 Thread matthew green
> Since this change if_udav.c doesn't work. Simply plugging a USB-to-ethernet
> device triggers a page fault on mutex_enter in udav_attach.
> 
> Quickly looking at the code:
> 
> 240   usbnet_lock_core(un);
> 241   usbnet_busy(un);
> 242
> 243 ///* reset the adapter */
> 244 //udav_reset(un);
> 245
> 246   usbnet_attach(un, "udavdet");
> 
> usbnet_lock_core uses un_pri, but un_pri is initialized only in
> usbnet_attach.

can you move the lock_core/busy calls after attach, and see
if that works?

i'm pretty sure that's OK.  this appears to be the only
driver with this bug from my quick scan of them.

thanks!


.mrg.


re: CVS commit: src/sys/dev/ofw

2020-06-27 Thread matthew green
"Martin Husemann" writes:
> Module Name:  src
> Committed By: martin
> Date: Fri Jun 26 10:14:32 UTC 2020
> 
> Modified Files:
>   src/sys/dev/ofw: ofw_subr.c
> 
> Log Message:
> Remove !cold KASSERT - it does not compile on all kernels, and it is not the
> right thing to test for anyway. XXX should we panic instead? Are "compatible"
> strings this long happening in real devices?

IMO, best to panic with a clear message about what is wrong.


.mrg.


re: CVS commit: src/external/cddl/dtracetoolkit/dist/Man/man1m

2020-06-26 Thread matthew green
Sevan Janiyan writes:
> On 25/06/2020 12:42, matthew green wrote:
> > the manual in the tree might be called "foo.1m" by upstream,
> > however, we should just install those into man8/foo.8.
> > 
> > be nice to have a generic 1m -> 8 rule here, since i doubt
> > that upstream will change from svr4/solaris naming.
> 
> Ok, I'll take a look today.

probably be nice to have some auto-patching from foo.1m
-> foo.8 in the objdir, including updating other "1m"
refs, and perhaps some simple man->mandoc if it's
automateable...

thanks!


re: CVS commit: src/external/cddl/dtracetoolkit/dist/Man/man1m

2020-06-25 Thread matthew green
>  > The best way should be automatically converting them by some script
>  > when building. But if it is too difficult, we can install these files
>  > as is with minimum adjustments for our system; mandoc still works for
>  > them, although output is not very beautiful.
> 
> I shouldn't have made the changes here for another reason, as the 
> manuals are in man1m/$name.1m, it doesn't fit in easily with the 
> mechanism we have in src/share/mk for installing manuals which assumes 
> $name.[1-9].

the manual in the tree might be called "foo.1m" by upstream,
however, we should just install those into man8/foo.8.

be nice to have a generic 1m -> 8 rule here, since i doubt
that upstream will change from svr4/solaris naming.


.mrg.


re: CVS commit: src/sys/arch/x86/x86

2020-06-24 Thread matthew green
"Jaromir Dolecek" writes:
> Module Name:  src
> Committed By: jdolecek
> Date: Wed Jun 24 22:28:08 UTC 2020
> 
> Modified Files:
>   src/sys/arch/x86/x86: multiboot2.c
> 
> Log Message:
> don't try allocating 16KB of scratch space on stack
> 
> it's too early for kmem_alloc(), so use static variable in BSS; it's used
> post reloc, so don't need to use the RELOC() macros
> 
> XXX compile-tested only on i386

this one is quite a lot of lost wasted space.  can you find a
way to reuse these pages?  or use the x86-specific ways to
get early memory...

thanks.


.mrg.


re: CVS commit: src/sys/dev/ic

2020-06-24 Thread matthew green
"Jaromir Dolecek" writes:
> Module Name:  src
> Committed By: jdolecek
> Date: Wed Jun 24 19:55:25 UTC 2020
> 
> Modified Files:
>   src/sys/dev/ic: ibm561.c
> 
> Log Message:
> avoid allocating almost 5k struct ibm561data on stack in ibm561_cninit();
> it's too early for kmem_alloc(), so use static variable in BSS

this seems particularly wasteful for a driver that won't
be useful for most systems.

seems like a candidate for allow-listing instead, and as
it seems to only be relevant for alpha systems, that have
a fairly large stack (16K), and this will be called with
a fairly short call stack.


.mrg.


re: CVS commit: src/external/gpl3/gcc/usr.bin/host-libcpp

2020-06-24 Thread matthew green
> Modified Files:
>   src/external/gpl3/gcc/usr.bin/host-libcpp: Makefile
> 
> Log Message:
> PR bin/55411 (Akihiko HAYASHI)
> 
> Remove stray ``&&'' introduced in the previous revision, so that
> host tools are correctly passed to configure script.
> 
> No similar problem for gcc.old. No release branches are affected.

thanks!


re: CVS commit: src

2020-06-10 Thread matthew green
"Maxime Villard" writes:
> Module Name:  src
> Committed By: maxv
> Date: Sun Jun  7 09:45:20 UTC 2020
> 
> Modified Files:
>   src/etc: MAKEDEV.tmpl
>   src/sys/arch/amd64/conf: ALL GENERIC
>   src/sys/conf: files majors
>   src/sys/kern: files.kern subr_pool.c
> Added Files:
>   src/sys/kern: subr_fault.c
>   src/sys/sys: fault.h
> 
> Log Message:
> Add fault(4).

excellent!  thank you for this.


.mrg.


re: CVS commit: src

2020-06-06 Thread matthew green
"Jason R Thorpe" writes:
> Module Name:  src
> Committed By: thorpej
> Date: Sat Jun  6 21:26:00 UTC 2020
> 
> Modified Files:
>   src/lib/libprop: Makefile shlib_version

i wonder, since this adds to the kernel ABI, you should have
also bumped the kernel version, since modules using this new
version won't run on older versions of this version now.


.mrg.


re: CVS commit: src/sys/kern

2020-05-31 Thread matthew green
"Rin Okuyama" writes:
> Module Name:  src
> Committed By: rin
> Date: Sun May 31 08:33:48 UTC 2020
> 
> Modified Files:
>   src/sys/kern: kern_timeout.c
> 
> Log Message:
> db_show_callout(): struct callout_cpu and cpu_info are too much for stack.
> 
> XXX
> DDB can be running in the interrupt context, e.g., when activated from
> console. Therefore, use kmem_intr_alloc(9) instead of kmem_alloc(9).
> 
> Frame size, e.g. for m68k, becomes:
> 9212 (oops!) --> 0

please don't use allocators from ddb.  inspection from ddb
shouldn't go change internal datastructures and rely upon
things that can break working where possible

allocate a single static in the bss to use?


.mrg.


re: CVS commit: src/sys/arch/xen

2020-05-15 Thread matthew green
"Jaromir Dolecek" writes:
> Module Name:  src
> Committed By: jdolecek
> Date: Fri May 15 07:42:58 UTC 2020
> 
> Modified Files:
>   src/sys/arch/xen/include: intr.h
>   src/sys/arch/xen/x86: pintr.c
> 
> Log Message:
> use short for irq2port[] to save memory (4KB), it only needs to store
> numbers <= NR_EVENT_CHANNELS (2048)

not that they're necessarily related, but you can have a look
at PR#54837 which has problems with running out of interrrupts
on systems with lots of cpus and devices with lots of msix?

thanks.


.mrg.


re: CVS commit: src

2020-05-06 Thread matthew green
> Added Files:
>   src/lib/libc/gen: getentropy.3 getentropy.c

thanks for this.  can you fix a minor nit?

+   return sysctl(name, 2, buf, , NULL, 0);

please write '2' as '__arraycount(name)'.

thanks.


.mrg.


re: CVS commit: src/usr.bin/rlogin

2020-05-03 Thread matthew green
"Christos Zoulas" writes:
> Module Name:  src
> Committed By: christos
> Date: Sun May  3 16:32:16 UTC 2020
> 
> Modified Files:
>   src/usr.bin/rlogin: rlogin.c
> 
> Log Message:
> PR/54435: Adjust for new kernel behavior of soreceive(9) clearing MSG_OOB
> when receiving the oob message. This made SIOCATMARK return always 0 since
> the oob message was cleared. Instead, use recvmsg(2) to determine if
> the message was oob or not. This works with both the old and new kernel
> and it is not racy.

but old binaries still no longer work?

that seems like a binary compatiblility issue to me and you
should change the kernel to make them work again, not change
userland to match some new kernel thing, particularly where
the change itself was debated considerably and not espcially
necessary for existing OOB using code and no new code should
be added...


.mrg.


re: CVS commit: src/sys

2020-04-30 Thread matthew green
> At Wed, 29 Apr 2020 21:59:59 +,
> Andrew Doran wrote:
> > > > How about this diff?
> > > > The old platforms are the same as before, hppa, m68k, sh3, sparc(!64)
> > > > and vax.
> > > 
> > > machine/param.h seems more natural to me.  I don't have a strong opinion
> > > though.
> > 
> > .. I mean, if it's a "tuneable" value like this rather than a constant like
> > __HAVE_SLOW_COMPUTER. :-)
> 
> I see.  I like this feeling. (not strong opinion too though)
> How about you, mrg@?

works for me.   i like Andrew's argument fo param.h for values
and types.h for yes/no.

thanks!


.mrg.


re: CVS commit: src/doc

2020-04-30 Thread matthew green
> Modified Files:
>   src/doc: HACKS

thank you for keeping this upto date.


.mrg.


re: CVS commit: src/sys

2020-04-27 Thread matthew green
i would just put it in types.h called __AUDIO_BLK_MS,
and leave a default used in the code if unset.


.mrg.


re: CVS commit: src/external/gpl3

2020-03-27 Thread matthew green
> Date:Sat, 28 Mar 2020 11:46:29 +1100
> From:    matthew green 
> Message-ID:  <15233.1585356...@splode.eterna.com.au>
> 
>   | can we just leave this as-is and let netbsd GCC people care?
> 
> Only if the GCC people do care, and understand the issue, and
> implement what we want

note i said "netbsd GCC people".  i mean me, specifically.
this discussion has wasted more of my time than i would
need for decades to maintain the libiberty patch, which
_is_ about using /tmp over others by default.  (it just
doesn't work when P_tmpdir overrides it.)

> -rw---  1 root  wheel  0 Jun 15  2019 /var/tmp/cc0SLuqk.c
[ ... ]
> -rw---  1 root  wheel  0 Jul 10  2019 /var/tmp/ccyxx75H.o

yes, this is due to P_tmpdir on older netbsd trees.  we
should probably pullup my fix to stdio.h.  (note this
only affects netbsd hosts -- must upgrade your installed
system's stdio.h to get this fix.  other systems either
don't define P_tmpdir or define it to "/tmp".)


we want both changes (libiberty, and my stdio.h/P_tmpdir
change.)  we want to support old netbsd, non-netbsd, ..
whatever build hosts.


> And:  m...@eterna.com.au said (in a different message):
>   | i don't like this "don't care about netbsd-8" feeling i'm hearing
> 
> I think you took Martin's words out of context.   I read that as
> applying only to where gcc puts its temp files in NetBSD-8 (which is
> the wrong place, on NetBSD anyway) - but which, after several years
> of doing that, is not exactly crucial to fix (and is the kind of
> churn that isn't wanted or needed for supposedly stable systems).

it wasn't martin was replying about here.  i'd seen two
messages (not from martin) that dismissed problems in
netbsd-8 a moment earlier.  i don't want that to be a
general feeling in the project is all.


.mrg.


re: CVS commit: src/external/gpl3

2020-03-27 Thread matthew green
i don't like this "don't care about netbsd-8" feeling i'm hearing
when netbsd-9 is so freshly released.  we only *just* dropped
caring about netbsd-7.

please care about netbsd-8 for now.


.mrg.


re: CVS commit: src/external/gpl3

2020-03-27 Thread matthew green
can we just leave this as-is and let netbsd GCC people care?


re: CVS commit: src/sys/arch/sparc/sparc

2020-03-14 Thread matthew green
"Andrew Doran" writes:
> Module Name:  src
> Committed By: ad
> Date: Sat Mar 14 13:34:44 UTC 2020
> 
> Modified Files:
>   src/sys/arch/sparc/sparc: intr.c
> 
> Log Message:
> sparc cpu_intr_p(): try to work around l_cpu not being set early on by
> using curcpu().

ah, good idea.  this will involve one fewer deref, curcpu()
is mapped at a fixed address, so it might even be faster now
than it used to be.


.mrg.


re: CVS commit: src/sys/dev/usb

2020-03-14 Thread matthew green
> As I wrote in a follow up email, it changes formatting b/c you didn't
> change field widths and IMO using %# with a field width is mostly
> trouble to begin with.  It's not the first time someone tries to do
> this without actually understanding the consequences of the change.
> Please, can we assume that when people write either 0x%x or %#x they
> most likely actaully mean it for whatever reason and that they want
> that specific output format, and it's just rude to change that,
> especially when you do so incorrectly.

i've come to agree that %# is dangerous in general to
save one character.  not only does it have the width
issue you've mentioned, but it also emits "0" instead
of "0x0" for the zero case, which i find surprising.

christos, thanks for the backout.


.mrg.


re: CVS commit: src/sys/arch/sun2/conf

2020-03-08 Thread matthew green
"Rin Okuyama" writes:
> Module Name:  src
> Committed By: rin
> Date: Sun Mar  8 06:25:10 UTC 2020
> 
> Modified Files:
>   src/sys/arch/sun2/conf: GENERIC
> 
> Log Message:
> Retire md(4) in favor of tmpfs provided by module,
> though both are not useful for 8MB RAM system...

hi Rin.


it's cool you got modules on sun2 working... however, the
module version of a thing is going to use more real memory
than the built-in version, so i'm not sure where this is
going yet...

8MB?  luxury?  :)  i've been testing in 4MB tme :)


.mrg.


re: CVS commit: src/sys/conf

2020-03-05 Thread matthew green
Paul Goyette writes:
> On Thu, 5 Mar 2020, Paul Goyette wrote:
> 
> >> also aarch64 has no EXEC_AOUT.
> >
> > Does aarch64 have COMPAT_NETBSD32?  If so, I will adjust my fix.  (I
> > built 67 different architectures, including all of the ones that the
> > releng build cluster is building, and did not have any problems with
> > aarch64 or any other.)
> 
> As near as I can tell, aarch64 sets MACHINE_CPU to "aarch64", so it
> will not try to build COMPAT_NETBSD32 due to the following tests in
> $SRC/sys/compat/netbsd32/netbsd32.mk
> 
> .if ${MACHINE_ARCH} == "x86_64" \
>  || ${MACHINE_CPU} == "arm" \
>  || ${MACHINE_ARCH} == "sparc64" \
>  || (!empty(MACHINE_ARCH:Mmips64*) && !defined(BSD_MK_COMPAT_FILE))
> COMPAT_USE_NETBSD32?=yes
> .else
> COMPAT_USE_NETBSD32?=no
> .endif
> 
> 
> Perhaps the  line should be changed to "aarch64" instead of "arm" ?

what <<< line? :-)

arm64 should be adde here, yes.  arm should remain -- it's
a fake netbsd32 in that it handles the old 32 bit ABI on
32 bit arm systems, so it's still useful.  we're not able
to support both that and EABI on arm64 currently (not sure
how it would be easy without making it possible to compile
the netbsd32 code twice, since there are additional layout
differences that are difficult to handle without letting
the compiler do it for you.)

sorry, i should have added arm64 here when i was looking
at it but i missed it.


re: CVS commit: src/sys/conf

2020-03-05 Thread matthew green
Ryo Shimizu writes:
> also aarch64 has no EXEC_AOUT.

that's a pity -- we do have 32 bit a.out binaries from the past ;-)


.mrg.


re: CVS commit: src/sys/dev

2020-03-03 Thread matthew green
Martin Husemann writes:
> On Tue, Mar 03, 2020 at 03:26:47PM +1100, matthew green wrote:
> > without really understanding, it seems that there should be
> > a uhid ioctl to enable this mode, and then your userland code
> > sets it, instead of this hack.
> 
> Or make uhid not attach at all on FIDO devices and instead use ugen from
> userland?

no... see below.

> Or solve the long standing "every usb devices should be able to eject
> its driver and be used as ugen instead" problem, see also the various
> JTAG devices showing up as dual uftdi and you need to override in your
> kernel config like:
> 
> # GuruPlug JTAG debug interface
> ugenif* at uhub? vendor 0x9e88 product 0x9e8f interface 0 flags 1

yes.. this.  but not for this device :-)

> Most devices go via uhid to make userland access easy on windows, but for us
> it makes no real difference.

in this instance, i would rather not use ugen since it's such
a very simple API need.  ugen == generic access, and it's hard
with our system to protect against that.  usb device numbers
are volatile, so you can't simply trust chmod in /dev.

uhid is a fairly isolated interface, and i think it's right to
use a real driver here than ugen:

crw---  1 root  wheel  64, 0 Feb 27 09:08 /dev/ugen0.00
crw-rw-rw-  1 root  wheel  56, 0 Feb 27 09:08 /dev/uhid0

ie, your method would require being root or opening up all
the usb devices...


.mrg.


re: CVS commit: src/lib

2020-03-03 Thread matthew green
> Committed By: riastradh
> Date: Tue Mar  3 04:20:50 UTC 2020
> 
> Modified Files:
>   src/lib: Makefile
> 
> Log Message:
> Remove unfinished hack I accidentally committed in 2017.
> 
> This caused make to unconditionally take ages running useless
> submakes in every subdirectory.  Accidentally committed during the
> MKCRYPTO option removal when I was presumably experimenting with
> automating library dependency generation in lib.
> 
> Should shave a few seconds at least off every build!

more than a few!  it takes at least 2 seconds on a really fast
system to startup in this subdir, and we enter here a bunch
of times each build, about twice as many on MKCOMPAT=yes
platform...  and it's serialised.  i'll test.. this could be
as much as 1% of the amd64 build time!

thanksand can you please have this pulled up to other
branches it's present on.


.mrg.


re: CVS commit: src/sys/dev

2020-03-02 Thread matthew green
"Christos Zoulas" writes:
> Module Name:  src
> Committed By: christos
> Date: Mon Mar  2 18:15:29 UTC 2020
> 
> Modified Files:
>   src/sys/dev/hid: hid.h
>   src/sys/dev/usb: uhid.c
> 
> Log Message:
> Add fido constants, and turn hid "raw" mode for fido devices.

this is gross.

please don't put device specific stuff into uhid like this.

without really understanding, it seems that there should be
a uhid ioctl to enable this mode, and then your userland code
sets it, instead of this hack.

also, please actually explain what this "raw" mode means.  is
there perhaps a way to avoid this entirely?  what's the real
underlying need here..?


.mrg.


re: CVS commit: src/include

2020-03-01 Thread matthew green
> > On Sun, Mar 01, 2020 at 03:08:16PM +, Kamil Rytarowski wrote:
> >> Module Name:   src
> >> Committed By:  kamil
> >> Date:  Sun Mar  1 15:08:16 UTC 2020
> >>
> >> Modified Files:
> >>src/include: stddef.h
> >>
> >> Log Message:
> >> Expose max_align_t to C99/C++

where was this discussed?

why are controvesial changes being commited without any
warning or discussion on tech-toolchain?

this is getting ridiculous.  please revert this and the
GNU hashc hanges, and hold off any other changes pending
discussions on public lists.


.mrg.


re: CVS commit: src/sys/kern

2020-02-23 Thread matthew green
"Andrew Doran" writes:
> Module Name:  src
> Committed By: ad
> Date: Sun Feb 23 20:08:35 UTC 2020
> 
> Modified Files:
>   src/sys/kern: kern_pmf.c
> 
> Log Message:
> shutdown_all: take kernel_lock now that kern_reboot() doesn't.

ah, i am now guessing that having the kernel lock held
is why reboots hang and can't be broken into again.

we really need to have autoconf run out side of a spin
lock...  anyone want to work on this please?


.mrg.


re: CVS commit: src/sys/kern

2020-02-23 Thread matthew green
"Andrew Doran" writes:
> Module Name:  src
> Committed By: ad
> Date: Sun Feb 23 20:06:30 UTC 2020
> 
> Modified Files:
>   src/sys/kern: kern_reboot.c
> 
> Log Message:
> - If concurrent calls to kern_reboot(), only let the first do the deed.
> - Don't need kernel_lock for this (either OK, or suspendsched() called).

what happens if i enter ddb while rebooting, such that this
now sets 'rebooter' to some lwp.  inside ddb, i use 'mach cpu'
to change CPUs, which on some platforms actually swithces to
that CPU -- ie, we now have a different curlwp.

this while () will now hang forever, won't it?


.mrg.


re: CVS commit: src/tests/lib/libc/gen

2020-02-21 Thread matthew green
> Disable ubsan instrumentation on the operation.

+#if defined(__clang__)
+__attribute__((no_sanitize("undefined")))
+#else
+__attribute__((no_sanitize_undefined))
+#endif

can we get a __disable_sanitizer or something i cdefs.h?


.mrg.


re: CVS commit: src/sys/external/bsd/drm2/dist/drm/nouveau

2020-02-13 Thread matthew green
"Jaromir Dolecek" writes:
> Module Name:  src
> Committed By: jdolecek
> Date: Wed Feb 12 20:31:46 UTC 2020
> 
> Modified Files:
>   src/sys/external/bsd/drm2/dist/drm/nouveau: nouveau_fbcon.c
> 
> Log Message:
> remove superfluous static variable used only to zero attach args

is this necessary for 3rd party code?

please try to avoid changing these for cosmetic reasons.

same for warned code that is forced to warning not error.
the reason we/i didn't change them is to avoid making
future drm updates harder -- they're already *really* hard.

thanks.


.mrg.


re: CVS commit: src/share/mk

2020-02-08 Thread matthew green
> what sort of testing did you do with this change?  simply removing
> it breaks the build.  and trying to fix it otherwise is hard.  see
> only a month ago:

huh.

my build *did* complete.  so something else has changed in the
last month or so to fix this... 

sorry for the noise.


.mrg.


re: CVS commit: src/share/mk

2020-02-08 Thread matthew green
"Maya Rashish" writes:
> Module Name:  src
> Committed By: maya
> Date: Sat Feb  8 21:16:53 UTC 2020
> 
> Modified Files:
>   src/share/mk: sys.mk
> 
> Log Message:
> Don't special case aarch64 and add -fomit-frame-pointer to builds.
> 
> This behaviour is probably due to a past behaviour of clang, where it
> always emitted frame pointer code.
> This is no longer true for clang on netbsd, and I don't think it was true
> for GCC.
> 
> Meanwhile, this flag bleeds into pkgsrc where it breaks random packages,
> requiring workarounds like lang/ruby*-base/hacks.mk.

what sort of testing did you do with this change?  simply removing
it breaks the build.  and trying to fix it otherwise is hard.  see
only a month ago:

revision 1.142
date: 2020-01-08 14:04:24 -0800;  author: christos;  state: Exp;  lines: +1 -1; 
 commitid: NcvOnC9CgM4A5WRB;
Back out previous. This has no chance to work unless the make variable parsing
is not changed do that instead of scanning for a single character delim ':',
it scans for "?:". This is because !empty(COMPILE.c:M*-pg*) contains a ':'.

revision 1.141
date: 2020-01-07 20:15:45 -0800;  author: christos;  state: Exp;  lines: +2 -2; 
 commitid: U2dp6ScXDBHOaQRB;
tweak the DBG rule that -fomit-frame-pointer for aarch64 when profiling
(because the compiler complains), to use a match with the compile flags
and *pg*, instead of using a match to a target suffix (which is NetBSD
build-specific). Pointed out by phone@.


.mrg.


re: CVS commit: src/tests/lib/libarchive

2020-01-28 Thread matthew green
"Martin Husemann" writes:
> Module Name:  src
> Committed By: martin
> Date: Tue Jan 28 18:18:32 UTC 2020
> 
> Modified Files:
>   src/tests/lib/libarchive: t_libarchive.sh
> 
> Log Message:
> Bump timeout to 3600 - the libarchive tests take quite a while to
> complete (on a nearly 1 GHz dual armv7 machine it takes more than 700s)

this seems awfully excessive.  can we tone down the
libarchive tests to something reasonable for netbsd?


.mrg.


re: CVS commit: src/sys/uvm

2020-01-22 Thread matthew green
Andrew Doran writes:
> On Wed, Jan 22, 2020 at 10:08:16AM +1100, matthew green wrote:
> 
> > Andrew Doran writes:
> > > I also recommend disabling ACPI idle, at least until it can be made less
> > > aggressive by default.  It causes a significant slowdown.  It can be done
> > > with detaching all acpicpu devices using "drvctl -d" on each.
> > 
> > this disables cpufreq support, doesn't it?  that seems like
> > an unfortunate side effect..
> 
> I dunno, I assume so.  It seems like a tricky one to solve.
> 
> I think we could do with a heuristic that does a "fast idle" used when the
> system is busy and a "low power idle" when things have gotten quiet.  And
> the heuristic likely needs to be controllable with sysctl to suit
> preferences (power consumption, performance).
> 
> We probably also want to take a CPU in low power idle out of
> kcpuset_running, but that imposes its own penalty on x86 because it then
> goes from using broadcast IPIs to sending directed IPIs to every CPU;
> needs to be tried.
> 
> Also I don't know what to do about HyperThreading; it'd be nice if ACPI had
> the smarts to handle it.
> 
> My problem with this one is I don't know what I'm missing here...  Maybe
> time for a mail.

if machdep.idle-mechanism had a settable by user component,
like the way that that cpufreq provides 'available' and
'current' nodes, it would be probably easy.


.mrg.


re: CVS commit: src/sys/uvm

2020-01-21 Thread matthew green
Andrew Doran writes:
> I also recommend disabling ACPI idle, at least until it can be made less
> aggressive by default.  It causes a significant slowdown.  It can be done
> with detaching all acpicpu devices using "drvctl -d" on each.

this disables cpufreq support, doesn't it?  that seems like
an unfortunate side effect..


.mrg.


re: CVS commit: src/sys/dev/pci

2020-01-09 Thread matthew green
>  Two options:
> 
>  a) Move some structs (including struct stge_softc) and defines
> to if_stge.c
> 
>  b) Move them to new if_stgevar.h

i've always preferred:

  - fooreg.h and foovar.h exist only when more than 1
file use them

  - fooreg.h ONLY has hardware constructs

  - foovar.h ONLY has software constructs

though i tend to only delete single-use foovar.h, not fooreg.h.


.mrg.


re: CVS commit: src/sys

2020-01-03 Thread matthew green
Frank Kardel writes:
> Hi Jason !
> 
> Could you please check that kmem using tools can cope with the missing 
> _boottime symbol.
> 
> E.g.:
> 
> # vmstat -s
> vmstat: undefined symbols: _boottime
> #
> 
> This renders vmstat currently broken.
> 
> Best regards

ah, i wondered if this would happen.  i searched the tree and
didn't find anything, but i see my pattern was wrong and i 
needed to be looking for '"_boottime"', not just '"boottime".

vmstat appears to be the only problem here.


.mrg.


re: CVS commit: src

2020-01-02 Thread matthew green
"Christos Zoulas" writes:
> Module Name:  src
> Committed By: christos
> Date: Sun Dec 29 18:26:19 UTC 2019
> 
> Modified Files:
>   src/distrib/amd64/ramdisks/common: Makefile.ramdisk
[ ... ]
>   src/rescue: Makefile
>   src/usr.bin/crunch/crunchgen: crunchgen.1 crunchgen.c
> 
> Log Message:
> 1. Remove all the special handling of variables (-d -p -P -s -S) that
>were dealing with DBG (-d) LDSTATIC/NOPIE (-p), and the rest with
>disabling/enabling sanitizers.

this is cool.  wish we'd done it that way long ago...

can you document this more heavily in the manual.  crunchgen is
used my others than the build system occasionally, and knowing
they (a) need to maybe change and (b) hints as to know to change
maybe be useful to them.  perhaps a doc/CHANGES entry too.

thanks!


.mrg.


re: CVS commit: src/sys/uvm

2020-01-02 Thread matthew green
"Andrew Doran" writes:
> Module Name:  src
> Committed By: ad
> Date: Fri Dec 27 13:19:25 UTC 2019
> 
> Modified Files:
>   src/sys/uvm: uvm.h uvm_page.c
> 
> Log Message:
> Nothing uses uvm.cpus any more, and we can do the same with cpu_lookup(),
> so get rid of it.

this has been useful to me in the past for diag / core dumps.


.mrg.


re: CVS commit: src/sys/uvm

2020-01-01 Thread matthew green
> > So I guess we won't be switching pg->phys_addr from paddr to pfn?
> > Speaking of which, any plans for expanding to >32-bit (or >31-bit, if
> > signed) pfns in the rest of uvm?
> 
> That's not part of my current plans for UVM, which right now extend only as
> far as breaking the back of the performance problems with builds.  31 bit
> pfns get us into the terabyte range I think.  I have a couple of thoughts
> here, firstly SVR4 or Solaris has a pfn_t and pgcnt_t or something like that
> and it would would be nice to have an analogue.  Kind of surprised we didn't
> inherit something like that from Mach.

FWIW, the numbers are: we break at 8TiB ram, that's where
the 32 bit signed overflow happens.

the other number of note: HP sell a machine with 48TiB of
ram already, since most of last year if not more.

another method would be to lie to UVM and provide it with
>4KiB pages to manage, like VAX already does.


.mrg.


re: CVS commit: src/sys/kern

2019-12-12 Thread matthew green
> Therefore, I wouldn't bother adding kcov.h headers, and rolling back to the
> previous version of in_interrupt for now is fine, considering that kcov
> currently has no use outside of amd64.

if you want to put code in sys/kern please make it portable.

adding more MD code in MI places is the opposite stance we
have been working towards since netbsd formed.


.mrg.


re: CVS commit: src/sys/kern

2019-12-10 Thread matthew green
> > > Log Message:
> > > Expunge the panicstr checks, we don't need them.
> > 
> > can you explain why?
> 
> Sure, [ .. ]

ah, wow.  i didn't realise it had such a bad effect on cpus before
they actually go properly down.

we should probably work hard to make them go down faster if possible,
though maybe that's already as good as it can be.

> > what sort of crash-time testing did you perform?
> 
> That the system can be debugged and reset cleanly.  If we've got code in DDB
> that hangs up or crashdups don't work then that's something we should fix.
> I've not run into any in a long time, they seem to get fixed.
> 
> Do you have a particular concern or something else in mind?

i was also curious about crash dumps working, but mostly
this change is about reducing true lossage during a crash.

thanks.


.mrg.


re: CVS commit: src/sys/kern

2019-12-10 Thread matthew green
"Andrew Doran" writes:
> Module Name:  src
> Committed By: ad
> Date: Mon Dec  9 21:02:10 UTC 2019
> 
> Modified Files:
>   src/sys/kern: kern_rwlock.c
> 
> Log Message:
> Expunge the panicstr checks, we don't need them.

can you explain why?  what sort of crash-time testing did
you perform?

thanks.


.mrg.


re: CVS commit: src/sys/kern

2019-12-07 Thread matthew green
> Module Name:  src
> Committed By: kamil
> Date: Sat Dec  7 19:50:34 UTC 2019
> 
> Modified Files:
>   src/sys/kern: subr_kcov.c
> 
> Log Message:
> Revert the in_interrupt() change to use again the x86 specific code
> 
> This is prerequisite for kMSan and upcoming kernel changes.
> 
> Discussed with 

why is this?  what is the problem?

we shouldn't be putting back MD code into sys/kern files.
the existing interface to check this *is* cpu_intr_p(),
which should resolve to the same basic thing as the x86
specific version.


.mrg.


re: CVS commit: src/sys/arch

2019-12-06 Thread matthew green
> > > Why? I consider this totaly useless bloat, what was wrong with the 
> > > boot.cfg
> > > solution?
> > 
> > policy:  no default modules in the installation unless licenses
> > issues force such, until module+kernel solution.
> 
> OK, but this is gone awry. The boot.cfg solution is great if anoyne
> really needs this dmesg sugar, everyone else can go on using pcictl 
> later instead.
> 
> So now the (reasonable) policy forces a (relatively harmless, as easily
> overidable but still useless) change into bloat for everyone. Can we
> just revert to the state before the initial boot.cfg change instead?

i'm not really a fan of this solution.

this code was removed from GENERIC back when ad was pushing
hard on modules and reducing memory consumption using them,
but we've got problems still to resolve about their safe
usage.  (i really can't agree with your "harmless" line
above.  modules are dangerous even with careful usage
currently.)

so, this change is really about reverting a bad choice made
11 years ago, that still has not been properly resolved.
we lost that functionality in netbsd 5.0 GENERIC with the
idea it would be resolved "soon".  it's been a long, long
"soon"...


.mrg.


re: CVS commit: src/sys/arch

2019-12-06 Thread matthew green
Martin Husemann writes:
> On Thu, Dec 05, 2019 at 10:05:05PM +, Sevan Janiyan wrote:
> > Module Name:src
> > Committed By:   sevan
> > Date:   Thu Dec  5 22:05:05 UTC 2019
> > 
> > Modified Files:
> > src/sys/arch/amd64/conf: GENERIC
> > src/sys/arch/i386/conf: GENERIC
> > 
> > Log Message:
> > Enable pciverbose option to make use of the pcidevs database by default.
> 
> Why? I consider this totaly useless bloat, what was wrong with the boot.cfg
> solution?

policy:  no default modules in the installation unless licenses
issues force such, until module+kernel solution.


.mrg.

ps: the other *VERBOSE probably deserve the same.


re: CVS commit: src

2019-12-06 Thread matthew green
"Taylor R Campbell" writes:
> Module Name:  src
> Committed By: riastradh
> Date: Fri Dec  6 14:43:30 UTC 2019
> 
> Modified Files:
>   src/etc: security
>   src/etc/defaults: security.conf
>   src/share/man/man5: security.conf.5
> 
> Log Message:
> Save the entropy seed daily in /etc/security.

should the security stuff also depend upon "rndctl" setting
in rc.conf?  if rndctl is disabled, this should probably not
be performed?


.mrg.


CVS commit: src/external/gpl3/gcc

2019-11-28 Thread matthew green
Module Name:src
Committed By:   mrg
Date:   Thu Nov 28 19:31:27 UTC 2019

Modified Files:
src/external/gpl3/gcc: README.gcc8

Log Message:
note that earm and riscv switched to GCC 8.


To generate a diff of this commit:
cvs rdiff -u -r1.5 -r1.6 src/external/gpl3/gcc/README.gcc8

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/external/gpl3/gcc/README.gcc8
diff -u src/external/gpl3/gcc/README.gcc8:1.5 src/external/gpl3/gcc/README.gcc8:1.6
--- src/external/gpl3/gcc/README.gcc8:1.5	Mon Nov 18 01:13:39 2019
+++ src/external/gpl3/gcc/README.gcc8	Thu Nov 28 19:31:27 2019
@@ -1,4 +1,4 @@
-$NetBSD: README.gcc8,v 1.5 2019/11/18 01:13:39 mrg Exp $
+$NetBSD: README.gcc8,v 1.6 2019/11/28 19:31:27 mrg Exp $
 
 new stuff:
 	cc1objcplus
@@ -28,20 +28,20 @@ architecture	tools	kernels	libgcc	native
 	-	---	--	--			---	
 aarch64		y	y	y	y		y		y	y	y
 alpha		y	y	y	y		y		?	?	?
-earmv4		y	y	y	y		y		y	?	?
-earmv4eb	y	?	y	y		?		?	?	?
-earm		y	?	y	y		?		?	?	?
-earmeb		y	?	y	y		?		?	?	?
-earmhf		y	?	y	y		?		?	?	?
-earmhfeb	y	?	y	y		?		?	?	?
-earmv6		y	?	y	y		?		?	?	?
-earmv6eb	y	?	y	y		?		?	?	?
-earmv6hf	y	?	y	y		?		?	?	?
-earmv6hfeb	y	?	y	y		?		?	?	?
-earmv7		y	?	y	y		?		?	?	?
-earmv7eb	y	?	y	y		?		?	?	?
-earmv7hf	y	y	y	y		y		y	n[3]	n
-earmv7hfeb	y	?	y	y		?		?	?	?
+earmv4		y	y	y	y		y		y	?	y
+earmv4eb	y	?	y	y		?		?	?	y
+earm		y	?	y	y		?		?	?	y
+earmeb		y	?	y	y		?		?	?	y
+earmhf		y	?	y	y		?		?	?	y
+earmhfeb	y	?	y	y		?		?	?	y
+earmv6		y	?	y	y		?		?	?	y
+earmv6eb	y	?	y	y		?		?	?	y
+earmv6hf	y	?	y	y		?		?	?	y
+earmv6hfeb	y	?	y	y		?		?	?	y
+earmv7		y	?	y	y		?		?	?	y
+earmv7eb	y	?	y	y		?		?	?	y
+earmv7hf	y	y	y	y		y		y	n[3]	y
+earmv7hfeb	y	?	y	y		?		?	?	y
 hppa		y	?	y	y		?		?	?	?
 i386		y	y	y	y		y		y	y	y
 ia64		y	y	y	y		y		y	n[4]	y
@@ -59,8 +59,8 @@ sparc		y	y	y	y		y		y	y	y
 sparc64		y	y	y	y		y		y	y	y
 vax		y	?	?	y		?		?	?	?
 x86_64		y	y	y	y		y		y	y	y
-riscv32		y	?	y	y		y		?	?	?	
-riscv64		y	?	y	y		y		?	?	?
+riscv32		y	?	y	y		y		?	?	y	
+riscv64		y	?	y	y		y		?	?	y
 --
 coldfire	?	N/A	?	?		?		N/A	N/A
 	-	---	--	--			---



CVS commit: src/external/gpl3/gcc

2019-11-28 Thread matthew green
Module Name:src
Committed By:   mrg
Date:   Thu Nov 28 19:31:27 UTC 2019

Modified Files:
src/external/gpl3/gcc: README.gcc8

Log Message:
note that earm and riscv switched to GCC 8.


To generate a diff of this commit:
cvs rdiff -u -r1.5 -r1.6 src/external/gpl3/gcc/README.gcc8

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/sys/lib/libsa

2019-11-21 Thread matthew green
Module Name:src
Committed By:   mrg
Date:   Thu Nov 21 21:45:35 UTC 2019

Modified Files:
src/sys/lib/libsa: ustarfs.c

Log Message:
apply the strncmp hack only to !clang.  requested by tnn.


To generate a diff of this commit:
cvs rdiff -u -r1.36 -r1.37 src/sys/lib/libsa/ustarfs.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/lib/libsa/ustarfs.c
diff -u src/sys/lib/libsa/ustarfs.c:1.36 src/sys/lib/libsa/ustarfs.c:1.37
--- src/sys/lib/libsa/ustarfs.c:1.36	Thu Nov 21 07:34:39 2019
+++ src/sys/lib/libsa/ustarfs.c	Thu Nov 21 21:45:34 2019
@@ -1,4 +1,4 @@
-/*	$NetBSD: ustarfs.c,v 1.36 2019/11/21 07:34:39 mrg Exp $	*/
+/*	$NetBSD: ustarfs.c,v 1.37 2019/11/21 21:45:34 mrg Exp $	*/
 
 /* [Notice revision 2.2]
  * Copyright (c) 1997, 1998 Avalon Computer Systems, Inc.
@@ -388,7 +388,7 @@ init_volzero_sig(struct open_file *f)
  * Until the real cause is located, work around it by using -O1
  * for this function.
  */
-#ifdef __i386__
+#if defined(__i386__) && !defined(__clang__)
 __attribute__((__optimize__("O1")))
 #endif
 __compactcall int



CVS commit: src/sys/lib/libsa

2019-11-21 Thread matthew green
Module Name:src
Committed By:   mrg
Date:   Thu Nov 21 21:45:35 UTC 2019

Modified Files:
src/sys/lib/libsa: ustarfs.c

Log Message:
apply the strncmp hack only to !clang.  requested by tnn.


To generate a diff of this commit:
cvs rdiff -u -r1.36 -r1.37 src/sys/lib/libsa/ustarfs.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/share/mk

2019-11-20 Thread matthew green
Module Name:src
Committed By:   mrg
Date:   Thu Nov 21 07:56:58 UTC 2019

Modified Files:
src/share/mk: bsd.own.mk

Log Message:
switch riscv32/64 to GCC 8.


To generate a diff of this commit:
cvs rdiff -u -r1.1165 -r1.1166 src/share/mk/bsd.own.mk

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/share/mk/bsd.own.mk
diff -u src/share/mk/bsd.own.mk:1.1165 src/share/mk/bsd.own.mk:1.1166
--- src/share/mk/bsd.own.mk:1.1165	Mon Nov 18 15:38:07 2019
+++ src/share/mk/bsd.own.mk	Thu Nov 21 07:56:58 2019
@@ -1,4 +1,4 @@
-#	$NetBSD: bsd.own.mk,v 1.1165 2019/11/18 15:38:07 christos Exp $
+#	$NetBSD: bsd.own.mk,v 1.1166 2019/11/21 07:56:58 mrg Exp $
 
 # This needs to be before bsd.init.mk
 .if defined(BSD_MK_COMPAT_FILE)
@@ -70,7 +70,8 @@ TOOLCHAIN_MISSING?=	no
 ${MACHINE} == "sparc" || \
 ${MACHINE} == "sparc64" || \
 ${MACHINE_CPU} == "aarch64" || \
-${MACHINE_CPU} == "arm"
+${MACHINE_CPU} == "arm" || \
+${MACHINE_CPU} == "riscv"
 HAVE_GCC?=	8
 .else
 HAVE_GCC?=	7



CVS commit: src/share/mk

2019-11-20 Thread matthew green
Module Name:src
Committed By:   mrg
Date:   Thu Nov 21 07:56:58 UTC 2019

Modified Files:
src/share/mk: bsd.own.mk

Log Message:
switch riscv32/64 to GCC 8.


To generate a diff of this commit:
cvs rdiff -u -r1.1165 -r1.1166 src/share/mk/bsd.own.mk

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/sys/lib/libsa

2019-11-20 Thread matthew green
Module Name:src
Committed By:   mrg
Date:   Thu Nov 21 07:34:39 UTC 2019

Modified Files:
src/sys/lib/libsa: ustarfs.c

Log Message:
from the new comment:

 * XXX Hack alert.  GCC 8.3 mis-compiles this function and calls
 * strncmp() with the wrong second pointer, as seen in PR#54703.
 *
 * Until the real cause is located, work around it by using -O1
 * for this function.

this hack is restricted to i386.


To generate a diff of this commit:
cvs rdiff -u -r1.35 -r1.36 src/sys/lib/libsa/ustarfs.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/lib/libsa/ustarfs.c
diff -u src/sys/lib/libsa/ustarfs.c:1.35 src/sys/lib/libsa/ustarfs.c:1.36
--- src/sys/lib/libsa/ustarfs.c:1.35	Thu Mar 20 03:13:18 2014
+++ src/sys/lib/libsa/ustarfs.c	Thu Nov 21 07:34:39 2019
@@ -1,4 +1,4 @@
-/*	$NetBSD: ustarfs.c,v 1.35 2014/03/20 03:13:18 christos Exp $	*/
+/*	$NetBSD: ustarfs.c,v 1.36 2019/11/21 07:34:39 mrg Exp $	*/
 
 /* [Notice revision 2.2]
  * Copyright (c) 1997, 1998 Avalon Computer Systems, Inc.
@@ -381,6 +381,16 @@ init_volzero_sig(struct open_file *f)
 	return 0;
 }
 
+/*
+ * XXX Hack alert.  GCC 8.3 mis-compiles this function and calls
+ * strncmp() with the wrong second pointer, as seen in PR#54703.
+ *
+ * Until the real cause is located, work around it by using -O1
+ * for this function.
+ */
+#ifdef __i386__
+__attribute__((__optimize__("O1")))
+#endif
 __compactcall int
 ustarfs_open(const char *path, struct open_file *f)
 {



CVS commit: src/sys/lib/libsa

2019-11-20 Thread matthew green
Module Name:src
Committed By:   mrg
Date:   Thu Nov 21 07:34:39 UTC 2019

Modified Files:
src/sys/lib/libsa: ustarfs.c

Log Message:
from the new comment:

 * XXX Hack alert.  GCC 8.3 mis-compiles this function and calls
 * strncmp() with the wrong second pointer, as seen in PR#54703.
 *
 * Until the real cause is located, work around it by using -O1
 * for this function.

this hack is restricted to i386.


To generate a diff of this commit:
cvs rdiff -u -r1.35 -r1.36 src/sys/lib/libsa/ustarfs.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/external/mit/xorg/server/xorg-server/hw/xfree86

2019-11-17 Thread matthew green
Module Name:src
Committed By:   mrg
Date:   Mon Nov 18 01:14:03 UTC 2019

Modified Files:
src/external/mit/xorg/server/xorg-server/hw/xfree86: Makefile

Log Message:
build int10 on powerpc64 as well.


To generate a diff of this commit:
cvs rdiff -u -r1.38 -r1.39 \
src/external/mit/xorg/server/xorg-server/hw/xfree86/Makefile

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/external/mit/xorg/server/xorg-server/hw/xfree86/Makefile
diff -u src/external/mit/xorg/server/xorg-server/hw/xfree86/Makefile:1.38 src/external/mit/xorg/server/xorg-server/hw/xfree86/Makefile:1.39
--- src/external/mit/xorg/server/xorg-server/hw/xfree86/Makefile:1.38	Tue Apr 16 21:20:51 2019
+++ src/external/mit/xorg/server/xorg-server/hw/xfree86/Makefile	Mon Nov 18 01:14:03 2019
@@ -1,4 +1,4 @@
-#	$NetBSD: Makefile,v 1.38 2019/04/16 21:20:51 mrg Exp $
+#	$NetBSD: Makefile,v 1.39 2019/11/18 01:14:03 mrg Exp $
 
 .include 
 
@@ -8,7 +8,7 @@ SUBDIR=		common ddc dixmods doc dri dri2
 		x86emu xf86config xkb \
 		drivers
 
-.if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "x86_64" || ${MACHINE_ARCH} == "powerpc"
+.if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "x86_64" || ${MACHINE_CPU} == "powerpc"
 SUBDIR+=	int10 
 .endif
 



CVS commit: src/external/mit/xorg/server/xorg-server/hw/xfree86

2019-11-17 Thread matthew green
Module Name:src
Committed By:   mrg
Date:   Mon Nov 18 01:14:03 UTC 2019

Modified Files:
src/external/mit/xorg/server/xorg-server/hw/xfree86: Makefile

Log Message:
build int10 on powerpc64 as well.


To generate a diff of this commit:
cvs rdiff -u -r1.38 -r1.39 \
src/external/mit/xorg/server/xorg-server/hw/xfree86/Makefile

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/external/gpl3/gcc

2019-11-17 Thread matthew green
Module Name:src
Committed By:   mrg
Date:   Mon Nov 18 01:13:39 UTC 2019

Modified Files:
src/external/gpl3/gcc: README.gcc8
src/external/gpl3/gcc/dist/libsanitizer/lsan: lsan_allocator.h
src/external/gpl3/gcc/usr.bin/gcc/arch/ia64: defs.mk

Log Message:
few gcc 8 clean ups:
- port lsan_allocator.h to riscv and ia64.
- remove configure output garbage from ia64/defs.mk
- update README.gcc8 to reality:
  - arms mostly work, but not quite
  - most ports now build
  - some ports have switched


To generate a diff of this commit:
cvs rdiff -u -r1.4 -r1.5 src/external/gpl3/gcc/README.gcc8
cvs rdiff -u -r1.3 -r1.4 \
src/external/gpl3/gcc/dist/libsanitizer/lsan/lsan_allocator.h
cvs rdiff -u -r1.10 -r1.11 \
src/external/gpl3/gcc/usr.bin/gcc/arch/ia64/defs.mk

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/external/gpl3/gcc

2019-11-17 Thread matthew green
Module Name:src
Committed By:   mrg
Date:   Mon Nov 18 01:13:39 UTC 2019

Modified Files:
src/external/gpl3/gcc: README.gcc8
src/external/gpl3/gcc/dist/libsanitizer/lsan: lsan_allocator.h
src/external/gpl3/gcc/usr.bin/gcc/arch/ia64: defs.mk

Log Message:
few gcc 8 clean ups:
- port lsan_allocator.h to riscv and ia64.
- remove configure output garbage from ia64/defs.mk
- update README.gcc8 to reality:
  - arms mostly work, but not quite
  - most ports now build
  - some ports have switched


To generate a diff of this commit:
cvs rdiff -u -r1.4 -r1.5 src/external/gpl3/gcc/README.gcc8
cvs rdiff -u -r1.3 -r1.4 \
src/external/gpl3/gcc/dist/libsanitizer/lsan/lsan_allocator.h
cvs rdiff -u -r1.10 -r1.11 \
src/external/gpl3/gcc/usr.bin/gcc/arch/ia64/defs.mk

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/external/gpl3/gcc/README.gcc8
diff -u src/external/gpl3/gcc/README.gcc8:1.4 src/external/gpl3/gcc/README.gcc8:1.5
--- src/external/gpl3/gcc/README.gcc8:1.4	Sat Nov 16 11:50:58 2019
+++ src/external/gpl3/gcc/README.gcc8	Mon Nov 18 01:13:39 2019
@@ -1,4 +1,4 @@
-$NetBSD: README.gcc8,v 1.4 2019/11/16 11:50:58 mrg Exp $
+$NetBSD: README.gcc8,v 1.5 2019/11/18 01:13:39 mrg Exp $
 
 new stuff:
 	cc1objcplus
@@ -28,39 +28,39 @@ architecture	tools	kernels	libgcc	native
 	-	---	--	--			---	
 aarch64		y	y	y	y		y		y	y	y
 alpha		y	y	y	y		y		?	?	?
-earmv4		y	y	y	y		?		?	?	?
-earmv4eb	y	?	?	y		?		?	?	?
-earm		y	?	?	y		?		?	?	?
-earmeb		y	?	?	y		?		?	?	?
-earmhf		y	?	?	y		?		?	?	?
-earmhfeb	y	?	?	y		?		?	?	?
-earmv6		y	?	?	y		?		?	?	?
-earmv6eb	y	?	?	y		?		?	?	?
-earmv6hf	y	?	?	y		?		?	?	?
-earmv6hfeb	y	?	?	y		?		?	?	?
-earmv7		y	?	?	y		?		?	?	?
-earmv7eb	y	?	?	y		?		?	?	?
+earmv4		y	y	y	y		y		y	?	?
+earmv4eb	y	?	y	y		?		?	?	?
+earm		y	?	y	y		?		?	?	?
+earmeb		y	?	y	y		?		?	?	?
+earmhf		y	?	y	y		?		?	?	?
+earmhfeb	y	?	y	y		?		?	?	?
+earmv6		y	?	y	y		?		?	?	?
+earmv6eb	y	?	y	y		?		?	?	?
+earmv6hf	y	?	y	y		?		?	?	?
+earmv6hfeb	y	?	y	y		?		?	?	?
+earmv7		y	?	y	y		?		?	?	?
+earmv7eb	y	?	y	y		?		?	?	?
 earmv7hf	y	y	y	y		y		y	n[3]	n
-earmv7hfeb	y	?	?	y		?		?	?	?
-hppa		y	?	?	y		?		?	?	?
+earmv7hfeb	y	?	y	y		?		?	?	?
+hppa		y	?	y	y		?		?	?	?
 i386		y	y	y	y		y		y	y	y
-ia64		y	?	?	y		?		?	?	?
-m68000		y	?	?	y		?		?	?	?
-m68k		y	?	?	y		?		?	?	?
-mipseb		y	?	?	y		?		?	?	?
-mipsel		y	?	?	y		?		?	?	?
+ia64		y	y	y	y		y		y	n[4]	y
+m68000		y	?	y	y		?		?	?	?
+m68k		y	y	y	y		y		?	?	?
+mipseb		y	y	y	y		?		?	?	?
+mipsel		y	?	y	y		?		?	?	?
 mips64eb	y	y	y	y		y		y	y[2]	?
-mips64el	y	?	?	y		?		?	?	?
+mips64el	y	?	y	y		?		?	?	?
 powerpc		y	y	y	y		y		y	y[1]	?
-powerpc64	y	?	y	y		y		?	?	?
-sh3eb		y	?	?	y		?		?	?	?
-sh3el		y	?	?	y		?		?	?	?
+powerpc64	y	n	y	y		y		y	y	y
+sh3eb		y	y	y	y		y		y	yX	?
+sh3el		y	y	y	y		y		?	?	?
 sparc		y	y	y	y		y		y	y	y
 sparc64		y	y	y	y		y		y	y	y
 vax		y	?	?	y		?		?	?	?
 x86_64		y	y	y	y		y		y	y	y
-riscv32		y	?	?	y		?		?	?	?	
-riscv64		y	?	?	y		?		?	?	?
+riscv32		y	?	y	y		y		?	?	?	
+riscv64		y	?	y	y		y		?	?	?
 --
 coldfire	?	N/A	?	?		?		N/A	N/A
 	-	---	--	--			---
@@ -69,43 +69,43 @@ architecture	tools	kernels	libgcc	native
 [1] - many ipsec atf and c++ failures
 [2] - lots of failures, no idea if bad
 [3] - c++ exceptions are broken, all arm
+[4] - not upto userland yet
 
 CPU vs platform test table (for CPUs with multiple ports).  this is "make release" or just kernels.
 values:		y (yes), k (kernels only), n (failed), r (running), ? (not attempted)
 
 CPU		platform list
 ---		 
-		acorn32		cats		epoc32		evbarm-eb	evbarm-el	hpcarm		iyonix		netwinder	shark 		zaurus
-arm:		?		?		?		?		?		?		?		?		?		?
-earmv4:		?		?		?		k		k		?		-		?		?		-
-earm:		-		-		-		?		?		-		?		-		-		k
-earmhf:		-		-		-		r		?		-		-		-		-		-
-earmv6:		-		-		-		k		k		-		-		-		-		-
-earmv6hf:	-		-		-		k		k		-		-		-		-		-
-earmv7:		-		-		-		k		k		-		-		-		-		-
-earmv7hf:	-		-		-		k		k		-		-		-		-		-
+		acorn32		cats	epoc32	evbarm-eb	evbarm-el	hpcarm		iyonix		netwinder	shark 		zaurus
+earmv4:		k		k	k	k		k		k		-		k		y		-
+earm:		-		-	-	k		k		-		k		-		-		k
+earmhf:		-		-	-	k		k		-		-		-		-		-
+earmv6:		-		-	-	k		k		-		-		-		-		-
+earmv6hf:	-		-	-	k		k		-		-		-		-		-
+earmv7:		-		-	-	k		k		-		-		-		-		-
+earmv7hf:	-		-	-	k		k		-		-		-		-		-
 
-		amiga		atari		cesfic		hp300		luna68k		mac68k		mvme68k		news68k		next68k		sun3		x68k
-m68k:		?		?		k		?		?		y[1]		?		?		?		y 		?
+		amiga		atari	cesfic	hp300		luna68k		mac68k		mvme68k		news68k		next68k		sun3	x68k
+m68k:		k		k	k	k		k		y		k		k		k		y 	k
 
 		evbmips		emips		ews4800mips	mipsco		newsmips	sgimips
-mipseb:		?		?		?		?		?		?
+mipseb:		k		k		k		k		k		y
 
 		evbmips		algor		arc		cobalt		hpcmips		pmax
-mipsel:		?		?		?		?		?		?
+mipsel:		y		y		y		y		y		y
 
 		algor		evbmips		pmax
-mips64eb:	-		?		-
-mips64el:	?		?		?
-
-		amigappc	bebox		evbppc		ibmnws		macppc		mvmeppc		

CVS commit: src/etc/etc.ofppc

2019-11-17 Thread matthew green
Module Name:src
Committed By:   mrg
Date:   Mon Nov 18 01:11:14 UTC 2019

Modified Files:
src/etc/etc.ofppc: Makefile.inc

Log Message:
build GENERIC64 only on ofppc64 (doesn't build, but a least fails
somewhat sanely, instead of trying to build the wrong things.)


To generate a diff of this commit:
cvs rdiff -u -r1.9 -r1.10 src/etc/etc.ofppc/Makefile.inc

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/etc/etc.ofppc

2019-11-17 Thread matthew green
Module Name:src
Committed By:   mrg
Date:   Mon Nov 18 01:11:14 UTC 2019

Modified Files:
src/etc/etc.ofppc: Makefile.inc

Log Message:
build GENERIC64 only on ofppc64 (doesn't build, but a least fails
somewhat sanely, instead of trying to build the wrong things.)


To generate a diff of this commit:
cvs rdiff -u -r1.9 -r1.10 src/etc/etc.ofppc/Makefile.inc

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/etc/etc.ofppc/Makefile.inc
diff -u src/etc/etc.ofppc/Makefile.inc:1.9 src/etc/etc.ofppc/Makefile.inc:1.10
--- src/etc/etc.ofppc/Makefile.inc:1.9	Thu May  1 01:58:10 2008
+++ src/etc/etc.ofppc/Makefile.inc	Mon Nov 18 01:11:14 2019
@@ -1,4 +1,4 @@
-#	$NetBSD: Makefile.inc,v 1.9 2008/05/01 01:58:10 garbled Exp $
+#	$NetBSD: Makefile.inc,v 1.10 2019/11/18 01:11:14 mrg Exp $
 #
 #	etc.ofppc/Makefile.inc -- ofppc-specific etc Makefile targets
 #
@@ -6,10 +6,18 @@
 # If you change the list of distributed kernels, don't forget
 # to update the release documentation in distrib/notes/common/contents
 
+.if ${MACHINE_ARCH} == "powerpc"
+
 KERNEL_SETS=		GENERIC
 
 BUILD_KERNELS+=		INSTALL
 
+.else
+
+KERNEL_SETS=		GENERIC64
+
+.endif
+
 MD_INSTALLATION_DIRS=	installation/netboot
 
 INSTALLATION_DIRS+=	${MD_INSTALLATION_DIRS}



CVS commit: src/share/mk

2019-11-16 Thread matthew green
Module Name:src
Committed By:   mrg
Date:   Sun Nov 17 02:59:25 UTC 2019

Modified Files:
src/share/mk: bsd.own.mk

Log Message:
switch powerpc64 to GCC 8.


To generate a diff of this commit:
cvs rdiff -u -r1.1163 -r1.1164 src/share/mk/bsd.own.mk

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/share/mk

2019-11-16 Thread matthew green
Module Name:src
Committed By:   mrg
Date:   Sun Nov 17 02:59:25 UTC 2019

Modified Files:
src/share/mk: bsd.own.mk

Log Message:
switch powerpc64 to GCC 8.


To generate a diff of this commit:
cvs rdiff -u -r1.1163 -r1.1164 src/share/mk/bsd.own.mk

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/share/mk/bsd.own.mk
diff -u src/share/mk/bsd.own.mk:1.1163 src/share/mk/bsd.own.mk:1.1164
--- src/share/mk/bsd.own.mk:1.1163	Sun Nov 17 02:52:18 2019
+++ src/share/mk/bsd.own.mk	Sun Nov 17 02:59:25 2019
@@ -1,4 +1,4 @@
-#	$NetBSD: bsd.own.mk,v 1.1163 2019/11/17 02:52:18 mrg Exp $
+#	$NetBSD: bsd.own.mk,v 1.1164 2019/11/17 02:59:25 mrg Exp $
 
 # This needs to be before bsd.init.mk
 .if defined(BSD_MK_COMPAT_FILE)
@@ -66,6 +66,7 @@ TOOLCHAIN_MISSING?=	no
 .if ${MACHINE} == "amd64" || \
 ${MACHINE} == "i386" || \
 ${MACHINE} == "ia64" || \
+${MACHINE} == "powerpc64" || \
 ${MACHINE} == "sparc" || \
 ${MACHINE} == "sparc64" || \
 ${MACHINE_CPU} == "aarch64"



CVS commit: src/share/mk

2019-11-16 Thread matthew green
Module Name:src
Committed By:   mrg
Date:   Sun Nov 17 02:52:18 UTC 2019

Modified Files:
src/share/mk: bsd.own.mk

Log Message:
switch ia64 to GCC 8.  boots just as far as GCC 7 in ski.


To generate a diff of this commit:
cvs rdiff -u -r1.1162 -r1.1163 src/share/mk/bsd.own.mk

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/share/mk

2019-11-16 Thread matthew green
Module Name:src
Committed By:   mrg
Date:   Sun Nov 17 02:52:18 UTC 2019

Modified Files:
src/share/mk: bsd.own.mk

Log Message:
switch ia64 to GCC 8.  boots just as far as GCC 7 in ski.


To generate a diff of this commit:
cvs rdiff -u -r1.1162 -r1.1163 src/share/mk/bsd.own.mk

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/share/mk/bsd.own.mk
diff -u src/share/mk/bsd.own.mk:1.1162 src/share/mk/bsd.own.mk:1.1163
--- src/share/mk/bsd.own.mk:1.1162	Sat Nov 16 10:23:36 2019
+++ src/share/mk/bsd.own.mk	Sun Nov 17 02:52:18 2019
@@ -1,4 +1,4 @@
-#	$NetBSD: bsd.own.mk,v 1.1162 2019/11/16 10:23:36 mrg Exp $
+#	$NetBSD: bsd.own.mk,v 1.1163 2019/11/17 02:52:18 mrg Exp $
 
 # This needs to be before bsd.init.mk
 .if defined(BSD_MK_COMPAT_FILE)
@@ -65,6 +65,7 @@ TOOLCHAIN_MISSING?=	no
 #
 .if ${MACHINE} == "amd64" || \
 ${MACHINE} == "i386" || \
+${MACHINE} == "ia64" || \
 ${MACHINE} == "sparc" || \
 ${MACHINE} == "sparc64" || \
 ${MACHINE_CPU} == "aarch64"



CVS commit: src/sys/arch/ia64/include

2019-11-16 Thread matthew green
Module Name:src
Committed By:   mrg
Date:   Sat Nov 16 22:51:51 UTC 2019

Modified Files:
src/sys/arch/ia64/include: fenv.h

Log Message:
do the ignore -Wshadow dance for builtins and GCC 8, copied from ppc version.


To generate a diff of this commit:
cvs rdiff -u -r1.2 -r1.3 src/sys/arch/ia64/include/fenv.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/sys/arch/ia64/include

2019-11-16 Thread matthew green
Module Name:src
Committed By:   mrg
Date:   Sat Nov 16 22:51:51 UTC 2019

Modified Files:
src/sys/arch/ia64/include: fenv.h

Log Message:
do the ignore -Wshadow dance for builtins and GCC 8, copied from ppc version.


To generate a diff of this commit:
cvs rdiff -u -r1.2 -r1.3 src/sys/arch/ia64/include/fenv.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/arch/ia64/include/fenv.h
diff -u src/sys/arch/ia64/include/fenv.h:1.2 src/sys/arch/ia64/include/fenv.h:1.3
--- src/sys/arch/ia64/include/fenv.h:1.2	Thu Mar 23 18:27:29 2017
+++ src/sys/arch/ia64/include/fenv.h	Sat Nov 16 22:51:51 2019
@@ -67,6 +67,11 @@ extern const fenv_t	__fe_dfl_env;
 #define	__stfpsr(__r)	__asm __volatile("mov %0=ar.fpsr" : "=r" (*(__r)))
 #define	__ldfpsr(__r)	__asm __volatile("mov ar.fpsr=%0;;" : : "r" (__r))
 
+#if __GNUC_PREREQ__(8, 0)
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wshadow"
+#endif
+
 __fenv_static inline int
 feclearexcept(int __excepts)
 {
@@ -206,6 +211,10 @@ fesetenv(const fenv_t *__envp)
 
 int feupdateenv(const fenv_t *__envp);
 
+#if __GNUC_PREREQ__(8, 0)
+#pragma GCC diagnostic pop
+#endif
+
 #if defined(_NETBSD_SOURCE) || defined(_GNU_SOURCE)
 
 __fenv_static inline int



CVS commit: src/external/gpl3/gcc

2019-11-16 Thread matthew green
Module Name:src
Committed By:   mrg
Date:   Sat Nov 16 11:50:58 UTC 2019

Modified Files:
src/external/gpl3/gcc: README.gcc8

Log Message:
note i386 and sparc* conversion.  note arm32 issues.


To generate a diff of this commit:
cvs rdiff -u -r1.3 -r1.4 src/external/gpl3/gcc/README.gcc8

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/external/gpl3/gcc/README.gcc8
diff -u src/external/gpl3/gcc/README.gcc8:1.3 src/external/gpl3/gcc/README.gcc8:1.4
--- src/external/gpl3/gcc/README.gcc8:1.3	Sun Nov 10 10:31:38 2019
+++ src/external/gpl3/gcc/README.gcc8	Sat Nov 16 11:50:58 2019
@@ -1,4 +1,4 @@
-$NetBSD: README.gcc8,v 1.3 2019/11/10 10:31:38 mrg Exp $
+$NetBSD: README.gcc8,v 1.4 2019/11/16 11:50:58 mrg Exp $
 
 new stuff:
 	cc1objcplus
@@ -28,7 +28,7 @@ architecture	tools	kernels	libgcc	native
 	-	---	--	--			---	
 aarch64		y	y	y	y		y		y	y	y
 alpha		y	y	y	y		y		?	?	?
-earmv4		y	?	?	y		?		?	?	?
+earmv4		y	y	y	y		?		?	?	?
 earmv4eb	y	?	?	y		?		?	?	?
 earm		y	?	?	y		?		?	?	?
 earmeb		y	?	?	y		?		?	?	?
@@ -40,10 +40,10 @@ earmv6hf	y	?	?	y		?		?	?	?
 earmv6hfeb	y	?	?	y		?		?	?	?
 earmv7		y	?	?	y		?		?	?	?
 earmv7eb	y	?	?	y		?		?	?	?
-earmv7hf	y	?	?	y		?		?	?	?
+earmv7hf	y	y	y	y		y		y	n[3]	n
 earmv7hfeb	y	?	?	y		?		?	?	?
 hppa		y	?	?	y		?		?	?	?
-i386		y	?	?	y		?		?	?	?
+i386		y	y	y	y		y		y	y	y
 ia64		y	?	?	y		?		?	?	?
 m68000		y	?	?	y		?		?	?	?
 m68k		y	?	?	y		?		?	?	?
@@ -55,8 +55,8 @@ powerpc		y	y	y	y		y		y	y[1]	?
 powerpc64	y	?	y	y		y		?	?	?
 sh3eb		y	?	?	y		?		?	?	?
 sh3el		y	?	?	y		?		?	?	?
-sparc		y	y	y	y		y		y	?	?
-sparc64		y	?	?	y		?		?	?	?
+sparc		y	y	y	y		y		y	y	y
+sparc64		y	y	y	y		y		y	y	y
 vax		y	?	?	y		?		?	?	?
 x86_64		y	y	y	y		y		y	y	y
 riscv32		y	?	?	y		?		?	?	?	
@@ -68,6 +68,7 @@ architecture	tools	kernels	libgcc	native
 
 [1] - many ipsec atf and c++ failures
 [2] - lots of failures, no idea if bad
+[3] - c++ exceptions are broken, all arm
 
 CPU vs platform test table (for CPUs with multiple ports).  this is "make release" or just kernels.
 values:		y (yes), k (kernels only), n (failed), r (running), ? (not attempted)



CVS commit: src/external/gpl3/gcc

2019-11-16 Thread matthew green
Module Name:src
Committed By:   mrg
Date:   Sat Nov 16 11:50:58 UTC 2019

Modified Files:
src/external/gpl3/gcc: README.gcc8

Log Message:
note i386 and sparc* conversion.  note arm32 issues.


To generate a diff of this commit:
cvs rdiff -u -r1.3 -r1.4 src/external/gpl3/gcc/README.gcc8

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/share/mk

2019-11-16 Thread matthew green
Module Name:src
Committed By:   mrg
Date:   Sat Nov 16 10:23:36 UTC 2019

Modified Files:
src/share/mk: bsd.own.mk

Log Message:
sparc & sparc64 -> GCC 8.


To generate a diff of this commit:
cvs rdiff -u -r1.1161 -r1.1162 src/share/mk/bsd.own.mk

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/share/mk/bsd.own.mk
diff -u src/share/mk/bsd.own.mk:1.1161 src/share/mk/bsd.own.mk:1.1162
--- src/share/mk/bsd.own.mk:1.1161	Sat Nov 16 10:22:20 2019
+++ src/share/mk/bsd.own.mk	Sat Nov 16 10:23:36 2019
@@ -1,4 +1,4 @@
-#	$NetBSD: bsd.own.mk,v 1.1161 2019/11/16 10:22:20 mrg Exp $
+#	$NetBSD: bsd.own.mk,v 1.1162 2019/11/16 10:23:36 mrg Exp $
 
 # This needs to be before bsd.init.mk
 .if defined(BSD_MK_COMPAT_FILE)
@@ -65,6 +65,8 @@ TOOLCHAIN_MISSING?=	no
 #
 .if ${MACHINE} == "amd64" || \
 ${MACHINE} == "i386" || \
+${MACHINE} == "sparc" || \
+${MACHINE} == "sparc64" || \
 ${MACHINE_CPU} == "aarch64"
 HAVE_GCC?=	8
 .else



CVS commit: src/share/mk

2019-11-16 Thread matthew green
Module Name:src
Committed By:   mrg
Date:   Sat Nov 16 10:23:36 UTC 2019

Modified Files:
src/share/mk: bsd.own.mk

Log Message:
sparc & sparc64 -> GCC 8.


To generate a diff of this commit:
cvs rdiff -u -r1.1161 -r1.1162 src/share/mk/bsd.own.mk

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/share/mk

2019-11-16 Thread matthew green
Module Name:src
Committed By:   mrg
Date:   Sat Nov 16 10:22:20 UTC 2019

Modified Files:
src/share/mk: bsd.own.mk

Log Message:
i386 -> GCC 8.


To generate a diff of this commit:
cvs rdiff -u -r1.1160 -r1.1161 src/share/mk/bsd.own.mk

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/share/mk

2019-11-16 Thread matthew green
Module Name:src
Committed By:   mrg
Date:   Sat Nov 16 10:22:20 UTC 2019

Modified Files:
src/share/mk: bsd.own.mk

Log Message:
i386 -> GCC 8.


To generate a diff of this commit:
cvs rdiff -u -r1.1160 -r1.1161 src/share/mk/bsd.own.mk

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/share/mk/bsd.own.mk
diff -u src/share/mk/bsd.own.mk:1.1160 src/share/mk/bsd.own.mk:1.1161
--- src/share/mk/bsd.own.mk:1.1160	Wed Nov 13 22:32:16 2019
+++ src/share/mk/bsd.own.mk	Sat Nov 16 10:22:20 2019
@@ -1,4 +1,4 @@
-#	$NetBSD: bsd.own.mk,v 1.1160 2019/11/13 22:32:16 joerg Exp $
+#	$NetBSD: bsd.own.mk,v 1.1161 2019/11/16 10:22:20 mrg Exp $
 
 # This needs to be before bsd.init.mk
 .if defined(BSD_MK_COMPAT_FILE)
@@ -64,6 +64,7 @@ TOOLCHAIN_MISSING?=	no
 # What GCC is used?
 #
 .if ${MACHINE} == "amd64" || \
+${MACHINE} == "i386" || \
 ${MACHINE_CPU} == "aarch64"
 HAVE_GCC?=	8
 .else



CVS commit: src/external/gpl3/gcc/usr.bin/host-libcpp

2019-11-14 Thread matthew green
Module Name:src
Committed By:   mrg
Date:   Thu Nov 14 09:27:09 UTC 2019

Modified Files:
src/external/gpl3/gcc/usr.bin/host-libcpp: Makefile

Log Message:
duplicate a some of Makefile.gnuhost.

should fix PR#53561.


To generate a diff of this commit:
cvs rdiff -u -r1.3 -r1.4 src/external/gpl3/gcc/usr.bin/host-libcpp/Makefile

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/external/gpl3/gcc/usr.bin/host-libcpp/Makefile
diff -u src/external/gpl3/gcc/usr.bin/host-libcpp/Makefile:1.3 src/external/gpl3/gcc/usr.bin/host-libcpp/Makefile:1.4
--- src/external/gpl3/gcc/usr.bin/host-libcpp/Makefile:1.3	Mon Jun 26 17:38:10 2017
+++ src/external/gpl3/gcc/usr.bin/host-libcpp/Makefile	Thu Nov 14 09:27:08 2019
@@ -1,14 +1,32 @@
-#	$NetBSD: Makefile,v 1.3 2017/06/26 17:38:10 joerg Exp $
+#	$NetBSD: Makefile,v 1.4 2019/11/14 09:27:08 mrg Exp $
 
-libcpp/libcpp.a:
-	[ ! -d libcpp ] && mkdir libcpp || true
-	(cd libcpp; \
-		CC=${HOST_CC:Q} CXX=${HOST_CXX:Q}  \
+BUILD_ENV= \
+		AR=${HOST_AR:Q} \
+		AWK=${TOOL_AWK:Q} \
+		CC=${HOST_CC:Q} \
 		CFLAGS=${HOST_CFLAGS:Q} \
-		MAKE=${TOOL_GMAKE:Q} \
 		CONFIG_SHELL=${HOST_SH:Q} \
+		CPPFLAGS=${HOST_CPPFLAGS:Q} \
+		CXX=${HOST_CXX:Q} \
+		CXXFLAGS=${HOST_CXXFLAGS:Q} \
+		INSTALL=${HOST_INSTALL_FILE:Q} \
+		LDFLAGS=${HOST_LDFLAGS:Q} \
+		LEX=${LEX:Q} \
+		FLEX=${LEX:Q} \
+		M4=${TOOL_M4:Q} \
+		MAKE=${TOOL_GMAKE:Q} \
+		PATH="${TOOLDIR}/bin:$$PATH" \
+		RANLIB=${HOST_RANLIB:Q} \
+		YACC=${YACC:Q}
+
+GMAKE_J_ARGS?=	${MAKEFLAGS:[*]:M*-j*:C/.*(-j ?[0-9]*).*/\1/W}
+BUILD_COMMAND=	/usr/bin/env -i ${BUILD_ENV} ${TOOL_GMAKE} ${GMAKE_J_ARGS} -e
+
+libcpp/libcpp.a:
+	[ ! -d libcpp ] && mkdir libcpp || true
+	(cd libcpp && ${BUILD_ENV} && \
 		${HOST_SH} ${DIST}/libcpp/configure -v am_cv_func_iconv=no \
-		&& CC=${HOST_CC:Q} CXX=${HOST_CXX:Q} CFLAGS=${HOST_CFLAGS:Q} ${TOOL_GMAKE})
+		&& ${BUILD_COMMAND})
 
 cleandir:
 	-rm -rf libcpp



CVS commit: src/external/gpl3/gcc/usr.bin/host-libcpp

2019-11-14 Thread matthew green
Module Name:src
Committed By:   mrg
Date:   Thu Nov 14 09:27:09 UTC 2019

Modified Files:
src/external/gpl3/gcc/usr.bin/host-libcpp: Makefile

Log Message:
duplicate a some of Makefile.gnuhost.

should fix PR#53561.


To generate a diff of this commit:
cvs rdiff -u -r1.3 -r1.4 src/external/gpl3/gcc/usr.bin/host-libcpp/Makefile

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



re: CVS commit: src/share/mk

2019-11-13 Thread matthew green
> TLDR; libarchive has feature parity with NetBSD pax.

i don't know how you can make this claim.  are you simply
ignoring that others have a problem you haven't seen?

people's upgrades are breaking now in ways they never have
before.  that's not feature parity by a long shot.

instead of ignoring the real issues, perhaps you could
argue that bsdtar should actually match the features of
pax-as-tar, and then we can all benefit from the change.

i'm not happy about this change.  i wish that bsdtar was
fixed to not be unfriendly, because it mostly is a better
implementation.  just these edge cases are rather ..
problematic yet these issues are being ignored or
rejected as being irrelevant.

we can do better.  i like christos' patch.  there's some
nuance with the symlink vs security issue, but there is
only clear additional failure cases with the unlink vs
rename issue.


.mrg.


CVS commit: src/sys/kern

2019-11-12 Thread matthew green
Module Name:src
Committed By:   mrg
Date:   Wed Nov 13 01:31:47 UTC 2019

Modified Files:
src/sys/kern: kern_cpu.c

Log Message:
put the ucode not found message under #ifdef DEBUG.  use printf()
instead of aprint_error().

there's an error returned to userland and displayed by cpuctl.


To generate a diff of this commit:
cvs rdiff -u -r1.76 -r1.77 src/sys/kern/kern_cpu.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/kern/kern_cpu.c
diff -u src/sys/kern/kern_cpu.c:1.76 src/sys/kern/kern_cpu.c:1.77
--- src/sys/kern/kern_cpu.c:1.76	Sun Oct  6 02:04:26 2019
+++ src/sys/kern/kern_cpu.c	Wed Nov 13 01:31:47 2019
@@ -1,4 +1,4 @@
-/*	$NetBSD: kern_cpu.c,v 1.76 2019/10/06 02:04:26 uwe Exp $	*/
+/*	$NetBSD: kern_cpu.c,v 1.77 2019/11/13 01:31:47 mrg Exp $	*/
 
 /*-
  * Copyright (c) 2007, 2008, 2009, 2010, 2012 The NetBSD Foundation, Inc.
@@ -56,7 +56,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: kern_cpu.c,v 1.76 2019/10/06 02:04:26 uwe Exp $");
+__KERNEL_RCSID(0, "$NetBSD: kern_cpu.c,v 1.77 2019/11/13 01:31:47 mrg Exp $");
 
 #include "opt_cpu_ucode.h"
 
@@ -602,7 +602,9 @@ cpu_ucode_load(struct cpu_ucode_softc *s
 
 	error = cpu_ucode_md_open(, sc->loader_version, fwname);
 	if (error != 0) {
-		aprint_error("ucode: firmware_open failed: %i\n", error);
+#ifdef DEBUG
+		printf("ucode: firmware_open(%s) failed: %i\n", fwname, error);
+#endif
 		goto err0;
 	}
 



CVS commit: src/sys/kern

2019-11-12 Thread matthew green
Module Name:src
Committed By:   mrg
Date:   Wed Nov 13 01:31:47 UTC 2019

Modified Files:
src/sys/kern: kern_cpu.c

Log Message:
put the ucode not found message under #ifdef DEBUG.  use printf()
instead of aprint_error().

there's an error returned to userland and displayed by cpuctl.


To generate a diff of this commit:
cvs rdiff -u -r1.76 -r1.77 src/sys/kern/kern_cpu.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



  1   2   3   4   5   6   7   8   9   10   >