This is the mail archive of the
systemtap@sourceware.org
mailing list for the systemtap project.
[Bug tapsets/18711] Pass 4 failure on RHEL7 for examples netfilter_summary and netfilter_drop
- From: "mcermak at redhat dot com" <sourceware-bugzilla at sourceware dot org>
- To: systemtap at sourceware dot org
- Date: Thu, 30 Jul 2015 08:35:39 +0000
- Subject: [Bug tapsets/18711] Pass 4 failure on RHEL7 for examples netfilter_summary and netfilter_drop
- Auto-submitted: auto-generated
- References: <bug-18711-6586 at http dot sourceware dot org/bugzilla/>
https://sourceware.org/bugzilla/show_bug.cgi?id=18711
--- Comment #3 from Martin Cermak <mcermak at redhat dot com> ---
Created attachment 8460
--> https://sourceware.org/bugzilla/attachment.cgi?id=8460&action=edit
proposed patch
This is how nf_hookfn looks like in kernel-3.10.0-300.el7:
=======
typedef unsigned int nf_hookfn(const struct nf_hook_ops *ops,
struct sk_buff *skb,
const struct net_device *in,
const struct net_device *out,
#ifndef __GENKSYMS__
const struct nf_hook_state *state
#else
int (*okfn)(struct sk_buff *)
#endif
);
=======
I don't see the __GENKSYMS__ macro in vanilla kernel sources. In the
distribution kernel-3.10.0-300.el7.x86_64 it is defined in
scripts/Makefile.build as follows:
=======
cmd_gensymtypes = \
$(CPP) -D__GENKSYMS__ $(c_flags) $< | \
$(GENKSYMS) $(if $(1), -T $(2)) \
$(patsubst y,-s _,$(CONFIG_HAVE_UNDERSCORE_SYMBOL_PREFIX)) \
$(if $(KBUILD_PRESERVE),-p) \
-r $(firstword $(wildcard $(2:.symtypes=.symref) /dev/null))
=======
Branch where __GENKSYMS__ is defined is already covered by autoconf-netfilter.c
aka STAPCONF_NETFILTER_V313. This patch basically adds support for the other
branch, where __GENKSYMS__ is not defined. This solution shouldn't bring any
regression. It tests fine across rhel[567] all supported arches. It namely also
tests fine on arm64 with kernel-4.2.0-0.rc3.14.el7.aarch64.
--
You are receiving this mail because:
You are the assignee for the bug.