geli freezing 8.0 RELEASE and 7.2-STABLE

Wiktor Niesiobedzki bsd at
Sat Dec 5 15:52:09 UTC 2009


I'm currently configuring new box with 8.0-RELEASE. I'm setting it up
together with geli. From time to time I notice some small freezes (for
2-5 seconds) of the system.

I'm doing a small test. In one shell I'm running:

% while true ; do ; sleep 1; date ;done
sob  5 gru 2009 16:02:48 CET
sob  5 gru 2009 16:02:49 CET
sob  5 gru 2009 16:02:50 CET
sob  5 gru 2009 16:03:15 CET
sob  5 gru 2009 16:03:16 CET
sob  5 gru 2009 16:03:17 CET
sob  5 gru 2009 16:03:18 CET
sob  5 gru 2009 16:03:19 CET

(Note the gap between 16:02:50 and 16:03:15)

In mean time I'm runnig following in the second terminal:
# dd if=/dev/gzero.eli of=/dev/null bs=1M
^C3955+0 records in
3955+0 records out
4147118080 bytes transferred in 23.919693 secs (173376727 bytes/sec)

As I've noticed, for the time, when dd is working, top reports, that
all CPU is used by system by g_eli[0] gzero process. Until I interrupt
the dd process, it is +/- fully busy with encryption.

I've setup the geli as following:
# kldload geom_zero
# geli onetime -s 4096 -l 256 gzero
GEOM_ELI: Device gzero.eli created.
GEOM_ELI: Encryption: AES-CBC 256
GEOM_ELI:     Crypto: hardware
# sysctl

(setting the last one to 1 doesn't make any change).

On this system I have VIA Padlock device as crypto hardware.

I've tried the same on 7.2-STABLE and got similiar result (though the
interrupt signal wasn't delivered to dd process so I need to do a hard

Is this a problem within GEOM, or is this related to scheduler? On
8.0-Release I'm still running GENERIC kernel (with SCHED_ULE).


Wiktor Niesiobedzki

More information about the freebsd-geom mailing list