Show pageOld revisionsBacklinksBack to top This page is read only. You can view the source, but not change it. Ask your administrator if you think this is wrong. ====== FreeBSD Developer Summit, May, 2006 ====== This page describes the May 2006 %%FreeBSD%% Developer Summit, colocated with the [[http://www.bsdcan.org/2006/|BSDCan 2006]] conference taking place in Ottawa, Canada. The Summit will be held in room A0150, shown on the [[http://www.bsdcan.org/2006/images/site.jpg|SITE room map]]. Sessions will run from 9:00 to 18:00 each day. Anyone arriving on May 9 is welcome to meet at the Elephant and Castle pub after 16:00. We have the downstairs room reserved. [[http://maps.google.ca/maps?f=q&hl=en&q=39+clarence+street,+ottawa&t=h&om=1|Google Map]] ===== Informal Sessions, Wednesday May 10, 2006 ===== The informal sessions on Wednesday are intended to be rough working group meetings for the purposes of brain-storming, code reading, hacking, and chit-chat. Sessions occur in parallel and on an ad hoc basis, although there are some scheduled events. This schedule will change! Feel free to add new events to this list. ^ Time ^ Convener ^ Topic ^ | 09:00-12:00 | - | Introductions, morning discussions | | (30m) | rwatson, cel | NFSv4 | | 12:00-13:30 | Lunch | Elephant and Castle | | 13:30-18:00 | - | Afternoon discussions | | (1h) | rwatson | %%TrustedBSD%% [[/MandatoryAccessControl|MAC]] Framework Retrofit Discussion | | (2h30) | rwatson | Meeting of the Network Stack Cabal | | (1h) | gnn | Embedded %%FreeBSD%% Discussion | | - | rwatson | Network stack virtualization | | | | %%SoC%% mentor meeting / ranking discussion | | | linimon | PR backlog | | (1h) | gnn | PR Triage / Bug Bashing BOF | | 18:30-20:00 | Dinner | Haveli Indian, set price menu, drinks extra. | Session descriptions may be found later on this page. ===== Formal Sessions, Thursday May 11, 2006 ===== The formal sessions on Thursday take on a more formal presentation style, and consist of a series of presentations and moderated discussions on specific topics. In many cases, the contents of these presentations may reflect the result of events on Wednesday. Please contact Ed Maste and Scott Long to reserve a presentation slot. Note: This schedule may still be revised somewhat. This note will be updated once the final schedule and topics are set. ^ Time ^ Presenter ^ Topic ^ | 09:30-10:00 | Dario Freni | %%FreeSBIE%% | | 10:00-10:30 | cperciva | %%FreeBSD%% Update 2.0 | | 10:30-11:00 | gnn | The future of IPSec / IPv6 | | 11:00-11:15 | rwatson | %%TrustedBSD%% project status | | 11:15-11:30 | rwatson | SMPng Network Stack project status | | 11:30-12:00 | - | Network cabal summary | | 12:00-13:30 | - | Lunch, Royal Oak, 161 Laurier Ave, 230-9223 (tentative) | | -14:15 | sam | 802.11 Update | | 14:15-14:45 | rrs | SCTP | | 14:45-15:00 | rwatson | SMPng status update | | 30m | Marko | Stack virtualization | | 30m | Cel | NFSv4 | | | imp, jmg | ARM porting discussion | | | kmacy | %%FreeBSD%% on >16P hardware | | | kris | Ports update and discussion | ==== Minitalks ==== These minitalks are short (5-10 minutes) presentations or status updates, to be scheduled as time permits. ^ Presenter ^ Topic ^ | phk | New build option summary | | gibbs | %%FreeBSD%% Foundation Update | | peter | Minidumps | Formal presentation and discussion sessions will (likely) be made available via phone conference to developers who cannot attend in person. The session organizers are currently investigating the possibility of a live video feed. ====== Other Developer Summit Information ====== [[/DevSummit|DevSummit]] is the page for the %%EuroBSDCon%% 2005 developer summit, which took place in November, 2005. ====== Detailed Session Information ====== ===== Informal Session: State of Device Driver Framework ===== Convener: jmg ([[/JohnMarkGurney|JohnMarkGurney]]) While working on my presentation on Writing Device Drivers, I have found a number of issues where our documentation on device drivers is incorrect relating to how things are. This is to discuss ways to either change how our device driver framework to match what is in the tree, or to create a plan to bring device drivers into line w/ what we believe it should be (feel free to add to the list of things that should be talked about during the session): * bus_space_barrier not used in most device drivers * most arches do nothing relating to bus_space_map * ABI narrowing and hardening: exposed macros, symbols, data types, structures, etc Some general device driver changes that have been made that should briefly be discussed: * jumbo allocator * mbuf changes * MSI on PCI ===== Informal Session: NFSv4 ===== Convener: rwatson (for now) This session is a place-holder for possible discussion of NFSv4, including possibly adopting NFSv4 ACLs, integration of the NFSv4 server code, as well as future directions. ===== Informal Session: Meeting of the Network Stack Cabal ===== Convener: rwatson This %%FreeBSD%% Developer Summit looks like it will be particularly well-endowed with network stack developers, and a good opportunity for us to discussion, generally hash out, and ideally build concensus on a lot of interesting work that has been, and will be going on. In particular, to coordinate network stack work for the 7-CURRENT development branch over the next 12 months. Names associated with topics are simply the names of the people who proposed they be discussed, and don't necessarily connote ownership or responsibility for the work itself. Proposed discussion topics: * (gnn) Discussion of IPSEC cleanup and infrastructure, KAME code ownership and cleanup. * (rwatson) Network stack and SMP direction for the sockets layer * (rwatson) Network stack and SMP direction for netinet, netinet6 * (rwatson,andre,jmg,scottl,et al) Network stack memory allocation, the mbuf allocator, mbuma semantics and long-standing issues, interactions and optimizations for network interface device drivers. * (rwatson) Network stack virtualization * (bms,brooks,rwatson) Layer 2 rationalization (if_ef, if_vlan, ARP, ...) * (rrs) SCTP * (rrs) Routing for transport protocols * (brooks,mlaier) MobileIP6 * (brooks,bz) Interface state clarification, definition, and general sanity, interactions with routing * (sam) SADB+routing integration, policy-based routing * (sam) Dynamic interface handling * (sam) Proper link layer header requirements to avoid extraneous mbuf allocations * (sam) Revised interface cloning API for 802.11 VAP's and VLAN's * (sam) Modularized TCP congestion control for pluggable algorithms * (bz) IPFW needs a grammer, cleanup, maintainer and best libipfw One outcome of this session will be a set of slides summarizing in-progress and proposed network stack work for the next 6-12 months, to be presented during the formal sessions, in order to brief the more general developer community in network stack projects. ===== Informal Session: Embedded FreeBSD Discussion ===== Convener: gnn There have been plenty of disussions and attempts to build make %%FreeBSD%% more amenable to embedded devices. The embedded area is a place where we can definitely do more work and find more acceptance for our code. Of particular interest are: * Changes to the config and build system to more cleanly support cross builds. * Updates to GDB and serial backend system to make it possible to debug embedded devices. * Requirements for a configure tool so that embedded device makers can more easily control feature inclusion/exclusion (subsetting needs to be smaller than nanobsd has to offer and easier than picobsd) * Processor and hardware support targets. * Discussion about the various emulators available. Some expected outcomes: * Choose one reference platform for each processor we want to target * Figure out how to get said platforms to developers For a platform to be considered for support we need to find at least 5 developers willing to work on said platform. That is the minimum required to get to Tier 2 support for a system (note: core hasn't established formal guidelines for Tier 3->2 migration). Do we want to differenciate between processor family support (eg ARM, MIPS, PPC) and Individual chip support (eg CL9371, AT91RM9200, etc) for this designation. ===== Informal Session: TrustedBSD MAC Framework Retrofit Discussion ===== Convener: rwatson The %%TrustedBSD%% MAC Framework first shipped in %%FreeBSD%% 5.0, and was first committed to %%FreeBSD%% in 2002. This was following several years of research and development, and over time work has been performed with the sponsorship of Network Associates, DARPA, SPAWAR, SPARTA, and other organizations, and is now used by a number of organizations with both %%FreeBSD%%-provided and custom-developed security policy modules. Several years of experience working with the MAC Framework has helped to identify rough spots and new opportunities for the MAC Framework. This session will provide an opportunity for parties interested in the MAC Framework to discuss some of its weak spots, changes, future directions, etc. The intent of this discussion is to derive a common todo list for the %%FreeBSD%% 7.0 version of the MAC Framework. Topics include: * Naming consistency improvement for entry point names. * Forward and backward compatibility discussion; ABI and API versioning systems. * Improving the API and implementation of the MAC Framework label infrastructure. * Synchronization and performance: optimizing compile-time and run-time registered security policies. * Interesting new things, such as IPSEC integration, handling memory ownership with dynamic loading/unloading of labeled policies. * The integration of MAC and Audit -- auditing MAC, controlling Audit, etc. * Merging proposed feature changes from SEBSD -- privilege checks, mount point access control checks, file descriptor labeling and checks. * Ports infrastructure for MAC policy modules. Also on the table are topics relating to current policies: * Improving the structure of current policy modules, including API changes to the MAC Framework to support maintaining type safety for entry point definitions when they are present in multiple files (mac_policy.h needs to grow function prototype typedefs, etc). * Improving the quality and functionality of current policy modules, such as dwmalone's enhancements to mac_bsdextended, proposed improvements to mac_portacl. * Third party policies floating around, how to find a place for them in the %%FreeBSD%% source/ports ecology. ===== Formal Session: FreeBSD on >16P hardware ===== Convener: Kip Macy Multi-processing hardware on commodity desktops and servers is now a reality, with hyper-threading and multi-core hardware appearing even in mobile computing platforms. %%FreeBSD%%'s SMPng project has thus far been targeted at up to four processors, although has seen testing and optimization work on as many as twelve processors. Sun is now making single-chip 32-thread hardware widely available and Intel and AMD are incrementally adding more cores per chip. Given the current trends driven by the clear challenges to increasing single-threaded performance, scaling to larger numbers of processors is considered desirable. This is a brain-storming session to discuss practical issues in running with many processors: * Scalability of our kernel algorithms and data structures. The scheduler, sychronization mechanisms, locking granularity, etc. * For example, the sched_lock is acquired in a large number of places and is likely a scaling bottleneck. * Ability to manage large numbers of processors -- from MAXCPU to CPU hotswap, the introduction of pools of CPUs, hypervisors, etc, we have work to do. The goal of this session is to identify a hit list of "must have"'s to allow %%FreeBSD%% to execute (and well) on 32-processor systems. Some will be easy (increasing hard-coded maximums), and others will require a lot of work. Getting started requires a bit of planning, and that's something we need to work on now if it's going to affect the 7.0 release in a year. ===== Informal Session: Network Stack Virtualization ===== Network stack virtualization has been a topic of discussion in the %%FreeBSD%% community for several year, since Marko Zek presented an implementation of virtualization at USENIX ATC. Since that time, a number of ISPs have adopted %%FreeBSD%% 4.x with "Zec Jails", a combination of the popular jail containment facility and Marko's virtuzliation patches. Hopefully, Marko Zec will be able to join us at the %%FreeBSD%% Developer Summit to talk about his design and implementation, which will spur discussion of whether and how we might consider adopting this technology or a variation on its theme. ===== Informal Session: Problem Report backlog ===== Convener: Linimon The PRs for the base system seem to be linearly increasing over time. We should attempt to discuss how we can get more people involved in working on PRs. Topics might include: * How do we classify PRs? * Would people rather have PRs sent to them ("push"), or query the PRs ("pull")? * Do we want to move to a system where people are pre-screening incoming PRs? Not intended for discussion: the exact PR database to use. Linimon would like us to define how we want PRs to work before we decide on an implementation. ===== Formal Session: FreesBIE toolkit ===== Speakers: Dario Freni, Scott Ullrich ===== Formal Session: FreeBSD Update 2.0 ===== Speaker: cperciva ===== Formal Session: The future of IPSec/ IPv6 ===== Speaker: gnn In this session we'll discuss the recent history of the IPSec/IPv6 code, what it's current status is, and where we'd like to take it. Now that the Kame project has ended %%FreeBSD%%, and indeed all other BSDs, own the code and it is a good idea for us to clean it up and remove a lot of the unnecessary portability code, unless we intend to make the system portable. The FAST_IPSEC vs. Kame IPSec conundrum must also be solved long term. ===== Formal Session: TrustedBSD project status ===== Speaker: rwatson This session will provide an update on the status of various on-going %%TrustedBSD%% projects: * Largely complete integration of %%OpenBSM%% and %%TrustedBSD%% audit3 implementation into 7.x CVS; merge places for 6.2-RELEASE. * Results of %%TrustedBSD%% MAC Framework discussion, including plans to improve performance, revise certain structural elements, and plans for inclusion in GENERIC. * Discussion of more general approaches to abstracting access control in the kernel, and moving away from suser() as the privilege check. * Start on work to produce Common Criteria evaluation documentation; poll for interested companies/parties. ===== Formal Session: SMPng Network Stack project status ===== Speaker: rwatson Status update on the %%FreeBSD%% SMPng network stack work, netperf project, and follow-on activities, including: * Recent work to formalize, clean up, and enhance the socket/pcb reference models. * Upcoming pcbinfo lock break-out, true references for inpcbs. * IPv6 locking work. * Elimination of netatm implementation. * Discussion of interrupt, polling, and parallelism models. * Future of mbuma -- bulk allocation, fixing mbuf+cluster caching. ===== Network Cabal Summary ===== Speaker: rwatson This session will present the results of the informal Network Cabal working group; see a topic list for the Network Cabal informal session for possible topics to be covered. devsummit/200605.txt Last modified: 2022/09/15 02:18by KubilayKocak