Matthew Garrett ([info]mjg59) wrote,
@ 2008-02-01 03:27:00
Previous Entry  Add to memories!  Tell a Friend!  Next Entry
Entry tags:advogato, ubuntu

Slides for my presentation on the Linux suspend to disk implementation are here. The presentation itself should be linked off the programme at some point, but for now here's a representative preview slide:




(Post a new comment)

Yes
(Anonymous)
2008-02-01 06:44 am UTC (link)
You Sir rock :p

(Reply to this)


[info]thargol
2008-02-01 09:19 am UTC (link)
Yes indeed. I always knew the kernel had to had a three headed monkey in there somewhere...

(Reply to this)


(Anonymous)
2008-02-01 09:36 am UTC (link)
Which way does the chart flow? Needs more arrowheads.

bash bash bash bash bash :)

(Reply to this)

Truly a work of art
(Anonymous)
2008-02-01 10:50 am UTC (link)
I'm particularly loving the disagreement box. [kbonghits] made me guffaw.

(Reply to this)

(Reply from suspended user)

[info]covertmusic
2008-02-01 11:46 am UTC (link)
Never had Ray down as a kernel hacker!

(Reply to this)


[info]king_of_wrong
2008-02-01 01:44 pm UTC (link)
Do you have that in PowerPoint format?

Or at least something I've a chance of reading? ^_^;

(Reply to this) (Thread)


[info]sneakums
2008-02-01 11:02 pm UTC (link)
Courtesy of unzip and sed:

Suspend to Disk

Why it doesn't work, can't work and never worked in the first place

(and what to do about it)

Matthew Garrett

<mjg59@srcf.ucam.org>

This presentation contains no drosophila

What is suspend to disk?

Save system state to disk

Reboot directly into saved state

Consumes no power when suspended

Higher latency in resume

How does suspend to disk work?

Freeze processes

Suspend devices

Copy state

Restore devices

Save state to disk

Power down

Cake

The cake is a lie

Freezer nightmare

What else can go wrong?

Your swap is on a FUSE filesystem

You have userspace USB drivers

Your network driver blocks while scanning

NFS

(Without loss of generality)

Why do we use the freezer?

Because we're suspending using the same kernel as we were running

How can we avoid this?

Use a different kernel?

Kexec

Functionality for loading a new kernel and executing it

Kexecing a new kernel is an atomic operation

New kernel can save state to disk without interfering with the “real” kernel

Has its own i/o paths, working with its own RAM

Ying Huang at Intel working on this

Still stuck with the freezer...

Drivers assume that userspace will be frozen

(Silly drivers)

But those need to be fixed anyway, so hurrah

Warning: next slide contains crack

Do we really want to suspend to disk?

Users just want to retain state

Checkpointing applications handles a lot of this

Saving hardware state more awkward

But buys us more functionality

Summary:

The freezer is unreliable and cannot sensibly be made reliable

Suspend to disk must be a reliable process

Therefore we need to remove the need for the freezer

(Cake)

Please hire me

I'm lovely, really

(Reply to this) (Parent)


[info]aiofe
2008-02-02 07:51 am UTC (link)
So when's the shirt version available? :P

(Reply to this) (Thread)

(Reply from suspended user)

Create an Account
Forgot your login or password?
Login w/ OpenID
English • Español • Deutsch • Русский…