Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

softirq: Use _RET_IP_

Use the already defined macro to pass the function return address.

Signed-off-by: Davidlohr Bueso <davidlohr.bueso@hp.com>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
Link: http://lkml.kernel.org/r/1367347569.1784.3.camel@buesod1.americas.hpqcorp.net
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>

authored by

Davidlohr Bueso and committed by
Thomas Gleixner
d2e08473 ccc414f8

+4 -6
+4 -6
kernel/softirq.c
··· 127 127 128 128 void local_bh_disable(void) 129 129 { 130 - __local_bh_disable((unsigned long)__builtin_return_address(0), 131 - SOFTIRQ_DISABLE_OFFSET); 130 + __local_bh_disable(_RET_IP_, SOFTIRQ_DISABLE_OFFSET); 132 131 } 133 132 134 133 EXPORT_SYMBOL(local_bh_disable); ··· 138 139 WARN_ON_ONCE(!irqs_disabled()); 139 140 140 141 if (softirq_count() == cnt) 141 - trace_softirqs_on((unsigned long)__builtin_return_address(0)); 142 + trace_softirqs_on(_RET_IP_); 142 143 sub_preempt_count(cnt); 143 144 } 144 145 ··· 183 184 184 185 void local_bh_enable(void) 185 186 { 186 - _local_bh_enable_ip((unsigned long)__builtin_return_address(0)); 187 + _local_bh_enable_ip(_RET_IP_); 187 188 } 188 189 EXPORT_SYMBOL(local_bh_enable); 189 190 ··· 222 223 pending = local_softirq_pending(); 223 224 account_irq_enter_time(current); 224 225 225 - __local_bh_disable((unsigned long)__builtin_return_address(0), 226 - SOFTIRQ_OFFSET); 226 + __local_bh_disable(_RET_IP_, SOFTIRQ_OFFSET); 227 227 lockdep_softirq_enter(); 228 228 229 229 cpu = smp_processor_id();