Commit Graph

121123 Commits

Author SHA1 Message Date
joerg
7a05a6aa88 For HAVE_LIBGCC=no, use compiler-rt for quad support. 2014-01-15 21:12:57 +00:00
joerg
c620e3c245 More sanitizers we are still not interested in. 2014-01-15 21:07:19 +00:00
joerg
b4b49684a3 Import compiler-rt r199273. Support libkern/libsa alternative headers.
Mark assembler functions as such to prevent ld snafu.
2014-01-15 21:06:10 +00:00
pooka
eed75ee5c9 yearly update
Miraculously, the list got smaller(!)
2014-01-15 15:10:31 +00:00
tsutsui
50048dbc5e Revert previous. PR/48431 claims ALPHA_PHYS_TO_K0SEG() is necessary.
Actually CHIP_MEM_SYS_START(v) seems a physical address per *_mem_map()
function, but I don't think mmap() function should return K0SEG address
(it should return PA cookie IIUC) so I guess there is something wrong
in Titan's bus space functions.  I'll investigate them later.
2014-01-15 14:27:49 +00:00
roy
a277db7c28 Remove dead code. 2014-01-15 10:52:11 +00:00
roy
b122449be2 If the address matches a cloning route, it is also a neighbor.
This allows us to use prefixes which userland may have added.
2014-01-15 10:25:04 +00:00
christos
3b438d6a5c use new bsd.syscall.mk 2014-01-14 18:51:24 +00:00
pgoyette
ae263bb3de Link new opencrypto library into the build. 2014-01-14 17:17:52 +00:00
pgoyette
5e3ad7ff0e Add new rump library for opencrypto framework 2014-01-14 17:15:09 +00:00
pgoyette
2e6d77ce29 Add the MODULE parts for blowfish and des.
Add camellia algorithm.  (pooka@ says no lib version change required)
2014-01-14 17:05:50 +00:00
pgoyette
05ab90b48a Clean-up module initialization 2014-01-14 14:16:47 +00:00
macallan
5357cde09e cap mappable framebuffer size at 64MB before dividing it up for each output
now we can actually access the 2nd fb on boards with more than 64MB VRAM
2014-01-14 09:46:42 +00:00
macallan
2ff97689e1 - move cursor area to the end of each display's chunk of fb RAM
- use memory between display and cursor as glyph cache instead of blindly
  trying to use 8MB
should fix PR 48492
2014-01-14 01:35:13 +00:00
pgoyette
c01db8ec62 When using modular opencrypto, make sure the sysctl variables get
created.
2014-01-13 21:15:36 +00:00
macallan
86e9be6a98 try not to crash when calling glyphcache_wipe() on an uninitialized cache
first step to fix PR 48492
2014-01-13 19:30:33 +00:00
roy
e0146f9ccc Remove the now un-used function in6ifa_ifplocaladdr. 2014-01-13 18:57:48 +00:00
matt
be2de77e3b Get rid on some useless pc addition. Use adr or ldr with pc relative
addressing.
2014-01-13 18:26:34 +00:00
roy
f29241a88d When handling NS/NA we need to check our prefix list instead of our
address list to work out if it came from a valid neighbor.
2014-01-13 18:23:36 +00:00
tsutsui
fb53ad091b bus_space_mmap(9) function should return alpha_btop(PA), not alpha_btop(VA).
Pointed out in PR port-alpha/48431 from nullnilaki.
2014-01-13 15:48:09 +00:00
hannken
29148b903d Support for vnode operation versioning. Allow a new keyword "VERSION"
in the description so "VERSION 2" will change the name of the argument
from vop_XXX_args to vop_XXX_v2_args.
2014-01-13 12:07:55 +00:00
njoly
917429fe1b Regen. 2014-01-13 10:33:23 +00:00
njoly
283688165b Cleanup, and reduce diffs between arches. Make alpha use
linux_sys_{get,set}timeofday like others.
2014-01-13 10:33:03 +00:00
reinoud
0e492f7c8d Regen 2014-01-13 08:24:17 +00:00
reinoud
4e9ecc3794 Add Atmel's SAM-BA programming port as found on Atmel's SAM3E (ARM CortexM3)
boards
2014-01-13 08:23:58 +00:00
reinoud
680415d3af Regen 2014-01-13 08:22:07 +00:00
reinoud
39e8846521 Add Future Bits as vendor code
Add Atmel SAM3E based microcontroller board "4Pi" by Future Bits
2014-01-13 08:21:41 +00:00
joerg
456d311f26 Try to reserve space in a way that results in the same allocation for
both LLVM and GNU as.
2014-01-12 20:31:50 +00:00
joerg
b3c9683653 Improve assembler syntax. 2014-01-12 19:37:43 +00:00
tsutsui
8c436a9898 Add empty LIBCRTI= as LIBCRT0 to build sa programs without installed DESTDIR.
XXX: probabry we should have bsd.saprog.mk or something.
2014-01-12 15:26:28 +00:00
tsutsui
bb834b97ba Remove obsolete exec.c for a.out. It was superseded by loadfile() long ago. 2014-01-12 15:19:57 +00:00
joerg
c9ec0f85a6 Revert, breaks the build due to missing rumpns_delay in librump.so. 2014-01-12 00:29:15 +00:00
jakllsch
e45cb093f5 KASSERT that cmd is non-NULL in more places, and in a place that previously
did not use KASSERT to do the same thing.
2014-01-11 20:29:03 +00:00
jakllsch
056e4dba49 Do not take data from the controller in interrupt handler if we are polling. 2014-01-11 20:17:56 +00:00
jakllsch
9815810895 remove unused and undefined .globl 2014-01-11 19:31:47 +00:00
palle
d3ad036880 No need to make CI_MMFSA depend on SUN4V since the ci_mmfsa field is always present in the cpu_info struct now 2014-01-11 18:31:35 +00:00
matt
c3182005af Add hw.printfataltraps sysctl. Always print fatal traps for init. For all
other processes, only do so if cpu_printfataltraps is true.
2014-01-11 17:32:20 +00:00
christos
5a3fb681a6 Comment about missing stackframe member initialization (Richard Hansen)
I haven't studied the code, but I'm concerned that not initializing
sf->sf_edi could potentially leak a few bytes of information to a new
userspace process.
2014-01-11 17:14:00 +00:00
christos
09f4588963 stop ddb backtrace at Xsoftintr() (Richard Hansen)
Stop unwinding frames when db_stack_trace_print() encouters
Xsoftintr().  This avoids a recursive panic() due to an invalid
pointer dereference when a software interrupt panic()s.

Here's what happens without this change:

When db_stack_trace_print() runs during a panic() and db_nextframe()
encounters the Xsoftintr() frame, db_nextframe() does the following at
db_machdep.c:292:

  1. checks to see if there's a Xsoftintr() symbol (there is)
  2. checks to see if the frame corresponds to an interrupt (the
     symbol name begins with "Xsoft" so it does)

If both of the above are true (they are), db_nextframe() at
db_machdep.c:303 tries to get a pointer to a struct intrframe.
According to the comment at line 300, the second argument passed to
Xsoftintr() is a pointer to a struct intrframe.  However, the comment
and the corresponding code are not correct -- Xsoftintr() doesn't take
any arguments[1].  Attempting to fetch the second argument only yields
stack garbage, not a struct intrframe.  This causes db_machdep.c:307
to dereference a bad pointer, triggering the recursive panic().

[1] Xsoftintr() is called by Xspllower() which is called by splx()
    a.k.a. spllower().  Neither Xspllower() nor Xsoftintr() set up a
    standard frame when called (they don't do 'pushl %ebp; movl %esp,
    %ebp'), so Xsoftintr()'s %ebp is the same as splx()'s %ebp.  This
    makes splx()'s arguments look like Xsoftintr()'s arguments, and
    splx() does not take any arguments.

You can reproduce the recursive panic by reverting this change and
adding a call to panic() inside ipintr().  The backtrace will look
like the following (the line numbers you see might differ from these
line numbers -- this backtrace was generated from a slightly modified
version of the NetBSD 6.1 kernel):

    #0  vpanic (fmt=0xc0ba995b "trap", ap=0xdaa51730) at /usr/src/sys/kern/subr_prf.c:211
    #1  0xc0790529 in panic (fmt=0xc0ba995b "trap") at /usr/src/sys/kern/subr_prf.c:205
    #2  0xc07decbc in trap (frame=0xdaa517c0) at /usr/src/sys/arch/i386/i386/trap.c:396
    #3  0xc010cf48 in ?? () at /usr/src/sys/arch/i386/i386/vector.S:983
    #4  0xc02857f0 in db_get_value (addr=56, size=4, is_signed=false) at /usr/src/sys/ddb/db_access.c:72
    #5  0xc028a09a in db_nextframe (nextframe=0xdaa51b40, retaddr=0xdaa51b3c, arg0=0xdaa51b38, ip=0xdaa51b34, argp=0xdaa51d88, is_trap=0, pr=0xc07901b5 <printf>) at /usr/src/sys/arch/i386/i386/db_machdep.c:308
    #6  0xc028be2b in db_stack_trace_print (addr=<optimized out>, have_addr=true, count=65533, modif=0xc0bb44bf "", pr=0xc07901b5 <printf>) at /usr/src/sys/arch/x86/x86/db_trace.c:275
    #7  0xc07903cb in vpanic (fmt=0xc0b6ba76 "testing", ap=0xdaa51d4c) at /usr/src/sys/kern/subr_prf.c:296
    #8  0xc0790529 in panic (fmt=0xc0b6ba76 "testing") at /usr/src/sys/kern/subr_prf.c:205
    #9  0xc04e3d4f in ipintr () at /usr/src/sys/netinet/ip_input.c:369
    #10 0xc054ac0d in softint_execute (s=<optimized out>, si=<optimized out>, l=<optimized out>) at /usr/src/sys/kern/kern_softint.c:543
    #11 softint_dispatch (pinned=0xc4085560, s=4) at /usr/src/sys/kern/kern_softint.c:825
    #12 0xc0100fdb in ?? () at /usr/src/sys/arch/i386/i386/spl.S:390
    #13 0xc07d2e11 in tcp_usrreq (so=0xc40b0534, req=4, m=0x0, nam=0xc317ba00, control=0x0, l=0xc4085560) at /usr/src/sys/netinet/tcp_usrreq.c:615
    #14 0xc04bb300 in tcp_usrreq_wrapper (a=0xc40b0534, b=4, c=0x0, d=0xc317ba00, e=0x0, f=0xc4085560) at /usr/src/sys/netinet/in_proto.c:164
    #15 0xc0839006 in soconnect (so=0xc40b0534, nam=0xc317ba00, l=0xc4085560) at /usr/src/sys/kern/uipc_socket.c:821
    #16 0xc083c4ce in do_sys_connect (l=0xc4085560, fd=4, nam=0xc317ba00) at /usr/src/sys/kern/uipc_syscalls.c:371
    #17 0xc083dbeb in sys_connect (l=0xc4085560, uap=0xdbc27d00, retval=0xdbc27d28) at /usr/src/sys/kern/uipc_syscalls.c:350
    #18 0xc07b1b4a in sy_call (rval=0xdbc27d28, uap=0xdbc27d00, l=0xc4085560, sy=0xc0c2f018) at /usr/src/sys/sys/syscallvar.h:61
    #19 syscall (frame=0xdbc27d48) at /usr/src/sys/arch/x86/x86/syscall.c:179
    #20 0xc010056d in ?? () at /usr/src/sys/arch/i386/i386/locore.S:1160
    Backtrace stopped: previous frame inner to this frame (corrupt stack?)
2014-01-11 17:11:50 +00:00
christos
be5445b6bd Add softint case (Richard Hansen) 2014-01-11 17:10:40 +00:00
christos
71826933a0 Sleep 10 seconds before rebooting due to panic()
To give an opportunity to screencap a panic(), or pause a VM to attach
a debugger.  (Richard Hansen)
2014-01-11 17:07:45 +00:00
christos
bf0a60cb4a remove vestige from old call to printk()
This line was introduced with a call to printk() in CVS revision
1.22.4.3 and should have been removed when the call to printk() was
removed in CVS revision 1.22.4.6.  (Richard Hansen)
2014-01-11 17:06:15 +00:00
christos
fb4d88d5dd fix a comment (cpu_switch() -> cpu_switchto()) (Richard Hansen) 2014-01-11 17:05:17 +00:00
tsutsui
79b7a7600a Remove unused declarations. 2014-01-11 17:00:37 +00:00
tsutsui
544accc1f7 Remove tab nits. 2014-01-11 16:34:05 +00:00
christos
b4a250d75c Reorder code to avoid use-after-free on error. From Maxime Villard 2014-01-11 16:31:20 +00:00
tsutsui
0dfe4134ab Misc KNF and cosmetics. 2014-01-11 15:51:02 +00:00
tsutsui
b7bcae5276 ctually remove all references to obsolete stinger.h. 2014-01-11 14:35:15 +00:00
tsutsui
9cef42a9d3 Remove unused KernInter stuff. 2014-01-11 14:09:13 +00:00
nakayama
a420884c46 Uncomment ifdef/endif and tabify. 2014-01-11 12:20:07 +00:00