Fix: Use negative value for error code of lttng_ust_ctl_duplicate_ust_object_data
authortakeshi.iwanari <takeshi.iwanari@tier4.jp>
Fri, 24 Jun 2022 13:17:39 +0000 (22:17 +0900)
committerMathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mon, 27 Jun 2022 14:37:20 +0000 (10:37 -0400)
commitd720c2d1aacce6072d7161575f6ed3275067a0ef
tree204fcfe5b6ac7e49ed6fe815c93ea642d0202777
parent362ea43ac96394dc68dc22677cd9b84f5fa29b76
Fix: Use negative value for error code of lttng_ust_ctl_duplicate_ust_object_data

[As is]
  - `lttng_ust_ctl_duplicate_ust_object_data` function is called by the following functions:
    - `event_notifier_error_accounting_register_app` (lttng-tools)
    - `duplicate_stream_object` (lttng-tools)
    - `duplicate_channel_object` (lttng-tools)
  - `lttng_ust_ctl_duplicate_ust_object_data` function returns positive value (= errno = 24 = EMFILE) when system call `dup` returns error
  - However, `duplicate_stream_object` and `duplicate_channel_object` functions expect negative value as error code
  - As a result, these functions cannot handle error and segmentation fault occurs when using `stream->handle`

[Proposal]
  - Currently, `lttng_ust_ctl_duplicate_ust_object_data` function returns either positive or negative value when error happens
  - It looks convention is using negative value for error code (e.g. `-ENOMEM` )
  - So, I propose to change `errno` to `-errno`

Signed-off-by: takeshi.iwanari <takeshi.iwanari@tier4.jp>
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Change-Id: Iccb01930413ecd5a8c58ad267e9c4eca53694dc7
src/lib/lttng-ust-ctl/ustctl.c
This page took 0.025909 seconds and 4 git commands to generate.