lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Wed, 17 Nov 2010 09:19:24 -0800
From:	Greg KH <greg@...ah.com>
To:	Yehuda Sadeh <yehuda@...newdream.net>
Cc:	sage@...dream.net, yehudasa@...il.com, ceph-devel@...r.kernel.org,
	linux-kernel@...r.kernel.org
Subject: Re: [PATCH] rbd: replace the rbd sysfs interface

On Tue, Nov 16, 2010 at 04:32:09PM -0800, Yehuda Sadeh wrote:
> Hi Greg,
> 
> Following is the new rbd sysfs interface. It lists devices in their own
> subdirectories, as well as their underlying snapshots. Please let us
> know if there's any issue you think we missed or did wrong.
> 
> Thanks,
> Yehuda
> 
> ---
> 
> The new interface creates directories per mapped image
> and under each it creates a subdir per available snapshot.
> This allows keeping a cleaner interface within the sysfs
> guidelines. The ABI documentation was updated too.
> 
> Signed-off-by: Yehuda Sadeh <yehuda@...newdream.net>
> ---
>  Documentation/ABI/testing/sysfs-class-rbd |   83 +++
>  drivers/block/rbd.c                       |  775 +++++++++++++++++------------
>  2 files changed, 547 insertions(+), 311 deletions(-)
> 
> diff --git a/Documentation/ABI/testing/sysfs-class-rbd b/Documentation/ABI/testing/sysfs-class-rbd
> new file mode 100644
> index 0000000..4d96618
> --- /dev/null
> +++ b/Documentation/ABI/testing/sysfs-class-rbd
> @@ -0,0 +1,83 @@
> +What:		/sys/class/rbd/

I thought I mentioned that you should not add new classes to the kernel.
Please don't do that, make it a bus_type instead.

Actually, that will solve some of your coding problems as well:

> @@ -193,6 +130,11 @@ struct rbd_device {
>  	int read_only;
>  
>  	struct list_head	node;
> +
> +	struct device		dev;
> +	struct kobject		snaps_kobj;
> +	struct list_head	snaps;
> +	int			kobj_ready;
>  };

Woah, that's wrong.  You can NEVER have two different reference counted
objects as part of a single structure.  Your reference counting is
guaranteed to be wrong.

You should not need a kobject at all here, just use a device and be done
with it.

Hope this helps,

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

Powered by blists - more mailing lists