lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Tue, 10 Nov 2015 14:34:00 +0100 From: Lars Ellenberg <lars.ellenberg@...bit.com> To: Tetsuo Handa <penguin-kernel@...ove.SAKURA.ne.jp> Cc: linux-mm@...ck.org, linux-kernel@...r.kernel.org, drbd-user@...ts.linbit.com Subject: Re: [DRBD-user] [PATCH] tree wide: Use kvfree() than conditional kfree()/vfree() On Mon, Nov 09, 2015 at 08:56:10PM +0900, Tetsuo Handa wrote: > There are many locations that do > > if (memory_was_allocated_by_vmalloc) > vfree(ptr); > else > kfree(ptr); > > but kvfree() can handle both kmalloc()ed memory and vmalloc()ed memory > using is_vmalloc_addr(). Unless callers have special reasons, we can > replace this branch with kvfree(). Please check and reply if you found > problems. For the DRBD part: > drivers/block/drbd/drbd_bitmap.c | 26 +++++------------ > drivers/block/drbd/drbd_int.h | 3 -- > diff --git a/drivers/block/drbd/drbd_bitmap.c b/drivers/block/drbd/drbd_bitmap.c > index 9462d27..2daaafb 100644 > --- a/drivers/block/drbd/drbd_bitmap.c > +++ b/drivers/block/drbd/drbd_bitmap.c > @@ -364,12 +364,9 @@ static void bm_free_pages(struct page **pages, unsigned long number) > } > } > > -static void bm_vk_free(void *ptr, int v) > +static inline void bm_vk_free(void *ptr) Maybe drop this inline completely ... > { > - if (v) > - vfree(ptr); > - else > - kfree(ptr); > + kvfree(ptr); > } ... and just call kvfree() directly below? > - bm_vk_free(new_pages, vmalloced); > + bm_vk_free(new_pages); + kvfree(new_pages); ... Other than that: looks good and harmless enough. Thanks, Lars -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@...r.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists