[bug report] mm/zswap: add the flag can_sleep_mapped

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello Tian Tao,

The patch 6753c561f653: "mm/zswap: add the flag can_sleep_mapped"
from Jan 20, 2021, leads to the following static checker warning:

	mm/zswap.c:1322 zswap_frontswap_load()
	error: uninitialized symbol 'ret'.

mm/zswap.c
  1250  static int zswap_frontswap_load(unsigned type, pgoff_t offset,
  1251                                  struct page *page)
  1252  {
  1253          struct zswap_tree *tree = zswap_trees[type];
  1254          struct zswap_entry *entry;
  1255          struct scatterlist input, output;
  1256          struct crypto_acomp_ctx *acomp_ctx;
  1257          u8 *src, *dst, *tmp;
  1258          unsigned int dlen;
  1259          int ret;
  1260  
  1261          /* find */
  1262          spin_lock(&tree->lock);
  1263          entry = zswap_entry_find_get(&tree->rbroot, offset);
  1264          if (!entry) {
  1265                  /* entry was written back */
  1266                  spin_unlock(&tree->lock);
  1267                  return -1;
  1268          }
  1269          spin_unlock(&tree->lock);
  1270  
  1271          if (!entry->length) {
  1272                  dst = kmap_atomic(page);
  1273                  zswap_fill_page(dst, entry->value);
  1274                  kunmap_atomic(dst);

ret = 0; on this path?

  1275                  goto freeentry;
  1276          }
  1277  
  1278          if (!zpool_can_sleep_mapped(entry->pool->zpool)) {
  1279  
  1280                  tmp = kmalloc(entry->length, GFP_ATOMIC);
  1281                  if (!tmp) {
  1282                          ret = -ENOMEM;
  1283                          goto freeentry;
  1284                  }
  1285          }
  1286  

regards,
dan carpenter




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux