Add Linux 5.18 (#276)

This change adds a release for Linux 5.18 for the Proxmox Edge kernels.
This commit is contained in:
Fabian Mastenbroek 2022-06-23 10:42:06 +02:00 committed by GitHub
parent 73af00b013
commit 60595234df
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
9 changed files with 38 additions and 116 deletions

View file

@ -11,7 +11,7 @@ jobs:
runs-on: [ubuntu-latest]
strategy:
matrix:
branch: ['v5.17.x']
branch: ['v5.18.x']
steps:
- name: Checkout Sources
uses: actions/checkout@v2

View file

@ -2,8 +2,8 @@
Custom Linux kernels for Proxmox VE.
#### Available Versions
1. Linux 5.17
1. Linux 5.16 **[EOL]**
1. Linux 5.18
1. Linux 5.17 **[EOL]**
Older builds are still available at the [Releases](https://github.com/fabianishere/pve-edge-kernel/releases) page.
@ -27,7 +27,7 @@ First, set up our Debian repository on your Proxmox installation:
3. **Install a kernel package:**
```bash
apt update
apt install pve-kernel-5.16-edge
apt install pve-kernel-5.18-edge
```
Package repository hosting is graciously provided by [Cloudsmith](https://cloudsmith.com).

Binary file not shown.

4
debian/changelog vendored
View file

@ -1,7 +1,7 @@
pve-kernel (5.18.0-1) UNRELEASED; urgency=medium
pve-kernel (5.18.0-1) edge; urgency=medium
* Update to Linux 5.18
* Update to ZFS 2.1.4
* Update to ZFS 2.1.5
-- Fabian Mastenbroek <mail.fabianm@gmail.com> Mon, 26 Mar 2022 20:00:00 +0000

View file

@ -1,4 +1,4 @@
CONFIG_DEBUG_INFO=n # PVE strips debug info afterwards
CONFIG_DEBUG_INFO_NONE=y # PVE strips debug info afterwards
CONFIG_INTEL_MEI_WDT=m
CONFIG_SND_PCM_OSS=n
CONFIG_TRANSPARENT_HUGEPAGE_MADVISE=y

View file

@ -10,15 +10,15 @@ Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/net/core/dev.c b/net/core/dev.c
index ef8cf7619b..787d7dc1c7 100644
index 2771fd22dc6a..37e18f93de23 100644
--- a/net/core/dev.c
+++ b/net/core/dev.c
@@ -10488,7 +10488,7 @@ static void netdev_wait_allrefs(struct net_device *dev)
if (refcnt != 1 &&
time_after(jiffies, warning_time +
@@ -10177,7 +10177,7 @@ static struct net_device *netdev_wait_allrefs_any(struct list_head *list)
if (time_after(jiffies, warning_time +
netdev_unregister_timeout_secs * HZ)) {
- pr_emerg("unregister_netdevice: waiting for %s to become free. Usage count = %d\n",
+ pr_err("unregister_netdevice: waiting for %s to become free. Usage count = %d\n",
dev->name, refcnt);
warning_time = jiffies;
}
list_for_each_entry(dev, list, todo_list) {
- pr_emerg("unregister_netdevice: waiting for %s to become free. Usage count = %d\n",
+ pr_err("unregister_netdevice: waiting for %s to become free. Usage count = %d\n",
dev->name, netdev_refcnt_read(dev));
ref_tracker_dir_print(&dev->refcnt_tracker, 10);
}

View file

@ -1,7 +1,7 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From 3607849df47822151b05df440759e2dc70160755 Mon Sep 17 00:00:00 2001
From: Wolfgang Bumiller <w.bumiller@proxmox.com>
Date: Tue, 11 Jan 2022 09:31:59 +0100
Subject: [PATCH] blk-cgroup: always terminate io.stat lines
Subject: blk-cgroup: always terminate io.stat lines
With the removal of seq_get_buf in blkcg_print_one_stat, we
cannot make adding the newline conditional on there being
@ -13,19 +13,20 @@ file format.
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Fixes: 252c651a4c85 ("blk-cgroup: stop using seq_get_buf")
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Acked-by: Tejun Heo <tj@kernel.org>
Link: https://lore.kernel.org/r/20220111083159.42340-1-w.bumiller@proxmox.com
Signed-off-by: Jens Axboe <axboe@kernel.dk>
---
block/blk-cgroup.c | 9 ++-------
block/blk-iocost.c | 5 ++---
block/blk-iolatency.c | 8 +++-----
include/linux/blk-cgroup.h | 2 +-
4 files changed, 8 insertions(+), 16 deletions(-)
block/blk-cgroup.c | 9 ++-------
1 file changed, 2 insertions(+), 7 deletions(-)
(limited to 'block/blk-cgroup.c')
diff --git a/block/blk-cgroup.c b/block/blk-cgroup.c
index 0eec59e4df65..38c62a44905a 100644
index a91f8ae18b49b..204442fad33cf 100644
--- a/block/blk-cgroup.c
+++ b/block/blk-cgroup.c
@@ -887,7 +887,6 @@ static void blkcg_print_one_stat(struct blkcg_gq *blkg, struct seq_file *s)
@@ -949,7 +949,6 @@ static void blkcg_print_one_stat(struct blkcg_gq *blkg, struct seq_file *s)
{
struct blkg_iostat_set *bis = &blkg->iostat;
u64 rbytes, wbytes, rios, wios, dbytes, dios;
@ -33,115 +34,36 @@ index 0eec59e4df65..38c62a44905a 100644
const char *dname;
unsigned seq;
int i;
@@ -913,14 +912,12 @@ static void blkcg_print_one_stat(struct blkcg_gq *blkg, struct seq_file *s)
@@ -975,14 +974,12 @@ static void blkcg_print_one_stat(struct blkcg_gq *blkg, struct seq_file *s)
} while (u64_stats_fetch_retry(&bis->sync, seq));
if (rbytes || wbytes || rios || wios) {
- has_stats = true;
seq_printf(s, "rbytes=%llu wbytes=%llu rios=%llu wios=%llu dbytes=%llu dios=%llu",
rbytes, wbytes, rios, wios,
dbytes, dios);
}
if (blkcg_debug_stats && atomic_read(&blkg->use_delay)) {
- has_stats = true;
seq_printf(s, " use_delay=%d delay_nsec=%llu",
atomic_read(&blkg->use_delay),
atomic64_read(&blkg->delay_nsec));
@@ -932,12 +929,10 @@ static void blkcg_print_one_stat(struct blkcg_gq *blkg, struct seq_file *s)
@@ -994,12 +991,10 @@ static void blkcg_print_one_stat(struct blkcg_gq *blkg, struct seq_file *s)
if (!blkg->pd[i] || !pol->pd_stat_fn)
continue;
- if (pol->pd_stat_fn(blkg->pd[i], s))
- has_stats = true;
+ pol->pd_stat_fn(blkg->pd[i], s);
}
- if (has_stats)
- seq_printf(s, "\n");
+ seq_puts(s, "\n");
}
static int blkcg_print_stat(struct seq_file *sf, void *v)
diff --git a/block/blk-iocost.c b/block/blk-iocost.c
index eb7b0d6bd11f..381c28f9561e 100644
--- a/block/blk-iocost.c
+++ b/block/blk-iocost.c
@@ -2995,13 +2995,13 @@ static void ioc_pd_free(struct blkg_policy_data *pd)
kfree(iocg);
}
--
cgit
-static bool ioc_pd_stat(struct blkg_policy_data *pd, struct seq_file *s)
+static void ioc_pd_stat(struct blkg_policy_data *pd, struct seq_file *s)
{
struct ioc_gq *iocg = pd_to_iocg(pd);
struct ioc *ioc = iocg->ioc;
if (!ioc->enabled)
- return false;
+ return;
if (iocg->level == 0) {
unsigned vp10k = DIV64_U64_ROUND_CLOSEST(
@@ -3017,7 +3017,6 @@ static bool ioc_pd_stat(struct blkg_policy_data *pd, struct seq_file *s)
iocg->last_stat.wait_us,
iocg->last_stat.indebt_us,
iocg->last_stat.indelay_us);
- return true;
}
static u64 ioc_weight_prfill(struct seq_file *sf, struct blkg_policy_data *pd,
diff --git a/block/blk-iolatency.c b/block/blk-iolatency.c
index c0545f9da549..d33460f3d43d 100644
--- a/block/blk-iolatency.c
+++ b/block/blk-iolatency.c
@@ -890,7 +890,7 @@ static int iolatency_print_limit(struct seq_file *sf, void *v)
return 0;
}
-static bool iolatency_ssd_stat(struct iolatency_grp *iolat, struct seq_file *s)
+static void iolatency_ssd_stat(struct iolatency_grp *iolat, struct seq_file *s)
{
struct latency_stat stat;
int cpu;
@@ -913,17 +913,16 @@ static bool iolatency_ssd_stat(struct iolatency_grp *iolat, struct seq_file *s)
(unsigned long long)stat.ps.missed,
(unsigned long long)stat.ps.total,
iolat->rq_depth.max_depth);
- return true;
}
-static bool iolatency_pd_stat(struct blkg_policy_data *pd, struct seq_file *s)
+static void iolatency_pd_stat(struct blkg_policy_data *pd, struct seq_file *s)
{
struct iolatency_grp *iolat = pd_to_lat(pd);
unsigned long long avg_lat;
unsigned long long cur_win;
if (!blkcg_debug_stats)
- return false;
+ return;
if (iolat->ssd)
return iolatency_ssd_stat(iolat, s);
@@ -936,7 +935,6 @@ static bool iolatency_pd_stat(struct blkg_policy_data *pd, struct seq_file *s)
else
seq_printf(s, " depth=%u avg_lat=%llu win=%llu",
iolat->rq_depth.max_depth, avg_lat, cur_win);
- return true;
}
static struct blkg_policy_data *iolatency_pd_alloc(gfp_t gfp,
diff --git a/include/linux/blk-cgroup.h b/include/linux/blk-cgroup.h
index b4de2010fba5..132e05ed6935 100644
--- a/include/linux/blk-cgroup.h
+++ b/include/linux/blk-cgroup.h
@@ -152,7 +152,7 @@ typedef void (blkcg_pol_online_pd_fn)(struct blkg_policy_data *pd);
typedef void (blkcg_pol_offline_pd_fn)(struct blkg_policy_data *pd);
typedef void (blkcg_pol_free_pd_fn)(struct blkg_policy_data *pd);
typedef void (blkcg_pol_reset_pd_stats_fn)(struct blkg_policy_data *pd);
-typedef bool (blkcg_pol_stat_pd_fn)(struct blkg_policy_data *pd,
+typedef void (blkcg_pol_stat_pd_fn)(struct blkg_policy_data *pd,
struct seq_file *s);
struct blkcg_policy {

2
linux

@ -1 +1 @@
Subproject commit f443e374ae131c168a065ea1748feac6b2e76613
Subproject commit 4b0986a3613c92f4ec1bdc7f60ec66fea135991f

2
zfs

@ -1 +1 @@
Subproject commit 52bad4f23daaa5f827f802c8d05785a27b80275d
Subproject commit 6c3c5fcfbe27d9193cd131753cc7e47ee2784621