GeekFest 2023
Description
GeekFest, our cross product line road-mapping exercise, will be held in Phx the week of April 17.
Goals for the meeting include:
- Review/Update work breakdown structures for all active projects/programs, and review/update resource assignments
- Derive a strategy, or roadmap for the set of projects, products, and programs we will be working into the future
- Cross product line coordination (streamline)
- Product line (feature design) breakout sessions
Date
Week of April 17th: travel on Sunday (16th), meetings on Mon-Thurs, and 1/2 day on Fri. Travel home Friday after 3pm.
Travel Plans
First "Riders" column implies from airport to Office/Hotel, second "Riders" column is to the airport. Leave blank if not renting a car.
Consider using Uber or Lyft to get to the hotel and connect with a co-worker who has rented a car.
Hotel is Staybridge Suites - Talking Stick map
9141 E Hummingbird Lane
Scottsdale, AZ 85250 USA
Hotel line: 480-291-5175
| Person | Rental | Arrival | Riders | Departure | Riders |
|---|---|---|---|---|---|
| Aaron Larson | Yes | 16-Apr-2023-23:11 DL1260 | 21-Apr-2023-18:46 AA1560 | ||
| Andre Martinez | Uber w/Chuck | 16-Apr-2023-21:38 F9 1563 | 21-Apr-2023-12:08 UA1649 | Uber | |
| Bob Morris | TBD | 19-Apr-2023-00:00 | 22-Apr-2023-00:00 | ||
| Bill Cronk | Yes | 17-Apr-2023-07:55 SW2199 | Gary G | 21-Apr-2023-19:25 SW800 | |
| Chris Pow | No | 16-Apr-2023-19:50 DL 1455 | 21-Apr-2023-16:25 F9 2966 | ||
| Chuck Frayman | Uber w/Andre | 16-Apr-2023-22:04 UA679 | 21-Apr-2023-14:45 UA1253 | ||
| David Gibbs | No | 16-Apr-2023-00:00 | 21-Apr-2023-00:00 | ||
| Gary Gilliland | No | 17 April 2023-07:37AM AA367 | 21-Apr-2023-17:04 AA2514 | ||
| Gary Kindorf | No | 16-Apr-2023-19:39 AA1309 | 21-Apr-2023-15:03 AA1329 | ||
| Jean Countryman | No | 16-Apr-2023-19:39 AA1309 | 21-Apr-2023-15:03 AA1329 | ||
| Jerry Kelley | No | 20-Apr-2023-00:00 | 21-Apr-2023-00:00 | ||
| Johan O. Nielsen | Yes | 15-Apr-2023-21:29 AY4207 | Thorkil | 22-Apr-2023-19:30 AA6999 | Thorkil |
| John Kimball | No | 16-Apr-2023-09:16 AA1287 | 22-Apr-2023-06:07 AA1112 | ||
| Kelly Leonard | Yes | 16-Apr-2023-19:39 AA1309 | Chris, Gary, Jean | 21-Apr-2023-15:03 AA1329 | Chuck, Gary, Jean, Ryan |
| Laurent Meilleur | TBD | 19-Apr-2023-00:00 | 21-Apr-2023-00:00 | ||
| Mark Sygrove | Uber | 15-Apr-2023-23:10 AA2633 | 21-Apr-2023-23:42 JB136 | Uber | |
| Matt Verreaux | Yes | 16-Apr-2023-08:14 DL1445 | John | 21-Apr-2023-16:22 UA2028 | Chris, Gary G |
| Rusty DeShazo | TBD | 19-Apr-2023-00:00 | 21-Apr-2023-00:00 | ||
| Ryan Roffelsen | Uber | 16-Apr-2023-16:45 WN3153 | 21-Apr-2023-15:05 WN2894 | ||
| Thorkil& Jane Rassmussen | No | 15-Apr-2023-21:29 AY4207 | 22-Apr-2023-19:30 AA6999 |
- Lisa is staying with a friend
What Happened Last
See GeekFest_2019.
Agenda
Main Conference Room Meeting Info
https://meet.google.com/ecd-xeqb-osp
Dial-in:
(US)
+1 786-886-2516
PIN:
251 126 001#
Board Room Meeting Info
meet.google.com/wea-mbyb-wjp
Dial-in: (US) +1 234-759-0386
PIN: 359 792 059#
Daily Hiking
5:00am Morning hike – for those who can't sleep.
6:00am Morning hike
| Time | Attendees | Topic | Location | Lead |
|---|---|---|---|---|
| 09:00 - 09:20 | Eng | Welcome and Agenda Overview | Main Conference Room | Richard |
| 09:20 - 09:30 | DPAA-PRL Team | Objective of DPAA-PRL Power Session | Main Conference Room | Kelly |
| 09:30 - 10:30 | DPAA-PRL Team | DPAA / DPAA-PRL overview; Unique features/considerations of PRL | Main Conference Room | Matt/Aaron |
| 10:30 - 14:00 | BSP Team | Breakout - BSP_dev-kit#Proposal_for_general_direction | Board Room | Aaron |
| 10:45 - 12:00 | DPAA-PRL Team | DPAA-PRL test strategy | Main Conference Room | Ron/Andre |
| 13:00 - 14:45 | Review Team | Breakout - Reqs and Code status | Board Room | Matt |
| 13:00 - 14:45 | Test Team | Breakout - Deep dive on dpaa-prl testing | Main Conference Room | Ron/Andre |
| 15:00 - 16:00 | Eng | Committed work by baseline | Main Conference Room | Kelly |
| 16:00 - 17:00 | Eng | Customer recap, upcoming POs & Roadmap | Main Conference Room | Bill |
- DPAA-PRL Team = Review Team + Test Team
- Review Team = Chris, Gibbs, John, Ryan; possibly Chuck and Gary
- Test Team = Andre, Ron, MJ, Jerry, Daniel, Hernaldo, Oscar
| Time | Attendees | Topic | Location | Lead |
|---|---|---|---|---|
| 09:00 - 10:00 | Eng | Component Ownership & Staffing | Main Conference Room | Richard |
| 10:00 - 12:00 | Eng | OA integration/Testing: BSPs + Drivers | Main Conference Room | Nate/Lisa |
| 13:00 - 13:45 | Eng | Kernel Overview | Main Conference Room | Ryan |
| 13:45 - 14:30 | Eng | DVMS Overview | Main Conference Room | Chris/Bill |
| 15:15 - 15:45 | Eng | FAE wisdom, RTEMS, etc. | Main Conference Room | Gary G |
| 15:45 - 16:45 | DVMS Team | Breakout - DVMS design, eg multi-partition | Board Room | Chris/Aaron |
| 17:00 - 20:00 | Eng | Proposal: DDCI Farm Tour + Chinos | Main Conference Room | Jerry? |
- DVMS team = Chris, Matt
| Time | Attendees | Topic | Location | Lead |
|---|---|---|---|---|
| 09:00 - 09:05 | Eng | Lightning talk - Python install | Main Conference Room | Aaron |
| 09:05 - 09:40 | Eng | Testing with Tofu | Main Conference Room | Ron |
| 09:40 - 09:55 | Eng | Device Driver test ideas | Main Conference Room | Mark F. |
| 09:55 - 10:30 | Eng | Test infrastructure & discussion | Main Conference Room | Richard |
| 10:30 - 12:00 | Eng | BSP_Support_PhysicalAlloc | Main Conference Room | Aaron |
| 13:00 - 13:05 | Eng | Lightning talk - Rust | Main Conference Room | Aaron |
| 13:05 - 13:40 | Eng | New C++ versions | Main Conference Room | Johan |
| 13:40 - 14:30 | Eng | vfile Overview (Europa updates?) | Main Conference Room | Aaron/Chris |
| 14:30 - 15:30 | Eng | MFS end to end storyboard | Main Conference Room | Bill |
| 15:30 - 16:30 | Eng | Docker, WSLg future | Main Conference Room | Aaron/Mike |
| 16:45 - 18:00 | Eng | After-hours beers + cheers | Main Conference Room | Kelly |
| Time | Attendees | Topic | Location | Lead |
|---|---|---|---|---|
| 09:00 - 10:00 | Eng | Process Improvements; DAL-D Verification | Main Conference Room | Jean |
| 10:00 - 10:30 | Eng | OpenArbor/Maintainer infrastructure | Main Conference Room | Richard? |
| 10:45 - 11:30 | Eng | Demo OpenArbor for Maintainers | Main Conference Room | Bill |
| 11:30 - 12:00 | Eng | Development Process, CS technologies | Main Conference Room | Aaron |
| 13:00 - 14:30 | TCE | Breakout - Kernel Interrupt Options + 653 | Board Room | Ryan/Aaron |
| 13:00 - 13:30 | Eng | vfile interface for dprintf (PCI-scanner) | Main Conference Room | Team |
| 13:30 - 14:00 | Eng | CVTs and Config Tools status | Main Conference Room | Gary/Chuck |
| 14:00 - 14:30 | Eng | Network Drivers common functionality | Main Conference Room | Bill |
| 14:30 - 15:00 | Eng | Secure Boot Overview | Main Conference Room | Aaron |
| 15:15 - 16:30 | All Hands | CEO, Marketing, Sales State of the Union | Main Conference Room | Bob |
| 17:30 - 22:30 | All Hands | Company Event | Near hotel | Jennifer/Bob |
- Time Critical Environment (TCE) - Ryan, Aaron, Richard, Gibbs, Mike, Bill, ?
| Time | Type | Topic | Location | Lead |
|---|---|---|---|---|
| 09:00 - 12:00 | Customers+All Hands | Customer Day - Roadmap + Open Discussion | Main Conference Room | Greg coordinating |
| 13:00 - 15:00 | Customer+Sales+Mgmt+Architect | 1-1 discussions | Board Room |
Suggested Format
Should have a mix of:
- component/team specific, cross team, and whole system
- new features/technologies, changes to existing, finding things to leave behind
- Learning, teaching, listening, presenting.
- Thinking, doing (e.g., install docker/wsl)
- Any site visit opportunities? E.g., farm tours.
- Presentations: short (12 minute), medium (24 minute), long, vs work sessions
Potential Topics
- Stuff brought forward from GeekFest 2021:
- Add support for persistent data (Support case MHON-BT9HU4)
- Change default clock rate from 12.5 mSec to 10 mSec. See Deos_Scheduling_Rates_project.
- Bill's Overly Awesome (OA) training and demonstration session. See how the customers use it, and how DDCI engineers can revel in the same level of awesomeness.
Whole Team
- Deos Roadmap - Bill (2hrs for this block)
- Current commitments, customers with future quotes, staffing - Kelly
- Europa and Kismet baseline kickoff (BC/KL clarify what is in what baselines, and beyond)
- DAL-D verification (trickyfish verf is D, but eventual A, make everyone clear on plans (do D per A standards for items that are part of D)
dpaa-prl Power Session
- ToDo Matt: pull kernel mode APIs into separate file to make reviews easier
Lightning talks
- Rust
- llvm - not needed for group discussion
- Python install technology and supporting license checking.
Short talks
- The development process (5-30min, AL)
- The role of private vs public communication, mailing lists, wiki, PCRs, etc.
- The importance of the capture of design rationale.
- Interfaces vs implementation and the principles involved.
- Don't reinvent the wheel
- CVTs
- Component owner/team is responsible for updating the CVT
- when practical, keep the CVT in sync with the config tool
- Add CVT release to schedules
- ToDo Kelly: Schedule a brown bag on CVT development
Cross Component
Testing
- Tofu training.
- Tests use HTML for test case documents. (Test team discussion topics. Branch to other topics.) Should they use:
- HTML?
- DeosBook?
- XHTML?
- Doxygen?
- Could get auto generation of TOC and tracetag xrefs using XSLT
- Tests use many local stylesheets, would it be better to have some common semantic based styles? Anything else to make test case document generation easier/faster?
- Tests are structured via can/all-can files, docs/all-test-case-docs, etc. Should they instead be more modular? test001/{can,docs,code,...}.
- This would make things like dev-kit testing easier/modular
- BSP_Support_PhysicalAlloc - presentation and working session (bsp/driver + xml tooling + OA/others part time for discussion)
- Local is only for running, not building tests
- OpenArbor integration testing ]
- Examples that do not build out of the box need to specify dependencies (key player breakout session - potentially on Mon separate from PRL group)
- Currently manually remove examples so the build all examples test works
- Automate analyzing results of OA test runs
- Nightly/weekly build/tests?
- Provide a docker image containing OA test infrastructure so developers can easily test examples, etc. (Mike offered to help here)
- Examples that do not build out of the box need to specify dependencies (key player breakout session - potentially on Mon separate from PRL group)
Development Process
- WSLg, Docker, Cygwin plans for the future. (Aaron - all options and what filtered for future set. Mike - wsl dog/pony show) Afternoon flow into dinner.
- See https://deos.ddci.com/pipermail/linux-maintainers/2023-February/000006.html and https://deos.ddci.com/ddciWiki/DESK_On_Linux_Project#Tasks
- When will employee Windows installations be updated to a version supporting WSLg?
- Enhanced tracing capabilities:
- Provide a way to find all requirement xml files trace to by a code or test case file(s) This is to make is easier to create review packets.
- Provide a way to find all code and test case files traced to a given requirement xml file. This is to make it easier to notify people with code/test case files in review when a xml file is modified.
- Move (Cygwin) package information into configure.ac - Not required for GeekFest
- markdown readme annoying
- source vs binary distribution (depending on maintainer-tools sub-optimial since tools brings in compilers for all architectures)
- version management/component dependency resolution, and auto-generate release notes dependencies.
- What to do if/when we add a new packaging system, e.g., RPM and/or aarch64 host?
- What would it take to get more maintainer use of OpenArbor? (BC demo of what uses, trains, etc. Lead into other features like tracing above) 30min
- Indexing of trace tags?
- Portable personal configuration?
- Multiple architectures in a project
- Integrated plugins/tools readily available, e.g., subversion, workspace mechanic, etc?
- There might already be a wiki/pcr list on this somewhere. Deos_Maintainer_Build_In_OpenArbor
- Team preferences, work out of box with preferences, etc
- features do not work in dev-kit builds (indexing)
- how can we not do work, and reuse existing code. can we get more out of Eclipse/CDT?
- config components. Recapture copy for edit changes.
- Debugger performance. External debug list of files. Debug test from regress scripts.
- Install/build integration (GeekFest? Enumerate vs solve session - 30min)
- New components like vfile have a "pluggable" infrastructure where different components provides library modules that fit within vfile. Having documentation and integration of the modules in a manner that the customers can understand and that doesn't introduce low DAL libs into a process by accident would be nice.
- new C/C++ language standards - Should any new features (e.g. auto, lambda functions, etc.) be precluded/restricted? Code Checklist updates??
- Johan or Ryan new feature presentation.
- Kernel now expects 2011
Verification Process
- Modify the review process to allow multiple authors to review the same set of changes to a file as a means of satisfying review independents "requirements".
- multiple packets due to authorship
- one reviewer for particular content, one reviewer for multi-core, etc
- Replace Word for planning and report documents (SAS, SCI, and SLCECI); automate filling in fields (eg, versions) - Present plan, brainstorm ideas to fix before next cycle. (Jean?)
- Process Improvements: clean up howtos; process for creating Limitations during verf is incomplete; better search technology (e.g., google search of email, wikis, howtos, etc)
Component Specific
Kernel
- Kernel_64 - Ryan (Presentation 1hr (early to solicit ideas, late to report on results of the week - lots of breakout work TBD later)
- Vfile is lacking an access control mechanism, really need the kernel to provide UGO or similar.
- consistent 653 runtime, RTEMS runtime, and RMA scheduling primitives.
- any user mode library (not just vfile) accessing resource
- system scope semaphore
- Add shutdown hook capability (any DMA/bus activity should be terminated on mode change)
Customer Day
- UGO not backward compatible, eliminate grant. should be design time known
- wsl is it viable option (IT policies)
- docker (ubuntu as basis). Would customer require RedHat? Customer do podman themselves.
- Keep all GeekFest discussions in mind for customer day info gathering. does the user do this, would this impact users, etc.
- Eclipse as the IDE? VSCode, others?
vfile
- Need high level overview of features (AL)
- ease of use to transition where results go (file, memory resource)
- Byte stream devices vs gpio
- example is lesson currently
DVMS
- DVMS design (breakout for a subteam)
- Add shutdown hook to kernel for journal flush and/or volume unmounting
- BSP_Support_PhysicalAlloc
- Vfile is lacking an access control mechanism, really need the kernel to provide UGO or similar. However it's unclear whether a kernel-provided mechanism is appropriate for filesystems in user space.
- Unsure how to meet these Trickyfish reqs RE concurrency. Currently DVMS semaphore protects at the volume, partition, and media level, which means no concurrency possible, similar to CFFS:
- The file system shall provide the capability for concurrent file read and write accesses and Logbook System operations assigned to a single NVM-SSD volume.
- The file system shall provide user partition software with NVM-SSD concurrent File System and raw volume access, where both accesses support concurrent read and write operations.
- Need to dissuade customers from specifying "address 0" - requires boot knowledge of GPT/MBR which could be given to it via config.
BSPs and Drivers
dpaa-prl verf strategy - to get verf done in record time
Seems like there should be something to talk about.
- Replace "cloning" BSP with new process/feature with OA support
Networking, LwIP, and sockets (follow on to geekfest)
- Revise the stack-to-driver interface for better change isolation.
- Which suggested features shoud be prioritized? ipv6, pppoe, pppos, small footprint
Uncategorized
- Update cygwin. Include PCR:12819
- Add support for core dumps.
- Design backwards compatibility into OA for Deos tools
- What is the interface between OA and command line tools and components. E.g., should tools/components provide .mk files?
- MFS end-to-end storyboard.
- Integration level is not clear. Components provide very specific info. Not a big picture.
- pattern repeated elsewhere
- OpenArbor duplication of DESK and maintainer infrastructure
- ctxtime clear
- Build infrastructure
- cd.xml
- Delivering workspaces as examples vs full-blown example
- Reduce overhead (documentation, release process)
- Used for OA testing?
- Have an "export project as example"?
- RTEMS productization
- A chat about all the CS technologies needed to develop Deos software: relocatable vs fixed addressing, shared vs static linking, virtual vs physical addresses, caching (all types), cache partitioning, memory consistency, C language peculiarities, compiler optimization, user vs kernel space, cache block vs coherency granule vs IO ordering region(?), big O notation, etc.
- Q&A session in case anything is left out.
Deferred topics
- Maintainer and OA build infrastructure integration.
- Perl for ABC, MLD, etc.
- MAC address relocation - where can it live that it can be standard location for all BSPs but unique for each board? - non geekfest
- Eliminate the subversion DDCI repository. - not geekfest or 10 min encapsulate these
- Non-vfile interface device drivers for single-core, single-thread applications (to improve performance)
- Stack usage integration through deep vfile tree (i.e. nor-spi mal, user->vfile->dvms->mal->vfile->driver)
- Note double vfile path, and integration only allowing specifying number of pages instead of bytes.