/* * Copyright (C) 2010 Red Hat Inc, Steven Rostedt * * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; * version 2.1 of the License (not later!) * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this program; if not, see * * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */ #include #include #include #include "event-parse.h" #define MINORBITS 20 #define MINORMASK ((1U << MINORBITS) - 1) #define MAJOR(dev) ((unsigned int) ((dev) >> MINORBITS)) #define MINOR(dev) ((unsigned int) ((dev) & MINORMASK)) static unsigned long long process_jbd2_dev_to_name(struct trace_seq *s, unsigned long long *args) { unsigned int dev = args[0]; trace_seq_printf(s, "%d:%d", MAJOR(dev), MINOR(dev)); return 0; } static unsigned long long process_jiffies_to_msecs(struct trace_seq *s, unsigned long long *args) { unsigned long long jiffies = args[0]; trace_seq_printf(s, "%lld", jiffies); return jiffies; } int PEVENT_PLUGIN_LOADER(struct pevent *pevent) { pevent_register_print_function(pevent, process_jbd2_dev_to_name, PEVENT_FUNC_ARG_STRING, "jbd2_dev_to_name", PEVENT_FUNC_ARG_INT, PEVENT_FUNC_ARG_VOID); pevent_register_print_function(pevent, process_jiffies_to_msecs, PEVENT_FUNC_ARG_LONG, "jiffies_to_msecs", PEVENT_FUNC_ARG_LONG, PEVENT_FUNC_ARG_VOID); return 0; } void PEVENT_PLUGIN_UNLOADER(struct pevent *pevent) { pevent_unregister_print_function(pevent, process_jbd2_dev_to_name, "jbd2_dev_to_name"); pevent_unregister_print_function(pevent, process_jiffies_to_msecs, "jiffies_to_msecs"); } ' name='id' value='10435c1192d06bdb0bac7666452d8219d7e7c477'/>
diff options
context:
space:
mode:
authorFeng <fgao@ikuai8.com>2017-01-20 21:40:43 +0800
committerPablo Neira Ayuso <pablo@netfilter.org>2017-02-02 14:30:19 +0100
commit10435c1192d06bdb0bac7666452d8219d7e7c477 (patch)
tree93b76419142fe17b1d162d062c663297a3e8a965 /net/sched/em_cmp.c
parent1a28ad74ebd8f9d3c7eae0d781f72a6d30545e17 (diff)
netfilter: nf_tables: Eliminate duplicated code in nf_tables_table_enable()
If something fails in nf_tables_table_enable(), it unregisters the chains. But the rollback code is the same as nf_tables_table_disable() almostly, except there is one counter check. Now create one wrapper function to eliminate the duplicated codes. Signed-off-by: Feng <fgao@ikuai8.com> Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Diffstat (limited to 'net/sched/em_cmp.c')