Re: [PATCH v5 0/6] workload-specific and memory pressure-driven zswap writeback

From: Nhat Pham
Date: Wed Nov 08 2023 - 19:28:16 EST


On Wed, Nov 8, 2023 at 3:12 PM Chris Li <chrisl@xxxxxxxxxx> wrote:
>
> Hi Nhat,
>
> On Wed, Nov 8, 2023 at 1:15 PM Nhat Pham <nphamcs@xxxxxxxxx> wrote:
> >
> > Ah that was meant to be a fixlet - so that on top of the original
> > "zswap: make shrinking memcg-aware" patch. The intention was
> > to eventually squash it...
> >
> > But this is getting a bit annoyingly confusing, I admit. I just rebased to
> > mm-unstable + squashed it all again, then sent one single replacement
> > patch:
> >
> > [PATCH v5 3/6 REPLACE] zswap: make shrinking memcg-aware
>
> Thank you for the quick response.
>
> Yes, I am able to download your replacement version of patch 3.
> Just FYI, I am using "git mailsplit" to split up the mbox into 6
> separate patch files.
> On mm-unstable, I am able to apply your replacement patch 3 cleanly.
> I also need some help on the patch 0005, it does not apply cleanly either.
>
> $ git mailsplit -ozswap-pool-lru
> v5_20231106_nphamcs_workload_specific_and_memory_pressure_driven_zswap_writeback.mbx
> $ git am patches/zswap-pool-lru/0001
> Applying: list_lru: allows explicit memcg and NUMA node selection
> $ git am patches/zswap-pool-lru/0002
> Applying: memcontrol: allows mem_cgroup_iter() to check for onlineness
> $ git am patches/zswap-pool-lru/3.replace
> Applying: zswap: make shrinking memcg-aware
> $ git am patches/zswap-pool-lru/0004
> Applying: mm: memcg: add per-memcg zswap writeback stat
> $ git am patches/zswap-pool-lru/0005
> Applying: selftests: cgroup: update per-memcg zswap writeback selftest
> error: patch failed: tools/testing/selftests/cgroup/test_zswap.c:50
> error: tools/testing/selftests/cgroup/test_zswap.c: patch does not apply
> Patch failed at 0001 selftests: cgroup: update per-memcg zswap
> writeback selftest
> hint: Use 'git am --show-current-patch=diff' to see the failed patch
> When you have resolved this problem, run "git am --continue".
> If you prefer to skip this patch, run "git am --skip" instead.
> To restore the original branch and stop patching, run "git am --abort".
>
> >
> > Let me know if this still fails to apply. If not, I'll send the whole thing
> > again as v6! My sincerest apologies for the troubles and confusion :(
>
> No problem at all. Thanks for your help on patch 3.
>
> Chris

Hmm my guess is that I probably sent this out based on an outdated
mm-unstable. There has since been a new zswap selftest merged
to mm-unstable (written by no other than myself - oh the irony), so
maybe it does not apply cleanly anymore with git am.

I was, however, able to apply the patch with the -3 argument, i.e:

git am -3 ../mbox/0005

This will fall back to the 3-way merge if direct application fails.
And, FWIW, the kselftest still seems to build.

I think you'll have to do the same with the 6th patch as well. My
guess is that on my latest rebase attempt, this was done silent and
automatically, so I did not notice this.

Let me know if this works. Worst case scenario, I can still rebase 'n
resend the patch series :)