Re: [PATCH] s390: Hypervisor File System

From: Kyle Moffett
Date: Tue May 02 2006 - 19:22:34 EST


On May 2, 2006, at 17:49:08, Kay Sievers wrote:
If you can assume that processes accessing the values are cooperative, it already works without any changes:

$ time flock /sys/class/firmware echo 1 > /sys/class/firmware/ timeout
real 0m0.005s

$ flock /sys/class/firmware sleep 5&
[1] 6468

$ time flock /sys/class/firmware echo 1 > /sys/class/firmware/ timeout
real 0m3.558s

But that doesn't solve the problem for framebuffer devices or for the s390 code. Such transactions have one or more of the following properties:

(1) A read operation is _expensive_ or adds unacceptable latencies and should be done as rarely as possible
(2) The data must be all written to hardware simultaneously by the kernel; a partial update does not make sense and would cause undesired operation from the hardware.

The idea with the transactions would be to create a kernel-memory buffer-layer of sorts on top of the underlying sysfs tree to cache the read data and collect writes for an atomic commit. I'll see if I can make something work.

Cheers,
Kyle Moffett
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/