X-Git-Url: https://git.lttng.org/?a=blobdiff_plain;f=src%2Flttng-abi.c;h=6829c239cc991c4a9d85016843b37b7d588dc8a9;hb=8c71721f7a868b575b05e24bc3a3dcc967e6d5d6;hp=d660ad470c7653801159a61b35059f2a2af183be;hpb=e2d5dbc7d09c7aa4f7c391fcdd4dfc95ba1ed326;p=lttng-modules.git diff --git a/src/lttng-abi.c b/src/lttng-abi.c index d660ad47..6829c239 100644 --- a/src/lttng-abi.c +++ b/src/lttng-abi.c @@ -793,6 +793,37 @@ long lttng_session_ioctl(struct file *file, unsigned int cmd, unsigned long arg) struct lttng_kernel_abi_channel chan_param; struct lttng_kernel_abi_old_channel old_chan_param; + /* + * Handle backward compatibility. OLD commands have wrong + * directions, replace them by the correct direction. + */ + switch (cmd) { + case LTTNG_KERNEL_ABI_OLD_SESSION_TRACK_PID: + cmd = LTTNG_KERNEL_ABI_SESSION_TRACK_PID; + break; + case LTTNG_KERNEL_ABI_OLD_SESSION_UNTRACK_PID: + cmd = LTTNG_KERNEL_ABI_SESSION_UNTRACK_PID; + break; + case LTTNG_KERNEL_ABI_OLD_SESSION_TRACK_ID: + cmd = LTTNG_KERNEL_ABI_SESSION_TRACK_ID; + break; + case LTTNG_KERNEL_ABI_OLD_SESSION_UNTRACK_ID: + cmd = LTTNG_KERNEL_ABI_SESSION_UNTRACK_ID; + break; + case LTTNG_KERNEL_ABI_OLD_SESSION_LIST_TRACKER_IDS: + cmd = LTTNG_KERNEL_ABI_SESSION_LIST_TRACKER_IDS; + break; + case LTTNG_KERNEL_ABI_OLD_SESSION_SET_NAME: + cmd = LTTNG_KERNEL_ABI_SESSION_SET_NAME; + break; + case LTTNG_KERNEL_ABI_OLD_SESSION_SET_CREATION_TIME: + cmd = LTTNG_KERNEL_ABI_SESSION_SET_CREATION_TIME; + break; + default: + /* Nothing to do. */ + break; + } + switch (cmd) { case LTTNG_KERNEL_ABI_OLD_CHANNEL: { @@ -1904,9 +1935,9 @@ long lttng_event_notifier_event_ioctl(struct file *file, unsigned int cmd, unsig switch (cmd) { case LTTNG_KERNEL_ABI_ENABLE: - return lttng_event_notifier_enable(event_notifier); + return lttng_event_enable(&event_notifier->parent); case LTTNG_KERNEL_ABI_DISABLE: - return lttng_event_notifier_disable(event_notifier); + return lttng_event_disable(&event_notifier->parent); case LTTNG_KERNEL_ABI_FILTER: return -EINVAL; case LTTNG_KERNEL_ABI_CAPTURE: @@ -2597,10 +2628,10 @@ long lttng_event_recorder_event_ioctl(struct file *file, unsigned int cmd, unsig } case LTTNG_KERNEL_ABI_OLD_ENABLE: case LTTNG_KERNEL_ABI_ENABLE: - return lttng_event_enable(event_recorder); + return lttng_event_enable(&event_recorder->parent); case LTTNG_KERNEL_ABI_OLD_DISABLE: case LTTNG_KERNEL_ABI_DISABLE: - return lttng_event_disable(event_recorder); + return lttng_event_disable(&event_recorder->parent); case LTTNG_KERNEL_ABI_FILTER: return -EINVAL; case LTTNG_KERNEL_ABI_ADD_CALLSITE: