X-Git-Url: https://git.lttng.org/?a=blobdiff_plain;f=wrapper%2Ftime.h;h=362f314ac75df0c10b6106f7f907b2cc3d61e6a6;hb=c2d5363fee624e18bc26938e209b4b5bdd8799cd;hp=f33791f0a1ef25c73e9314e97b63199b6461b37a;hpb=06359dbe96f39ddc7e09b9e16290f954dc5be4b3;p=lttng-modules.git diff --git a/wrapper/time.h b/wrapper/time.h index f33791f0..362f314a 100644 --- a/wrapper/time.h +++ b/wrapper/time.h @@ -1,43 +1,22 @@ -#ifndef _LTTNG_WRAPPER_TIME_H -#define _LTTNG_WRAPPER_TIME_H - -/* - * wrapper/time.h +/* SPDX-License-Identifier: (GPL-2.0 or LGPL-2.1) * - * Copyright (C) 2015 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. + * wrapper/time.h * - * 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 + * Copyright (C) 2020 Michael Jeanson + * Copyright (C) 2020 Mathieu Desnoyers */ -#include -#include - -#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,4,0)) - -static inline bool lttng_close_on_exec(int fd, const struct fdtable *fdt) -{ - return close_on_exec(fd, fdt); -} - -#else +#ifndef _LTTNG_WRAPPER_TIME_H +#define _LTTNG_WRAPPER_TIME_H -static inline bool lttng_close_on_exec(int fd, const struct fdtable *fdt) -{ - return FD_ISSET(fd, fdt->close_on_exec); -} +#include +/* + * Use 64bit timespec on kernels that have it, this makes 32bit arch + * y2038 compliant. + */ +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,17,0)) +# define LTTNG_KERNEL_HAS_TIMESPEC64 #endif #endif /* _LTTNG_WRAPPER_TIME_H */