mirror of
				https://github.com/torvalds/linux.git
				synced 2025-11-04 10:40:15 +02:00 
			
		
		
		
	tracing/ftrace: use preempt_enable_no_resched_notrace in ring_buffer_time_stamp()
Impact: prevent a trace recursion After some tests with function graph tracer under x86-32, I saw some recursions caused by ring_buffer_time_stamp() that calls preempt_enable_no_notrace() which calls preempt_schedule() which is traced itself. This patch re-enables preemption without rescheduling. Signed-off-by: Frederic Weisbecker <fweisbec@gmail.com> Signed-off-by: Ingo Molnar <mingo@elte.hu>
This commit is contained in:
		
							parent
							
								
									9dfc3bc7d2
								
							
						
					
					
						commit
						2c2d7329d8
					
				
					 1 changed files with 1 additions and 1 deletions
				
			
		| 
						 | 
					@ -107,7 +107,7 @@ u64 ring_buffer_time_stamp(int cpu)
 | 
				
			||||||
	preempt_disable_notrace();
 | 
						preempt_disable_notrace();
 | 
				
			||||||
	/* shift to debug/test normalization and TIME_EXTENTS */
 | 
						/* shift to debug/test normalization and TIME_EXTENTS */
 | 
				
			||||||
	time = sched_clock() << DEBUG_SHIFT;
 | 
						time = sched_clock() << DEBUG_SHIFT;
 | 
				
			||||||
	preempt_enable_notrace();
 | 
						preempt_enable_no_resched_notrace();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	return time;
 | 
						return time;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in a new issue