David Nicol
2010-Dec-13 02:51 UTC
PATCH: btrfs ioctl for waiting for kernel cleaner thread task completions kernel code
the attached patch is against ubuntu maverick latest git, and I believe it is final. It is forward-compatible, as there is space in it to define 29 more deferred things to wait for, if needed, as well as a flag bit reserved for strict versioning. Calling it with a flags field of 0xFFFFFFFA will wait for everything it knows how to wait for, including things it doesn''t know how to wait for now. It is also architecture-safe, using u32 in the interface arg structure instead of unisgned long. A revised btrfs-progs patch (that uses __u32 instead of unsigned long in the interface object) will be forthcoming soon, to the btrfs list. Question: is it safe to examine list_empty(fs->delayed_iputs) without taking the spinlock that protects that list in inode.c? -- “The aeroplane is fatally defective. It is merely a toy—a sporting play-thing. It can never become commercially practical." -- Nikola Tesla