This is an old revision of the document!


May 15, 2013 13:30-16:30 in SITE F0126

This working group is focussed on how FreeBSD can adapt to the UEFI boot environment. It is open to anyone with an interest in the state of FreeBSD on UEFI and anyone who wishes to be part of further discussions as to how FreeBSD on UEFI will look.

If you would like to participate, contact BennoRice and CC devsummit@.

It may be possible to bring in people who cannot attend in person via video conference or chat tools. Notes during the session will be published later on for the whole community to see what we discussed.

In this working group I hope to update the developer community as to the state of support of UEFI under FreeBSD. This will be in the form of a brief presentation. After that a series of discussions will be held around certain topics with a view to determining future directions of UEFI support.

# Topic
1 Structure of the EFI System Partition under FreeBSD
2 Interoperation with other OSes and FreeBSD installations on the same system
3 How updates to boot stubs, loader and kernels are managed
4 How a UEFI-based FreeBSD system is installed (also relates to #2)
5 How and to what extent to we support Secure Boot?
6 Making the kernel relocatable to avoid issues with UEFI memory allocations
7 Refactoring libefi et al to better share code across platforms

In order to attend you need register for the developer summit as well as by email for the session and be confirmed by the working group organizer. Follow the guidelines described on the main page or what you received by email. For questions or if in doubt ask the session chairs.

Please do NOT add yourself here. Your name will appear automatically once you have received the confirmation email. You need to put your name on the general developer summit attendees list though.

Name Username / Affiliation Topics of Interest Notes
BennoRice benno Session chair
JohnBaldwin jhb
WarrenBlock wblock Documentation team
David Bright Dell Compellent (JustinGibbs)
PawelJakubDawidek pjd
PeterGrehan grehan
Joseph Kong Author (JohnBaldwin)
KirkMcKusick mckusick
MarcelMoolenaar marcel
PeterWemm peter
Peter Wong NetApp (PeterGrehan)
BjoernZeeb bz

(Add your notes here.) First Session Notes (sbruno)

- intro to uefi
 -- allows us to kill off all the old BIOS cruft
 -- secureboot and binary checking
 

- secureboot
 -- no FreeBSD support
 -- no signed loader
 -- linux gets around this with a signed binary that loads grub
   -- RedHat does full chain of trust to boot o/s
   -- Ubuntu stops checking at kernel load

- Microsoft Calling Conventions
 -- not c-like
 -- gcc 4.6 --> __attribute__((ms_abi))
 -- clang does not

- UEFI owns all memory during boot phase
 -- special malloc calls to reserve space for loader
 -- UEFI owns all memory until ExitBootServices call
 -- UEFI can allocate memory anywhere
 -- Not all memory can be reclaimed
 -- Need a Relocatable Kernel?
  -- Can we allocate physical memory like IA64?
  -- Can we hand the kernel a page table we create?

- EFI System Partition
 -- FAT like
 -- Can have more than one per system
 -- How do we construct the boot path
 -- How do we restructure the EFI boot paths from the booted FreeBSD system

- Common loader code
 -- i386 was used at the base of amd64
 -- ia64 is different than i386

- ia64 support exists now for all your itaniums 
- i386 support exists-ish
- amd64 support is in progress via project

- i386 still supports being booted from boot2
 -- Julian Elischer points out that its only been 16 years, it might still be used.  :-)
 -- Bruce Evans may have opinions and knowledge as to why this is needed.

- Secureboot is not dependant on TPM
 -- can be added as a module

- Discussion points
 -- what does a FBSD installation in UEFI looks like
 -- how much do we support be default
 -- how much optional support get developed
 -- Does freebsd own the infrastructure to be developed

(Add a list or attach slides detailing the achieved results here.)

  • devsummit/201305/uefi.1368646708.txt.gz
  • Last modified: 2013/05/15 19:38
  • by SeanBruno