diff options
| author | Takashi Iwai <tiwai@suse.de> | 2024-03-11 16:18:47 +0100 |
|---|---|---|
| committer | Takashi Iwai <tiwai@suse.de> | 2024-03-11 16:18:47 +0100 |
| commit | f5d9ddf1214bf878ca69c905c2f410c5b51de99c (patch) | |
| tree | 3ea7bf6f519a490f72cf5f9023b5c0a6dff0fea0 /mm/zswap.c | |
| parent | ALSA: scarlett2: Fix Scarlett 4th Gen input gain range again (diff) | |
| parent | ASoC: Intel: catpt: Carefully use PCI bitwise constants (diff) | |
| download | linux-f5d9ddf1214bf878ca69c905c2f410c5b51de99c.tar.gz linux-f5d9ddf1214bf878ca69c905c2f410c5b51de99c.zip | |
Merge tag 'asoc-v6.9' of https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound into for-linus
ASoC: Updates for v6.9
This has been quite a small release, there's a lot of driver specific
cleanups and minor enhancements but hardly anything on the core and only
one new driver. Highlights include:
- SoundWire support for AMD ACP 6.3 systems.
- Support for reporting version information for AVS firmware.
- Support DSPless mode for Intel Soundwire systems.
- Support for configuring CS35L56 amplifiers using EFI calibration
data.
- Log which component is being operated on as part of power management
trace events.
- Support for Microchip SAM9x7, NXP i.MX95 and Qualcomm WCD939x
Diffstat (limited to 'mm/zswap.c')
| -rw-r--r-- | mm/zswap.c | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/mm/zswap.c b/mm/zswap.c index ca25b676048e..350dd2fc8159 100644 --- a/mm/zswap.c +++ b/mm/zswap.c @@ -536,10 +536,6 @@ static struct zpool *zswap_find_zpool(struct zswap_entry *entry) */ static void zswap_free_entry(struct zswap_entry *entry) { - if (entry->objcg) { - obj_cgroup_uncharge_zswap(entry->objcg, entry->length); - obj_cgroup_put(entry->objcg); - } if (!entry->length) atomic_dec(&zswap_same_filled_pages); else { @@ -548,6 +544,10 @@ static void zswap_free_entry(struct zswap_entry *entry) atomic_dec(&entry->pool->nr_stored); zswap_pool_put(entry->pool); } + if (entry->objcg) { + obj_cgroup_uncharge_zswap(entry->objcg, entry->length); + obj_cgroup_put(entry->objcg); + } zswap_entry_cache_free(entry); atomic_dec(&zswap_stored_pages); zswap_update_total_size(); @@ -895,10 +895,8 @@ static enum lru_status shrink_memcg_cb(struct list_head *item, struct list_lru_o * into the warmer region. We should terminate shrinking (if we're in the dynamic * shrinker context). */ - if (writeback_result == -EEXIST && encountered_page_in_swapcache) { - ret = LRU_SKIP; + if (writeback_result == -EEXIST && encountered_page_in_swapcache) *encountered_page_in_swapcache = true; - } goto put_unlock; } |
