X-Git-Url: http://git.lttng.org/?a=blobdiff_plain;f=wrapper%2Firqdesc.c;h=cd506166717e4bd6a5b960c019196ba992d81cca;hb=360d3efee55154a55c18be32175bee608dcb21df;hp=a71981e74a4fdd74c4dc61b35d6563309df96eba;hpb=c337ddc219f608d4d35f461bdc9d2246324d6708;p=lttng-modules.git diff --git a/wrapper/irqdesc.c b/wrapper/irqdesc.c index a71981e7..cd506166 100644 --- a/wrapper/irqdesc.c +++ b/wrapper/irqdesc.c @@ -1,20 +1,37 @@ /* - * Copyright (C) 2011 Mathieu Desnoyers (mathieu.desnoyers@efficios.com) + * wrapper/irqdesc.c * * wrapper around irq_to_desc. Using KALLSYMS to get its address when * available, else we need to have a kernel that exports this function to GPL - * modules. + * modules. This export was added to the 3.4 kernels. * - * Dual LGPL v2.1/GPL v2 license. + * Copyright (C) 2011-2012 Mathieu Desnoyers + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; only + * version 2.1 of the License. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ -#ifdef CONFIG_KALLSYMS +#include + +#if (defined(CONFIG_KALLSYMS) \ + && (LTTNG_LINUX_VERSION_CODE < LTTNG_KERNEL_VERSION(3,4,0))) #include #include #include -#include "kallsyms.h" -#include "irqdesc.h" +#include +#include static struct irq_desc *(*irq_to_desc_sym)(unsigned int irq); @@ -26,7 +43,7 @@ struct irq_desc *wrapper_irq_to_desc(unsigned int irq) if (irq_to_desc_sym) { return irq_to_desc_sym(irq); } else { - printk(KERN_WARNING "LTTng: irq_to_desc symbol lookup failed.\n"); + printk_once(KERN_WARNING "LTTng: irq_to_desc symbol lookup failed.\n"); return NULL; } }