On Fri, Oct 01, 2004 at 05:45:56PM -0400, lml@xxxxxxxxxxxxxxxx wrote: > > > After that, they canread/write the object at the same time, right? It > > > sounds like only the reference counter is atomic, while the content of > > > the object is not protected. Please correct me if I am wrong. > > > > Yes, they could both use the object at the same time. But if you need > > to protect from that, you need a lock, not only a reference count. > > So what is the real purpose of using reference counter? It cannot > protect other members in the object. You are correct, that is not what a reference counter is for. > Looks like it is only used to check if the object needed to be freed > (when the counter is 0)? right? Yes. > Can you give an example? struct urb. When the last user of it is done, it is automatically cleaned up and freed. struct device, struct kobject, struct class_device, struct class are all other examples. The kernel is full of them. Hope this helps. greg k-h -- Kernelnewbies: Help each other learn about the Linux kernel. Archive: http://mail.nl.linux.org/kernelnewbies/ FAQ: http://kernelnewbies.org/faq/