Re: [PATCH] Time-based RFC 4122 UUID generator

From: Helge Deller
Date: Sun Nov 18 2007 - 16:43:18 EST


Sam Ravnborg wrote:

> On Sun, Nov 18, 2007 at 01:05:03PM -0800, Andrew Morton wrote:
>> On Sun, 18 Nov 2007 20:38:21 +0100 Helge Deller <deller@xxxxxx> wrote:
>>
>> > Title: Add time-based RFC 4122 UUID generator
>> >
>> > The current Linux kernel currently contains the generate_random_uuid()
>> > function, which creates - based on RFC 4122 - truly random UUIDs and
>> > provides them to userspace through /proc/sys/kernel/random/boot_id and
>> > /proc/sys/kernel/random/uuid.
>> >
>> > This patch additionally adds the "Time-based UUID" variant of RFC 4122,
>> > with which userspace applications can easily get real unique time-based
>> > UUIDs through /proc/sys/kernel/random/uuid_time.
>> > A new /proc/sys/kernel/random/uuid_time_clockseq sysfs entry is
>> > available, so that the clock_seq value can be retained across system
>> > bootups (which is required by RFC 4122).
>> >
>> > The attached implementation uses getnstimeofday() to get very
>> > fine-grained granularity. This helps, so that userspace tools can get a
>> > lot more UUIDs (if needed) per time than before.
>> > A mutex takes care of the proper locking against a mistaken double
>> > creation of UUIDs for simultanious running processes.
>>
>> Who will use this feature, and for what?
>>
>> (In fact, who uses the existing UUID generators, and for what?)
>
> I use libuuid and I assume libuuid uses some uuid generator support
> from the kernel.

No, it does not. It's pure userspace and may produce double UUIDs.

> libuuid comes from a package that Ted's maintain IIRC.
>
> I (my company) use uuid to uniquely identify objects in a distributed
> database.
> [Proprietary closed source stuff].

Same here.

Helge

-
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/