linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] mm/mmu_notifier.c: micro-optimization substitute kzalloc with kmalloc
@ 2020-09-06 11:43 mateusznosek0
  2020-09-06 14:26 ` Mike Rapoport
  0 siblings, 1 reply; 5+ messages in thread
From: mateusznosek0 @ 2020-09-06 11:43 UTC (permalink / raw)
  To: linux-mm, linux-kernel; +Cc: Mateusz Nosek, akpm

From: Mateusz Nosek <mateusznosek0@gmail.com>

Most fields in struct pointed by 'subscriptions' are initialized explicitly
after the allocation. By changing kzalloc to kmalloc the call to memset
is avoided. As the only new code consists of 2 simple memory accesses,
the performance is increased.

Signed-off-by: Mateusz Nosek <mateusznosek0@gmail.com>
---
 mm/mmu_notifier.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/mm/mmu_notifier.c b/mm/mmu_notifier.c
index 4fc918163dd3..190e198dc5be 100644
--- a/mm/mmu_notifier.c
+++ b/mm/mmu_notifier.c
@@ -625,7 +625,7 @@ int __mmu_notifier_register(struct mmu_notifier *subscription,
 		 * know that mm->notifier_subscriptions can't change while we
 		 * hold the write side of the mmap_lock.
 		 */
-		subscriptions = kzalloc(
+		subscriptions = kmalloc(
 			sizeof(struct mmu_notifier_subscriptions), GFP_KERNEL);
 		if (!subscriptions)
 			return -ENOMEM;
@@ -636,6 +636,8 @@ int __mmu_notifier_register(struct mmu_notifier *subscription,
 		subscriptions->itree = RB_ROOT_CACHED;
 		init_waitqueue_head(&subscriptions->wq);
 		INIT_HLIST_HEAD(&subscriptions->deferred_list);
+		subscriptions->active_invalidate_ranges = 0;
+		subscriptions->has_itree = false;
 	}
 
 	ret = mm_take_all_locks(mm);
-- 
2.20.1


^ permalink raw reply related	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2020-09-08 23:32 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-09-06 11:43 [PATCH] mm/mmu_notifier.c: micro-optimization substitute kzalloc with kmalloc mateusznosek0
2020-09-06 14:26 ` Mike Rapoport
2020-09-06 16:06   ` Mateusz Nosek
2020-09-08  6:42     ` Mike Rapoport
2020-09-08 23:32       ` Jason Gunthorpe

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).