Jenkins build is back to normal : FreeBSD_HEAD-tests2 #1036

2015-05-15 Thread jenkins-admin
See https://jenkins.freebsd.org/job/FreeBSD_HEAD-tests2/1036/

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


Re: Deja vu: panic in hdaa_coonfigure() for i386, but not amd64 -- again

2015-05-15 Thread John Baldwin
On Saturday, May 09, 2015 07:27:51 AM David Wolfskill wrote:
 Ref. http://docs.FreeBSD.org/cgi/mid.cgi?20150415134515.GQ1224 --
 similar symptoms.  And again, I captured screenshots on a phone, but
 FreeBSD doesn't seem to recognize the (USB-attached) phone as something
 that might act like a file system (I guess; I'm a bit new to
 smartphones).
 
 In this case, my starting-point was r282623; sources were updated to
 r282676.  I was able to update from:
 
 FreeBSD g1-254.catwhisker.org 11.0-CURRENT FreeBSD 11.0-CURRENT #55  
 r282623M/282623:1100072: Fri May  8 05:40:49 PDT 2015 
 r...@g1-254.catwhisker.org:/common/S3/obj/usr/src/sys/CANARY  amd64
 
 to
 
 FreeBSD g1-254.catwhisker.org 11.0-CURRENT FreeBSD 11.0-CURRENT #56  
 r282676M/282676:1100073: Sat May  9 05:50:15 PDT 2015 
 r...@g1-254.catwhisker.org:/common/S3/obj/usr/src/sys/CANARY  amd64
 
 without incident, but the update from:
 
 FreeBSD g1-254.catwhisker.org 11.0-CURRENT FreeBSD 11.0-CURRENT #1590  
 r282623M/282623:1100072: Fri May  8 06:40:11 PDT 2015 
 r...@g1-254.catwhisker.org:/common/S4/obj/usr/src/sys/CANARY  i386
 
 was only able to build; the panic occurs before we've found any disks,
 so I can't get a crash dump.  I do have a kdb prompt, though, so if
 someone has a suggestion for something to check, please let me know.
 (Mind, reading email will be rather awkward while the laptop is exploring
 the mysteries of a panic, so that might be worth bearing in mind.)
 
 Just prior to the bactrace, I see:
 ...
 hdaa1: 30 41f0 15 0  Speaker   None   1/8  Rear
 Kernel page fault with the following non-sleepable locks held:
 exclusive sleep mutex hdac1 (HDA driver mutex) r = 0 (0xcfef...
 src/sys/dev/sound/pci/hda/hdaa.c:1571
 
 The most recent relevant entries in the backtrace are:
 hdaa_configure()
 hdaa_attach()
 device_attach()
 bus_generic_attach()
 hdacc_attach()
 device_attach()
 bus_generic_attach()
 hdac_attach2()
 run_interrupt_driven_config_hooks()
 boot_interrupt_driven_config_hooks()
 mi_startup()
 begin()
 
 The panic message is fatal trap 12: page fault while in kernel mode
 ...
 fault code= supervisor read, page not present
 ...
 current process   = 0 (swapper)
 ...
 Stopped at ... = hdaa_configure+0x14af:   movb0x3,%dl

Can you do 'l *hdaa_configure+0x14af' in gdb against the kernel.debug?
Perhaps set 'hint.hdac.0.disabled=1' at the loader prompt as a temporary
workaround to boot if needed?

-- 
John Baldwin
___
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to freebsd-current-unsubscr...@freebsd.org


Build failed in Jenkins: FreeBSD_HEAD #2769

2015-05-15 Thread jenkins-admin
See https://jenkins.freebsd.org/job/FreeBSD_HEAD/2769/changes

Changes:

[pfg] Break apart the gnu_inline attribute and use artificial if available.

In general it is bad practice to use the gnu_inline attribute but we
will need it in special cases like FORTIFY_SOURCE. In this specific
case it is also useful to have the artificial attribute:

This attribute is useful for small inline wrappers which if possible
should appear during debugging as a unit, depending on the debug info
format it will either mean marking the function as artificial or using the
caller location for all instructions within the inlined body.

This attribute appears to be currently implemented only in GCC. Use it
only in conjuntion with gnu_inline in the cases where it is available,
which is similar in spirit in how it's used in glibc.

[cy] Correct location for libntpevent.a.

[zbb] Introduce support for the Alpine PoC from Annapurna Labs

The Alpine Platform-On-Chip offers multicore processing
(quad ARM Cortex-A15), 1/10Gb Ethernet, SATA 3, PCI-E 3,
DMA engines, Virtualization, Advanced Power Management and other.

This code drop involves basic platform support including:
SMP, IRQs, SerDes, SATA. As of now it is missing the PCIe support.
Part of the functionality is provided by the low-level code (HAL)
delivered by the chip vendor (Annapurna Labs) and is a subject to
change in the future (is planned to be moved to sys/contrib directory).

The review log for this commit is available here:
https://reviews.freebsd.org/D2340

Reviewed by:andrew, ian, imp
Obtained from:  Semihalf
Sponsored by:   Annapurna Labs

[ian] Add assertions that the addresses passed to tlb maintenance are 
page-aligned.

Perform cache writebacks and invalidations in the correct (inner to outer
or vice versa) order, and add comments that explain that.

Consistantly use 'va' as the variable name for virtual addresses.

Submitted by:   Michal Meloun mel...@miracle.cz

[ian] Retrieve the cache parms in the proper arch-specific way.

Submitted by:   Michal Meloun mel...@miracle.cz

[gnn] Summary: Remove spurious, extra, next header comments.
Correct the name of the pad length field.

[pfg] Replace a CONSTCOND for a void value as a replacement for __unreachable 
builtin

This only applies if we are not using clang or gcc but it lets us use the
__unreachable() buitin in expressions.

Suggested by:   tijl

[bapt] Allow MANWIDTH to work with mandoc(1)

Reported by:bdrewery

[pkelsey] When a netmap process terminates without the full set of buffers it
was granted via rings and ni_bufs_list_head represented in those rings
and lists (e.g., via SIGKILL), those buffers are no longer available
for subsequent users for the lifetime of the system. To mitigate this
resource leak, reset the allocator state when the last ref to that
allocator is released.

Note that this only recovers leaked resources for an allocator when
there are no longer any users of that allocator, so there remain
circumstances in which leaked allocator resources may not ever be
recovered - consider a set of multiple netmap processes that are all
using the same allocator (say, the global allocator) where members of
that set may be killed and restarted over time but at any given point
there is one member of that set running.

Based on intial work by adrian@.

Reviewed by: Giuseppe Lettieri (g.letti...@iet.unipi.it), luigi
Approved by: jmallett (mentor)
MFC after: 1 week
Sponsored by: Norse Corp, Inc.

[emaste] Build libgomp only if we're also building base system GCC

Clang's OpenMP support will emit Intel OpenMP API library calls,
and will therefore require libiomp (or whatever name is settled on).
An up-to-date version of libgomp is included in ports or pkg GCC.
Thus, there is no reason to build base libgomp without base system GCC.

PR: 199979 (exp-run)
Reviewed by:pfg
Relnotes:   Yes
Sponsored by:   The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D2459

[br] Provide the number of interrupt resources added to the list
by using extra argument, so caller will know that.

[jhb] Previously, cv_waiters was only updated by cv_signal or cv_wait. If a
thread awakened due to a time out, then cv_waiters was not decremented.
If INT_MAX threads timed out on a cv without an intervening cv_broadcast,
then cv_waiters could overflow. To fix this, have each sleeping thread
decrement cv_waiters when it resumes.

Note that previously cv_waiters was protected by the sleepq chain lock.
However, that lock is not held when threads resume from sleep. In
addition, the interlock is also not always reacquired after resuming
(cv_wait_unlock), nor is it always held by callers of cv_signal() or
cv_broadcast(). Instead, use atomic ops to update cv_waiters. Since
the sleepq chain lock is still held on every increment, it should
still be safe to compare cv_waiters against zero while holding the
lock in the wakeup routines as the only way the race should be lost
would result in extra 

Re: UMA initialization failure with 48 core ARM64

2015-05-15 Thread Stanislav Sedov

 On May 15, 2015, at 11:30 AM, Michał Stanek m...@semihalf.com wrote:
 
 Hi,
 
 I am experiencing an early failure of UMA on an ARM64 platform with 48
 cores enabled. I get a kernel panic during initialization of VM. Here is
 the boot log (lines with 'MST:' are my own debug printfs).
 
 Copyright (c) 1992-2015 The FreeBSD Project.
 Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
The Regents of the University of California. All rights reserved.
 FreeBSD is a registered trademark of The FreeBSD Foundation.
 FreeBSD 11.0-CURRENT #333 52fd91e(smp_48)-dirty: Fri May 15 18:26:56 CEST
 2015

 mst@arm64-prime:/usr/home/mst/freebsd_v8/obj_kernel/arm64.aarch64/usr/home/mst/freebsd_v8/kernel/sys/THUNDER-88XX
 arm64
 FreeBSD clang version 3.6.0 (tags/RELEASE_360/final 230434) 20150225
 MST: in vm_mem_init()
 MST: in vmem_init() with param *vm == kernel_arena
 MST: in vmem_xalloc() with param *vm == kernel_arena
 MST: in vmem_xalloc() with param *vm == kmem_arena
 panic: mtx_lock() of spin mutex (null) @
 /usr/home/mst/freebsd_v8/kernel/sys/kern/subr_vmem.c:1165
 cpuid = 0
 KDB: enter: panic
 [ thread pid 0 tid 0 ]
 Stopped at  0xff80001f4f80:
 
 The kernel boots fine when MAXCPU is set to 30 or lower, but the error
 above always appears when it is set to a higher value.
 
 The panic is triggered by a KASSERT in __mtx_lock_flags() which is called
 with the macro VMEM_LOCK(vm) in vmem_xalloc(). This is line 1143 in
 subr_vmem.c (log shows different line number due to added printfs).
 It looks like the lock belongs to 'kmem_arena' which is uninitialized at
 this point (kmeminit() has not been called yet).
 
 While debugging, I tried modifying VM code as a quick workaround. I
 replaced the number of cores to 1 wherever mp_ncpus, mp_maxid or MAXCPU
 (and others) are read. This, I believe, limits UMA per-cpu caches to just
 one, while the rest of the OS (scheduler, etc) sees all 48 cores.
 In addition, I changed UMA_BOOT_PAGES in sys/vm/uma_int.h to 512 (default
 was 64).
 With these tweaks, I got a successful (but not really stable) boot with 48
 cores. Of course these are dirty hacks and a proper solution is needed.
 
 I am a bit surprised that the kernel fails with MAXCPU==48 as the amd64
 arch has this value set to '256' and I have read posts that other platforms
 with even more cores have worked fine. Perhaps I need to tweak some other
 VM parameters, apart from UMA_BOOT_PAGES (AKA vm.boot_pages), but I am not
 sure how.
 
 I included a full stacktrace and a more verbose log (with UMA_DEBUG macros
 enabled) in the attachment. There is also a diff of the hacks I used while
 debugging.
 
 

Hi, Michal!

It looks like the log attachment didn’t make it though the mailing list.
Can you please resend it again?

The panic suggests that a mutex was left uninitialized...

--
ST4096-RIPE



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

Re: [RFC] Replace gnu groff in base by heirloom doctools

2015-05-15 Thread Julian H. Stacey
Hi Bapt  current@

 I think keeping a fully functionnal roff(7) toolchain part of the
 base system is very good on a unix.

Yes, Unix has always also been a tool to get jobs done (aka PWB),
as well as merely recompile more Unix. Ditto FreeBSD.  


 From what I could check I cannot find any regression when migrating from gnu
 groff to heirloom doctools, if there is a particular area when you think extra
 care is needed please share it.
 
 Heirloom doctools: https://github.com/n-t-roff/heirloom-doctools


Regression tests that use public BSD source  data to build more
BSD are a good start, but just a start, insufficient to discover
all problems.  There's non public user data sets to consider.

Many users won't read current@, just announce@, so before removal
hits a Release, we need a one Release warning, ie This is the last
Release before old functionality goes.

Assume lots of user data will Not be compatible with heirloom-doctools
 users wont know to start checking their data, until they see an
announcement in the next Release.

We'll need a copy of same version of existing tools, macros etc, copied out
unchanged to a port or meta port so users affected have a lifeboat.

User data Will break: (My groff usage frequently broke when groff
changed:  I use groff for CV, business card, letters, invoices, 
personal, with embedded pics, scaled  offset figures, tables,
fonts, sizes,  ouput in all of txt ps pdf pcl  html output.)

Unfortnately I have'nt time to help test with my data as FreeBSD
already eats too much time, shoving bind from src to ports (+planning
to dump bind  move on) + ripping majordomo  acroread out of ports,
all of which I need  must restore before upgrading servers 
workstations.

Changes would need maximal warning  minimum disruption please.

Cheers,
Julian
--
Julian Stacey, BSD Linux Unix C Sys Eng Consultant Munich http://berklix.com
Indent previous with  .  Reply Below as a play script.
Send plain text, Not quoted-printable, HTML, or base64.
___
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to freebsd-current-unsubscr...@freebsd.org


Jenkins build is back to normal : FreeBSD_HEAD #2770

2015-05-15 Thread jenkins-admin
See https://jenkins.freebsd.org/job/FreeBSD_HEAD/2770/changes

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


Jenkins build is back to stable : FreeBSD_HEAD-tests2 #1038

2015-05-15 Thread jenkins-admin
See https://jenkins.freebsd.org/job/FreeBSD_HEAD-tests2/1038/

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


Jenkins build is back to normal : FreeBSD_HEAD_i386 #138

2015-05-15 Thread jenkins-admin
See https://jenkins.freebsd.org/job/FreeBSD_HEAD_i386/138/changes

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


UMA initialization failure with 48 core ARM64

2015-05-15 Thread Michał Stanek
Hi,

I am experiencing an early failure of UMA on an ARM64 platform with 48
cores enabled. I get a kernel panic during initialization of VM. Here is
the boot log (lines with 'MST:' are my own debug printfs).

Copyright (c) 1992-2015 The FreeBSD Project.
Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
The Regents of the University of California. All rights reserved.
FreeBSD is a registered trademark of The FreeBSD Foundation.
FreeBSD 11.0-CURRENT #333 52fd91e(smp_48)-dirty: Fri May 15 18:26:56 CEST
2015

mst@arm64-prime:/usr/home/mst/freebsd_v8/obj_kernel/arm64.aarch64/usr/home/mst/freebsd_v8/kernel/sys/THUNDER-88XX
arm64
FreeBSD clang version 3.6.0 (tags/RELEASE_360/final 230434) 20150225
MST: in vm_mem_init()
MST: in vmem_init() with param *vm == kernel_arena
MST: in vmem_xalloc() with param *vm == kernel_arena
MST: in vmem_xalloc() with param *vm == kmem_arena
panic: mtx_lock() of spin mutex (null) @
/usr/home/mst/freebsd_v8/kernel/sys/kern/subr_vmem.c:1165
cpuid = 0
KDB: enter: panic
[ thread pid 0 tid 0 ]
Stopped at  0xff80001f4f80:

The kernel boots fine when MAXCPU is set to 30 or lower, but the error
above always appears when it is set to a higher value.

The panic is triggered by a KASSERT in __mtx_lock_flags() which is called
with the macro VMEM_LOCK(vm) in vmem_xalloc(). This is line 1143 in
subr_vmem.c (log shows different line number due to added printfs).
It looks like the lock belongs to 'kmem_arena' which is uninitialized at
this point (kmeminit() has not been called yet).

While debugging, I tried modifying VM code as a quick workaround. I
replaced the number of cores to 1 wherever mp_ncpus, mp_maxid or MAXCPU
(and others) are read. This, I believe, limits UMA per-cpu caches to just
one, while the rest of the OS (scheduler, etc) sees all 48 cores.
In addition, I changed UMA_BOOT_PAGES in sys/vm/uma_int.h to 512 (default
was 64).
With these tweaks, I got a successful (but not really stable) boot with 48
cores. Of course these are dirty hacks and a proper solution is needed.

I am a bit surprised that the kernel fails with MAXCPU==48 as the amd64
arch has this value set to '256' and I have read posts that other platforms
with even more cores have worked fine. Perhaps I need to tweak some other
VM parameters, apart from UMA_BOOT_PAGES (AKA vm.boot_pages), but I am not
sure how.

I included a full stacktrace and a more verbose log (with UMA_DEBUG macros
enabled) in the attachment. There is also a diff of the hacks I used while
debugging.

Best regards,
Michal Stanek
diff --git a/sys/kern/kern_malloc.c b/sys/kern/kern_malloc.c
index aef1e4e..be225fb 100644
--- a/sys/kern/kern_malloc.c
+++ b/sys/kern/kern_malloc.c
@@ -874,7 +874,7 @@ malloc_uninit(void *data)
 * Look for memory leaks.
 */
temp_allocs = temp_bytes = 0;
-   for (i = 0; i  MAXCPU; i++) {
+   for (i = 0; i  1; i++) {
mtsp = mtip-mti_stats[i];
temp_allocs += mtsp-mts_numallocs;
temp_allocs -= mtsp-mts_numfrees;
diff --git a/sys/kern/subr_vmem.c b/sys/kern/subr_vmem.c
index 80940be..89d62ed 100644
--- a/sys/kern/subr_vmem.c
+++ b/sys/kern/subr_vmem.c
@@ -665,7 +665,8 @@ vmem_startup(void)
 * CPUs to attempt to allocate new tags concurrently to limit
 * false restarts in UMA.
 */
-   uma_zone_reserve(vmem_bt_zone, BT_MAXALLOC * (mp_ncpus + 1) / 2);
+   //mst look here
+   uma_zone_reserve(vmem_bt_zone, BT_MAXALLOC * (1 + 1) / 2);
uma_zone_set_allocf(vmem_bt_zone, vmem_bt_alloc);
 #endif
 }
diff --git a/sys/vm/uma_core.c b/sys/vm/uma_core.c
index b96c421..6382437 100644
--- a/sys/vm/uma_core.c
+++ b/sys/vm/uma_core.c
@@ -98,6 +98,14 @@ __FBSDID($FreeBSD$);
 #include vm/memguard.h
 #endif
 
+//mst: override some defines
+#undef curcpu
+#definecurcpu  0
+#undef CPU_FOREACH
+#defineCPU_FOREACH(i)  
\
+   for ((i) = 0; (i) = 0; (i)++)  \
+   if (!CPU_ABSENT((i)))
+
 /*
  * This is the zone and keg from which all zones are spawned.  The idea is that
  * even the zone  keg heads are allocated from the allocator, so we use the
@@ -1228,6 +1236,7 @@ keg_small_init(uma_keg_t keg)
 
if (keg-uk_flags  UMA_ZONE_PCPU) {
u_int ncpus = mp_ncpus ? mp_ncpus : MAXCPU;
+   ncpus = 1;
 
keg-uk_slabsize = sizeof(struct pcpu);
keg-uk_ppera = howmany(ncpus * sizeof(struct pcpu),
@@ -1822,7 +1831,7 @@ uma_startup(void *bootmem, int boot_pages)
 #endif
args.name = UMA Zones;
args.size = sizeof(struct uma_zone) +
-   (sizeof(struct uma_cache) * (mp_maxid + 1));
+   (sizeof(struct uma_cache) * (0 + 1));
args.ctor = zone_ctor;
args.dtor = zone_dtor;
args.uminit = zero_init;
@@ -3301,7 +3310,7 @@ uma_zero_item(void *item, uma_zone_t zone)
 {
 
if (zone-uz_flags  

CFR - watchdogd exit timeout

2015-05-15 Thread Ian Lepore
I would like to add a new feature to watchdogd(8): -x seconds option
to specify the watchdog timeout to leave in effect when the program
exits (currently behavior is to disable the watchdog on exit).  The
change is available for review...

  https://reviews.freebsd.org/D2556

-- Ian


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


Re: Deja vu: panic in hdaa_coonfigure() for i386, but not amd64 -- again

2015-05-15 Thread David Wolfskill
On Fri, May 15, 2015 at 02:59:10PM -0400, John Baldwin wrote:
 ...
 Hummm, the only recent change is 281544, but that should be in your working
 kernel.

Yes; that dates from 14 April, and I had been doing daily build/boots of
head/i386 through thta period without incident.  Absent something
compelling, I'm pretty sure that experience alone removes 281544 from
plausibly being implicated.

 It does mess with the layout of pins though so maybe try reverting it
 anyway?
 
 It might also be worth trying to revert just the one commit you identified
 earlier.  It just seems odd for 'as[cnt]' to fault here but not earlier.
 

OK; I tried reverting 282650, but the result wouldn't build because the
AFMT_CHANNEL_MAX token wasn't defined.

Turns out it had been used by 282651, so I reverted that (and found that
it would have been cleaner had I reverted them in reverse sequence, but
svn patch seemed to merely whine a bit, but cope anyway).

After reverting both 282650  282651, the resulting kernel built.

I commented out the 'hint.hdac.0.disabled=1' entry in
/boot/device.hints, pressed the button, and watched for magic smoke

FreeBSD localhost 11.0-CURRENT FreeBSD 11.0-CURRENT #1598  
r282948M/282952:1100072: Fri May 15 12:39:11 PDT 2015 
root@localhost:/common/S4/obj/usr/src/sys/CANARY  i386

localhost(11.0-C)[4] cat /dev/sndstat 
Installed devices:
pcm0: NVIDIA (0x0042) (HDMI/DP 8ch) (play)
pcm1: NVIDIA (0x0042) (HDMI/DP 8ch) (play)
pcm2: Realtek ALC292 (Analog 2.0+HP/2.0) (play/rec) default
pcm3: Realtek ALC292 (Analog) (play/rec)
localhost(11.0-C)[5] 

No magic smoke leaked out this time! :-)

(I note that with 'hint.hdac.0.disabled=1' in place, only the RealTek
codec showed up in that output.  Not that this is surprising -- rather,
it's a bit of a comforting reality check after seeing so many panics.)

Please also note:
* head/amd64 hasn't experienced any such panics for me (yes, on the
  same hardware; that's one of the reasons I do this sort of thing).

* This hardware exhibits a bit of a peculiarity under FreeBSD: if
  phones are inserted in the headphone jack, there's a loud
  static/hissing sound, regardless of any intentional source of a
  signal being played.  Neither MS Windows 7, Fedora 20, nor Fedora
  21 exhibits this behavior.  (I'm trying to puzzle my way through
  the way the Linux folks document the HDA configuration to try to
  figure out what knob needs to be twisted in what way so I can use
  headphones on the machine  Clues would be welcome.)

Anyway, I think we have a smoking gun, as it were.  Thanks for your
help, John! :-)

Peace,
david
-- 
David H. Wolfskill  da...@catwhisker.org
Those who murder in the name of God or prophet are blasphemous cowards.

See http://www.catwhisker.org/~david/publickey.gpg for my public key.


pgpoL6gpdvO9I.pgp
Description: PGP signature


Jenkins build became unstable: FreeBSD_HEAD-tests2 #1037

2015-05-15 Thread jenkins-admin
See https://jenkins.freebsd.org/job/FreeBSD_HEAD-tests2/1037/

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


Build failed in Jenkins: FreeBSD_HEAD_i386 #137

2015-05-15 Thread jenkins-admin
See https://jenkins.freebsd.org/job/FreeBSD_HEAD_i386/137/changes

Changes:

[pfg] Break apart the gnu_inline attribute and use artificial if available.

In general it is bad practice to use the gnu_inline attribute but we
will need it in special cases like FORTIFY_SOURCE. In this specific
case it is also useful to have the artificial attribute:

This attribute is useful for small inline wrappers which if possible
should appear during debugging as a unit, depending on the debug info
format it will either mean marking the function as artificial or using the
caller location for all instructions within the inlined body.

This attribute appears to be currently implemented only in GCC. Use it
only in conjuntion with gnu_inline in the cases where it is available,
which is similar in spirit in how it's used in glibc.

[cy] Correct location for libntpevent.a.

[zbb] Introduce support for the Alpine PoC from Annapurna Labs

The Alpine Platform-On-Chip offers multicore processing
(quad ARM Cortex-A15), 1/10Gb Ethernet, SATA 3, PCI-E 3,
DMA engines, Virtualization, Advanced Power Management and other.

This code drop involves basic platform support including:
SMP, IRQs, SerDes, SATA. As of now it is missing the PCIe support.
Part of the functionality is provided by the low-level code (HAL)
delivered by the chip vendor (Annapurna Labs) and is a subject to
change in the future (is planned to be moved to sys/contrib directory).

The review log for this commit is available here:
https://reviews.freebsd.org/D2340

Reviewed by:andrew, ian, imp
Obtained from:  Semihalf
Sponsored by:   Annapurna Labs

[ian] Add assertions that the addresses passed to tlb maintenance are 
page-aligned.

Perform cache writebacks and invalidations in the correct (inner to outer
or vice versa) order, and add comments that explain that.

Consistantly use 'va' as the variable name for virtual addresses.

Submitted by:   Michal Meloun mel...@miracle.cz

[ian] Retrieve the cache parms in the proper arch-specific way.

Submitted by:   Michal Meloun mel...@miracle.cz

[gnn] Summary: Remove spurious, extra, next header comments.
Correct the name of the pad length field.

[pfg] Replace a CONSTCOND for a void value as a replacement for __unreachable 
builtin

This only applies if we are not using clang or gcc but it lets us use the
__unreachable() buitin in expressions.

Suggested by:   tijl

--
[...truncated 62285 lines...]
14 errors generated.
In file included from 
https://jenkins.freebsd.org/job/FreeBSD_HEAD_i386/ws/lib/libcompiler_rt/../../contrib/compiler-rt/lib/builtins/modsi3.c:15:
In file included from 
https://jenkins.freebsd.org/job/FreeBSD_HEAD_i386/ws/lib/libcompiler_rt/../../contrib/compiler-rt/lib/builtins/int_lib.h:52:
In file included from 
https://jenkins.freebsd.org/job/FreeBSD_HEAD_i386/ws/obj/jenkins/workspace/FreeBSD_HEAD_i386/tmp/usr/include/limits.h:36:
https://jenkins.freebsd.org/job/FreeBSD_HEAD_i386/ws/obj/jenkins/workspace/FreeBSD_HEAD_i386/tmp/usr/include/sys/cdefs.h:550:2:
 error: #else after #else
#else
 ^
https://jenkins.freebsd.org/job/FreeBSD_HEAD_i386/ws/obj/jenkins/workspace/FreeBSD_HEAD_i386/tmp/usr/include/sys/cdefs.h:36:2:
 error: unterminated conditional directive
#ifndef _SYS_CDEFS_H_
 ^
In file included from 
https://jenkins.freebsd.org/job/FreeBSD_HEAD_i386/ws/lib/libcompiler_rt/../../contrib/compiler-rt/lib/builtins/modsi3.c:15:
In file included from 
https://jenkins.freebsd.org/job/FreeBSD_HEAD_i386/ws/lib/libcompiler_rt/../../contrib/compiler-rt/lib/builtins/int_lib.h:52:
In file included from 
https://jenkins.freebsd.org/job/FreeBSD_HEAD_i386/ws/obj/jenkins/workspace/FreeBSD_HEAD_i386/tmp/usr/include/limits.h:138:
In file included from 
https://jenkins.freebsd.org/job/FreeBSD_HEAD_i386/ws/obj/jenkins/workspace/FreeBSD_HEAD_i386/tmp/usr/include/sys/limits.h:35:
https://jenkins.freebsd.org/job/FreeBSD_HEAD_i386/ws/obj/jenkins/workspace/FreeBSD_HEAD_i386/tmp/usr/include/sys/cdefs.h:550:2:
 error: #else after #else
#else
 ^
https://jenkins.freebsd.org/job/FreeBSD_HEAD_i386/ws/obj/jenkins/workspace/FreeBSD_HEAD_i386/tmp/usr/include/sys/cdefs.h:36:2:
 error: unterminated conditional directive
#ifndef _SYS_CDEFS_H_
 ^
In file included from 
https://jenkins.freebsd.org/job/FreeBSD_HEAD_i386/ws/lib/libcompiler_rt/../../contrib/compiler-rt/lib/builtins/modsi3.c:15:
In file included from 
https://jenkins.freebsd.org/job/FreeBSD_HEAD_i386/ws/lib/libcompiler_rt/../../contrib/compiler-rt/lib/builtins/int_lib.h:53:
In file included from 
https://jenkins.freebsd.org/job/FreeBSD_HEAD_i386/ws/obj/jenkins/workspace/FreeBSD_HEAD_i386/tmp/usr/include/stdint.h:32:
https://jenkins.freebsd.org/job/FreeBSD_HEAD_i386/ws/obj/jenkins/workspace/FreeBSD_HEAD_i386/tmp/usr/include/sys/cdefs.h:550:2:
 error: #else after #else
#else
 ^
https://jenkins.freebsd.org/job/FreeBSD_HEAD_i386/ws/obj/jenkins/workspace/FreeBSD_HEAD_i386/tmp/usr/include/sys/cdefs.h:36:2:
 error: unterminated conditional 

Re: Deja vu: panic in hdaa_coonfigure() for i386, but not amd64 -- again

2015-05-15 Thread John Baldwin
On Friday, May 15, 2015 11:39:56 AM David Wolfskill wrote:
 On Fri, May 15, 2015 at 11:40:44AM -0400, John Baldwin wrote:
  On Saturday, May 09, 2015 07:27:51 AM David Wolfskill wrote:
   Ref. http://docs.FreeBSD.org/cgi/mid.cgi?20150415134515.GQ1224 --
   similar symptoms.  And again, I captured screenshots on a phone, but
   FreeBSD doesn't seem to recognize the (USB-attached) phone as something
   that might act like a file system (I guess; I'm a bit new to
   smartphones).
   
   In this case, my starting-point was r282623; sources were updated to
   r282676.  I was able to update from:
  ...
   Stopped at ... = hdaa_configure+0x14af:   movb0x3,%dl
  
  Can you do 'l *hdaa_configure+0x14af' in gdb against the kernel.debug?
  Perhaps set 'hint.hdac.0.disabled=1' at the loader prompt as a temporary
  workaround to boot if needed?
  ...
 
 'hint.hdac.0.disabled=1' appended to /boot/device.hints temporarily.
 
 now running:
 FreeBSD localhost 11.0-CURRENT FreeBSD 11.0-CURRENT #1597  
 r282948M/282952:1100073: Fri May 15 09:13:17 PDT 2015 
 r...@g1-254.catwhisker.org:/common/S4/obj/usr/src/sys/CANARY  i386
 
 Info you requested:
 
 (gdb) l *hdaa_configure+0x14af
 0xc08c8e3f is in hdaa_configure (/usr/src/sys/dev/sound/pci/hda/hdaa.c:3280).
 3275as[cnt].pincnt++;
 3276/* Association 15 is a multiple unassociated 
 pins. */
 3277if (j == 15)
 3278cnt++;
 3279}
 3280if (j != 15  as[cnt].pincnt  0) {
 3281if (hpredir  as[cnt].pincnt  1)
 3282as[cnt].hpredir = first;
 3283cnt++;
 3284}
 (gdb) 

Hummm, the only recent change is 281544, but that should be in your working
kernel.  It does mess with the layout of pins though so maybe try reverting it
anyway?

It might also be worth trying to revert just the one commit you identified
earlier.  It just seems odd for 'as[cnt]' to fault here but not earlier.

-- 
John Baldwin
___
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to freebsd-current-unsubscr...@freebsd.org


Re: Deja vu: panic in hdaa_coonfigure() for i386, but not amd64 -- again

2015-05-15 Thread David Wolfskill
On Fri, May 15, 2015 at 11:40:44AM -0400, John Baldwin wrote:
 On Saturday, May 09, 2015 07:27:51 AM David Wolfskill wrote:
  Ref. http://docs.FreeBSD.org/cgi/mid.cgi?20150415134515.GQ1224 --
  similar symptoms.  And again, I captured screenshots on a phone, but
  FreeBSD doesn't seem to recognize the (USB-attached) phone as something
  that might act like a file system (I guess; I'm a bit new to
  smartphones).
  
  In this case, my starting-point was r282623; sources were updated to
  r282676.  I was able to update from:
 ...
  Stopped at ... = hdaa_configure+0x14af: movb0x3,%dl
 
 Can you do 'l *hdaa_configure+0x14af' in gdb against the kernel.debug?
 Perhaps set 'hint.hdac.0.disabled=1' at the loader prompt as a temporary
 workaround to boot if needed?
 ...

'hint.hdac.0.disabled=1' appended to /boot/device.hints temporarily.

now running:
FreeBSD localhost 11.0-CURRENT FreeBSD 11.0-CURRENT #1597  
r282948M/282952:1100073: Fri May 15 09:13:17 PDT 2015 
r...@g1-254.catwhisker.org:/common/S4/obj/usr/src/sys/CANARY  i386

Info you requested:

(gdb) l *hdaa_configure+0x14af
0xc08c8e3f is in hdaa_configure (/usr/src/sys/dev/sound/pci/hda/hdaa.c:3280).
3275as[cnt].pincnt++;
3276/* Association 15 is a multiple unassociated 
pins. */
3277if (j == 15)
3278cnt++;
3279}
3280if (j != 15  as[cnt].pincnt  0) {
3281if (hpredir  as[cnt].pincnt  1)
3282as[cnt].hpredir = first;
3283cnt++;
3284}
(gdb) 


Info about the machine (verbose dmesg.boot; dmidecode; pciconf -lv
output) may be found at http://www.catwhisker.org/~david/FreeBSD/m4800/.

Thanks!

Peace,
david
-- 
David H. Wolfskill  da...@catwhisker.org
Those who murder in the name of God or prophet are blasphemous cowards.

See http://www.catwhisker.org/~david/publickey.gpg for my public key.


pgpR11z563FAz.pgp
Description: PGP signature