On Tue, Jan 3, 2012 at 3:07 PM, Pravin B Shelar <pshe...@nicira.com> wrote:
> genl_lock is not exported from older kernel. Following patch add
> genl_exec() which can run any function (passed as arg) with
> genl_lock held.
>
> Signed-off-by: Pravin B Shelar <pshe...@nicira.com>

I noticed a few random small things, none of which are particularly
important.  Overall it looks good though, so:
Acked-by: Jesse Gross <je...@nicira.com>

> diff --git a/datapath/genl_exec.c b/datapath/genl_exec.c
> new file mode 100644
> index 0000000..9647302
> --- /dev/null
> +++ b/datapath/genl_exec.c
> +int genl_exec(genl_exec_func_t func, void *data)
[...]
> +       if (!ret) {
> +               wait_for_completion(&done);
> +               ret = genl_exec_function_ret;
> +       } else
> +               pr_err("genl_exec send error %d\n", ret);

Usual kernel style is to have braces around the second half as well.

> +       /* Wait for genetlink to kfree skb. */
> +       while (atomic_read(&genlmsg_skb->users) != 1)

Can you use skb_shared() here instead of the open coded version (good
catch on the race though)?

> new file mode 100644
> index 0000000..5121092
> --- /dev/null
> +++ b/datapath/genl_exec.h
> +#ifndef __GENL_EXEC_H
> +#define __GENL_EXEC_H 1

For the other files in this directory, we don't have underscores in
front of the defines.

> +#include <linux/version.h>

Does anything actually use this include?
_______________________________________________
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev

Reply via email to