kernel/drivers/net/wireless/marvell/mwifiex/debugfs.c
.. .. @@ -265,8 +265,11 @@ 265 265 if (!p) 266 266 return -ENOMEM; 267 267 268 - if (!priv || !priv->hist_data)269 - return -EFAULT;268 + if (!priv || !priv->hist_data) {269 + ret = -EFAULT;270 + goto free_and_exit;271 + }272 +270 273 phist_data = priv->hist_data; 271 274 272 275 p += sprintf(p, "\n" .. .. @@ -321,6 +324,8 @@ 321 324 ret = simple_read_from_buffer(ubuf, count, ppos, (char *)page, 322 325 (unsigned long)p - page); 323 326 327 +free_and_exit:328 + free_page(page);324 329 return ret; 325 330 } 326 331