diff --git a/lib/gitlab/markdown.rb b/lib/gitlab/markdown.rb
index fa9c0975bb8271775a272c03b7dbb860522367d1..889decc9b485e6255ecda2f23afe6814f4ce1f4e 100644
--- a/lib/gitlab/markdown.rb
+++ b/lib/gitlab/markdown.rb
@@ -54,7 +54,7 @@ module Gitlab
         current_user:         current_user
       )
 
-      pipeline = HTML::Pipeline.new(filters)
+      @pipeline ||= HTML::Pipeline.new(filters)
 
       context = {
         # SanitizationFilter
@@ -79,7 +79,7 @@ module Gitlab
         project_wiki:   @project_wiki
       }
 
-      result = pipeline.call(text, context)
+      result = @pipeline.call(text, context)
 
       save_options = 0
       if options[:xhtml]