IMP: GlusterD uses liburcu lists from now on.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Review http://review.gluster.org/9624 just got merged. This is the first actual code change to be using liburcu within GlusterD.

This change replaces the usage of libglusterfs list data structures and APIs, with the data structures and APIs provided by liburcu. The replacement is mostly a case of prefixing the libglusterfs list data structure and API names.

We chose to do a complete replacement within GlusterD to prevent confusion to developers. We could have just used the liburcu lists just for the lists we wanted to protect with RCU, but it would require more effort from developers to decide on which list API to use for a given list.

The liburcu APIs and data structures have a `cds_` prefix, and are other otherwise the same as libglusterfs counterparts. For eg.
list_head -> cds_list_head
INIT_LIST_HEAD -> CDS_INIT_LIST_HEAD
list_for_each -> cds_list_for_each
list_entry -> cds_list_entry
etc.

The above change just lays a base for the introduction of the actual RCU protection changes, which will be following soon (beginning with protection for peerinfos).

Thanks.

~kaushal
_______________________________________________
Gluster-devel mailing list
Gluster-devel@xxxxxxxxxxx
http://www.gluster.org/mailman/listinfo/gluster-devel

[Index of Archives]     [Gluster Users]     [Ceph Users]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux