let pool allocators advertise multiple page sizes

2016-11-07 Thread David Gwynne
this turns the pa_pagesz member of a pool allocator into a bitfield. pool pages can be many different sizes, they arent restricted to just the size provided by the hardware. to support this without introducing a page allocator per page size, a single page allocator can be used to allocate many dif

unifdef INSECURE

2016-11-07 Thread Ilya Kaliman
=== RCS file: /cvs/src/sys/stand/boot/cmd.c,v retrieving revision 1.63 diff -u -p -r1.63 cmd.c --- cmd.c 20 Jul 2014 19:33:54 - 1.63 +++ cmd.c 7 Nov 2016 22:47:40 - @@ -95,9 +95,7 @@ getcmd(void) int read_con

Re: The end of nd6_output()

2016-11-07 Thread Gregor Best
Hi, On Mon, Nov 07, 2016 at 09:12:12AM +0100, Martin Pieuchot wrote: > [...] > Could you capture the route changes via "# route monitor"? I'd like > to know if the 'bad gateway value' message is triggered by userland > or the kernel. > [...] I can't reproduce the problem anymore. If it does turn

switchd(8): add more packet-out validations

2016-11-07 Thread Rafael Zalamena
Now that we have the flow-mod validation with the action/instructions support we can extend the usage of this functions for the packet-out validation. This diff increases the packet-out validation coverage by also doing instructions and packet truncation checks. ok? Index: ofp13.c ==

Re: Kill ifa_ifwithnet()

2016-11-07 Thread Vincent Gross
On Mon, 7 Nov 2016 08:59:53 +0100 Martin Pieuchot wrote: > On 04/11/16(Fri) 21:33, Vincent Gross wrote: > > [...] > > Why are you killing Strict Source Route Record ? Just as you did > > with rtredirect(), you can check whether RTF_GATEWAY is set and > > send back an ICMP_UNREACH if so. Or did I

Recursive splsoftnet() in PMTU

2016-11-07 Thread Martin Pieuchot
Timers configured with rt_timer_add(9) are always run under splsoftnet() so no need to take it recursively. ok? Index: netinet/ip_icmp.c === RCS file: /cvs/src/sys/netinet/ip_icmp.c,v retrieving revision 1.152 diff -u -p -r1.152 ip_i

Avoid spl recursion in doaccept()

2016-11-07 Thread Martin Pieuchot
We're aiming to replace critical sections protected by splsoftnet() by a non recursive rwlock. So we'll have to care about recursivity. Diff below prevents a recursion in the error path. Currently closef() will call soclose() which will take splsoftnet() again. So let's release the spl level be

splnet() in socket layer

2016-11-07 Thread Martin Pieuchot
splnet() was necessary when link state changes were executed from hardware interrupt handlers. In 2013 they got deferred to their own task, so KERNEL_LOCK() is what really protect these data structures. This is part of my bigger socket lock diff. ok? Index: kern/uipc_socket.c ==

Re: The end of nd6_output()

2016-11-07 Thread Martin Pieuchot
On 05/11/16(Sat) 19:26, Gregor Best wrote: > [...] > If I can do anything else to be of assistance, please let me know. Could you capture the route changes via "# route monitor"? I'd like to know if the 'bad gateway value' message is triggered by userland or the kernel.

Re: Stop watchdog timer during DDB session

2016-11-07 Thread Martin Pieuchot
On 02/11/16(Wed) 15:18, Christian Ludwig wrote: > Deliberately breaking into DDB, e.g. via serial console BREAK, can lead > to an abrupt end of the debugging session once the hardware watchdog > reboots the machine. This is because all CPUs are IPL_HIGH. None of them > tickles the watchdog anymore.

Re: Kill ifa_ifwithnet()

2016-11-07 Thread Martin Pieuchot
On 04/11/16(Fri) 21:33, Vincent Gross wrote: > [...] > Why are you killing Strict Source Route Record ? Just as you did with > rtredirect(), you can check whether RTF_GATEWAY is set and send back > an ICMP_UNREACH if so. Or did I miss something ? Like that? Index: netinet/ip_input.c