Make-initrd development discussion
 help / color / mirror / Atom feed
From: Alexey Gladkov <legion@altlinux.ru>
To: make-initrd@lists.altlinux.org
Subject: Re: [make-initrd] [PATCH 1/3] Reimplement ueventd
Date: Sun, 14 May 2023 22:45:15 +0200
Message-ID: <ZGFIW4APkWzTmS/H@example.org> (raw)
In-Reply-To: <2715d1d6-30f5-f472-f963-9c2a57c155b4@gmail.com>

On Sun, May 14, 2023 at 11:12:22PM +0300, Leonid Krivoshein wrote:
> Привет!
> 
> 
> On 5/4/23 16:42, Alexey Gladkov wrote:
> > [...]
> > diff --git a/datasrc/ueventd/ueventd.h b/datasrc/ueventd/ueventd.h
> > new file mode 100644
> > index 00000000..a5e50379
> > --- /dev/null
> > +++ b/datasrc/ueventd/ueventd.h
> 
> К этому заголовочному файлу возникла пара вопросов.
> 
> > @@ -0,0 +1,76 @@
> > +/* SPDX-License-Identifier: GPL-2.0-or-later */
> > +
> > +#ifndef __UEVENTD_H__
> > +#define __UEVENTD_H__
> > +
> > +#include <sys/types.h>
> > +#include <stdint.h>
> > +
> > [...]
> > +
> > +/* path.c */
> > +#include <dirent.h>
> > +
> > [...]
> > +
> > +/* process.c */
> > +extern pid_t waitpid_retry(pid_t pid, int *wstatus, int options);
> > +
> > +#include <dirent.h>
> 
> 1) Что <dirent.h> повторяется дважды, конечно не проблема. Но вообще это 
> необычно выглядит, когда заголовочные файлы упоминаются в чередовании с 
> остальным кодом. Обычно они все выносятся наверх, потому и заголовочные. 
> Такой подход убережёт от понимания ошибок компилятора при появлении в 
> дальнейшем конфликтов в именах между твоим и библиотечным кодом.

Я так делаю чисто для удобства чтобы понимать, что include не нужен
определениям выше. Когда портянка include собрана сверху, то не всегда
ясно для чего include добавлен. Но для меня это совершенно не критично.

> 
> > +
> > +extern  int is_dot_dir(struct dirent *ent) __attribute__((nonnull(1)));
> > +
> > +/* logging.c */
> > +#include <unistd.h>
> > +#include <syslog.h>
> > +#include <stdlib.h>
> > +
> > [...]
> > +
> > +#endif /* __UEVENTD_H__ */
> 
> 2) Понятно, что код чисто Си-шный и никому пока "снаружи" (ueventd) не 
> требуется. Просто, опять же, привычно видеть тут совместимость с 
> "плюсовой обёрткой". Возможно, так задумано, чтобы слинковаться с твоим 
> кодом можно было только для Си-шных программ.

В make-initrd у меня нет ни одной программы на с++ и я на нём не пишу.
Когда будет хоть один запрос на использование с++ и когда пользователь
сможет это обосновать, то обязательно добавлю всё необходимое.

-- 
Rgrds, legion



  reply	other threads:[~2023-05-14 20:45 UTC|newest]

Thread overview: 45+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-05-04 13:42 [make-initrd] [PATCH 0/3] " Alexey Gladkov
2023-05-04 13:42 ` [make-initrd] [PATCH 1/3] " Alexey Gladkov
2023-05-05  3:08   ` Leonid Krivoshein
2023-05-05 17:02     ` Alexey Gladkov
2023-05-05  4:03   ` Leonid Krivoshein
2023-05-05 17:16     ` Alexey Gladkov
2023-05-05  5:21   ` Leonid Krivoshein
2023-05-05 17:24     ` Alexey Gladkov
2023-05-14 20:12   ` Leonid Krivoshein
2023-05-14 20:45     ` Alexey Gladkov [this message]
2023-05-14 20:57   ` Leonid Krivoshein
2023-05-15  8:52     ` Alexey Gladkov
2023-05-14 23:08   ` Leonid Krivoshein
2023-05-15  9:05     ` Alexey Gladkov
2023-05-15  0:47   ` Leonid Krivoshein
2023-05-15  9:12     ` Alexey Gladkov
2023-05-15  4:38   ` Leonid Krivoshein
2023-05-15 10:43     ` Alexey Gladkov
2023-05-18  6:39         ` Leonid Krivoshein
2023-05-18  7:05           ` Alexey Gladkov
2023-05-20  9:00   ` Leonid Krivoshein
2023-05-20 13:18     ` Alexey Gladkov
2023-05-20 15:17       ` Vladimir D. Seleznev
2023-05-20 17:23       ` Leonid Krivoshein
2023-05-20 18:51         ` Alexey Gladkov
2023-05-21  8:53         ` [make-initrd] [PATCH] ueventd: Don't use a epoll timeout when it's not needed Alexey Gladkov
2023-05-22  4:46           ` Leonid Krivoshein
2023-05-22  7:54             ` Alexey Gladkov
2023-05-22  9:19               ` Alexey Gladkov
2023-05-22  7:57             ` [make-initrd] [PATCH 1/2] ueventd: Fix memory leak Alexey Gladkov
2023-05-22  7:57             ` [make-initrd] [PATCH 2/2] ueventd: Change interface rd_asprintf_or_die Alexey Gladkov
2023-05-22  9:36               ` [make-initrd] [PATCH v2] " Alexey Gladkov
2023-05-20 16:37     ` [make-initrd] [PATCH 1/3] ueventd: Simplify call of the queue handler Alexey Gladkov
2023-05-20 16:37     ` [make-initrd] [PATCH 2/3] ueventd: Rename fd_list to fd_handler_list Alexey Gladkov
2023-05-20 16:37     ` [make-initrd] [PATCH 3/3] ueventd: Drop obsolete declarations Alexey Gladkov
2023-05-04 13:42 ` [make-initrd] [PATCH 2/3] Replace polld by uevent queue Alexey Gladkov
2023-05-04 13:42 ` [make-initrd] [PATCH 3/3] feature/kickstart: Reset rootdelay timer after kickstart Alexey Gladkov
2023-05-06 19:45 ` [make-initrd] ueventd: Add a prefix to the logging functions to avoid name collisions Alexey Gladkov
2023-05-06 19:45 ` [make-initrd] ueventd: Allow to configure the log destination Alexey Gladkov
2023-05-06 19:45 ` [make-initrd] ueventd: Pass the program name when initializing the logger Alexey Gladkov
2023-05-06 19:45 ` [make-initrd] ueventd: Rewrite logging function to make it more atomic Alexey Gladkov
2023-05-07 12:48 ` [make-initrd] [PATCH 0/3] Reimplement ueventd Alexey Gladkov
2023-05-13 11:50 ` Alexey Gladkov
2023-05-14 20:15   ` Leonid Krivoshein
2023-05-14 20:49     ` Alexey Gladkov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=ZGFIW4APkWzTmS/H@example.org \
    --to=legion@altlinux.ru \
    --cc=make-initrd@lists.altlinux.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

Make-initrd development discussion

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/make-initrd/0 make-initrd/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 make-initrd make-initrd/ http://lore.altlinux.org/make-initrd \
		make-initrd@lists.altlinux.org make-initrd@lists.altlinux.ru make-initrd@lists.altlinux.com
	public-inbox-index make-initrd

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.make-initrd


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git