* [xtables-addons PATCH 0/2] 5.17 Kernel Support
@ 2022-02-04 13:26 Jeremy Sowden
2022-02-04 13:26 ` [xtables-addons PATCH 1/2] extensions: replace `PDE_DATA` Jeremy Sowden
` (2 more replies)
0 siblings, 3 replies; 4+ messages in thread
From: Jeremy Sowden @ 2022-02-04 13:26 UTC (permalink / raw)
To: Jan Engelhardt; +Cc: Netfilter Devel
The `PDE_DATA` procfs function has been replaced by another function,
`pde_data`, in 5.17. The first patch adds support for this. The second
bumps the maximum supported kernel version to 5.17.
Jeremy Sowden (2):
extensions: replace `PDE_DATA`
build: bump supported kernel version to 5.17
configure.ac | 2 +-
extensions/compat_xtables.h | 4 ++++
extensions/pknock/xt_pknock.c | 2 +-
extensions/xt_DNETMAP.c | 6 +++---
extensions/xt_condition.c | 4 ++--
extensions/xt_quota2.c | 4 ++--
6 files changed, 13 insertions(+), 9 deletions(-)
--
2.34.1
^ permalink raw reply [flat|nested] 4+ messages in thread
* [xtables-addons PATCH 1/2] extensions: replace `PDE_DATA`
2022-02-04 13:26 [xtables-addons PATCH 0/2] 5.17 Kernel Support Jeremy Sowden
@ 2022-02-04 13:26 ` Jeremy Sowden
2022-02-04 13:26 ` [xtables-addons PATCH 2/2] build: bump supported kernel version to 5.17 Jeremy Sowden
2022-02-05 19:33 ` [xtables-addons PATCH 0/2] 5.17 Kernel Support Jan Engelhardt
2 siblings, 0 replies; 4+ messages in thread
From: Jeremy Sowden @ 2022-02-04 13:26 UTC (permalink / raw)
To: Jan Engelhardt; +Cc: Netfilter Devel
The `PDE_DATA` function for retrieving private data from a procfs inode
has been replaced by `pde_data` in 5.17. Replace all instances of the
former with the latter, but add a macro to xtables_compat.h in order to
preserve compatibility with older kernels.
Link: https://lore.kernel.org/lkml/20211124081956.87711-1-songmuchun@bytedance.com/
Signed-off-by: Jeremy Sowden <jeremy@azazel.net>
---
extensions/compat_xtables.h | 4 ++++
extensions/pknock/xt_pknock.c | 2 +-
extensions/xt_DNETMAP.c | 6 +++---
extensions/xt_condition.c | 4 ++--
extensions/xt_quota2.c | 4 ++--
5 files changed, 12 insertions(+), 8 deletions(-)
diff --git a/extensions/compat_xtables.h b/extensions/compat_xtables.h
index eff3bde91c32..5ea2af6a4a79 100644
--- a/extensions/compat_xtables.h
+++ b/extensions/compat_xtables.h
@@ -27,6 +27,10 @@
# define ip6_route_me_harder(xnet, xsk, xskb) ip6_route_me_harder((xnet), (xskb))
#endif
+#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 17, 0)
+#define pde_data(inode) PDE_DATA(inode)
+#endif
+
static inline struct net *par_net(const struct xt_action_param *par)
{
return par->state->net;
diff --git a/extensions/pknock/xt_pknock.c b/extensions/pknock/xt_pknock.c
index 3c304e0b20c7..287d525f27d5 100644
--- a/extensions/pknock/xt_pknock.c
+++ b/extensions/pknock/xt_pknock.c
@@ -277,7 +277,7 @@ pknock_proc_open(struct inode *inode, struct file *file)
int ret = seq_open(file, &pknock_seq_ops);
if (ret == 0) {
struct seq_file *sf = file->private_data;
- sf->private = PDE_DATA(inode);
+ sf->private = pde_data(inode);
}
return ret;
}
diff --git a/extensions/xt_DNETMAP.c b/extensions/xt_DNETMAP.c
index b850918325da..47cf704a2fd5 100644
--- a/extensions/xt_DNETMAP.c
+++ b/extensions/xt_DNETMAP.c
@@ -576,14 +576,14 @@ static int dnetmap_seq_open(struct inode *inode, struct file *file)
if (st == NULL)
return -ENOMEM;
- st->p = PDE_DATA(inode);
+ st->p = pde_data(inode);
return 0;
}
static ssize_t
dnetmap_tg_proc_write(struct file *file, const char __user *input,size_t size, loff_t *loff)
{
- struct dnetmap_prefix *p = PDE_DATA(file_inode(file));
+ struct dnetmap_prefix *p = pde_data(file_inode(file));
struct dnetmap_entry *e;
char buf[sizeof("+192.168.100.100:200.200.200.200")];
const char *c = buf;
@@ -793,7 +793,7 @@ static int dnetmap_stat_proc_show(struct seq_file *m, void *data)
static int dnetmap_stat_proc_open(struct inode *inode, struct file *file)
{
- return single_open(file, dnetmap_stat_proc_show, PDE_DATA(inode));
+ return single_open(file, dnetmap_stat_proc_show, pde_data(inode));
}
static const struct proc_ops dnetmap_stat_proc_fops = {
diff --git a/extensions/xt_condition.c b/extensions/xt_condition.c
index cf07966e71b7..41639c317e7f 100644
--- a/extensions/xt_condition.c
+++ b/extensions/xt_condition.c
@@ -83,14 +83,14 @@ static int condition_proc_show(struct seq_file *m, void *data)
static int condition_proc_open(struct inode *inode, struct file *file)
{
- return single_open(file, condition_proc_show, PDE_DATA(inode));
+ return single_open(file, condition_proc_show, pde_data(inode));
}
static ssize_t
condition_proc_write(struct file *file, const char __user *buffer,
size_t length, loff_t *loff)
{
- struct condition_variable *var = PDE_DATA(file_inode(file));
+ struct condition_variable *var = pde_data(file_inode(file));
char newval;
if (length > 0) {
diff --git a/extensions/xt_quota2.c b/extensions/xt_quota2.c
index 70bf0957e815..182771e26ca0 100644
--- a/extensions/xt_quota2.c
+++ b/extensions/xt_quota2.c
@@ -73,14 +73,14 @@ static int quota_proc_show(struct seq_file *m, void *data)
static int quota_proc_open(struct inode *inode, struct file *file)
{
- return single_open(file, quota_proc_show, PDE_DATA(inode));
+ return single_open(file, quota_proc_show, pde_data(inode));
}
static ssize_t
quota_proc_write(struct file *file, const char __user *input,
size_t size, loff_t *loff)
{
- struct xt_quota_counter *e = PDE_DATA(file_inode(file));
+ struct xt_quota_counter *e = pde_data(file_inode(file));
char buf[sizeof("+-18446744073709551616")];
if (size > sizeof(buf))
--
2.34.1
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [xtables-addons PATCH 2/2] build: bump supported kernel version to 5.17
2022-02-04 13:26 [xtables-addons PATCH 0/2] 5.17 Kernel Support Jeremy Sowden
2022-02-04 13:26 ` [xtables-addons PATCH 1/2] extensions: replace `PDE_DATA` Jeremy Sowden
@ 2022-02-04 13:26 ` Jeremy Sowden
2022-02-05 19:33 ` [xtables-addons PATCH 0/2] 5.17 Kernel Support Jan Engelhardt
2 siblings, 0 replies; 4+ messages in thread
From: Jeremy Sowden @ 2022-02-04 13:26 UTC (permalink / raw)
To: Jan Engelhardt; +Cc: Netfilter Devel
Signed-off-by: Jeremy Sowden <jeremy@azazel.net>
---
configure.ac | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/configure.ac b/configure.ac
index 44148d2cf349..1670ab942098 100644
--- a/configure.ac
+++ b/configure.ac
@@ -59,7 +59,7 @@ AS_IF([test -n "$kbuilddir"], [
yoff
], [
echo "$kmajor.$kminor.$kmicro.$kstable in $kbuilddir";
- if test "$kmajor" -gt 5 -o "$kmajor" -eq 5 -a "$kminor" -gt 16; then
+ if test "$kmajor" -gt 5 -o "$kmajor" -eq 5 -a "$kminor" -gt 17; then
yon
echo "WARNING: That kernel version is not officially supported yet. Continue at own luck.";
yoff
--
2.34.1
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [xtables-addons PATCH 0/2] 5.17 Kernel Support
2022-02-04 13:26 [xtables-addons PATCH 0/2] 5.17 Kernel Support Jeremy Sowden
2022-02-04 13:26 ` [xtables-addons PATCH 1/2] extensions: replace `PDE_DATA` Jeremy Sowden
2022-02-04 13:26 ` [xtables-addons PATCH 2/2] build: bump supported kernel version to 5.17 Jeremy Sowden
@ 2022-02-05 19:33 ` Jan Engelhardt
2 siblings, 0 replies; 4+ messages in thread
From: Jan Engelhardt @ 2022-02-05 19:33 UTC (permalink / raw)
To: Jeremy Sowden; +Cc: Netfilter Devel
On Friday 2022-02-04 14:26, Jeremy Sowden wrote:
>The `PDE_DATA` procfs function has been replaced by another function,
>`pde_data`, in 5.17. The first patch adds support for this. The second
>bumps the maximum supported kernel version to 5.17.
Added, with some blank lines more removed.
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2022-02-05 19:33 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-02-04 13:26 [xtables-addons PATCH 0/2] 5.17 Kernel Support Jeremy Sowden
2022-02-04 13:26 ` [xtables-addons PATCH 1/2] extensions: replace `PDE_DATA` Jeremy Sowden
2022-02-04 13:26 ` [xtables-addons PATCH 2/2] build: bump supported kernel version to 5.17 Jeremy Sowden
2022-02-05 19:33 ` [xtables-addons PATCH 0/2] 5.17 Kernel Support Jan Engelhardt
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.