Re: [RFC PATCH 2/9] ntsync: Reserve a minor device number and ioctl range.

From: Greg Kroah-Hartman
Date: Wed Jan 24 2024 - 07:32:19 EST


On Tue, Jan 23, 2024 at 09:43:09PM -0600, Elizabeth Figura wrote:
> > Why do you need a fixed minor number? Can't your userspace handle
> > dynamic numbers? What systems require a static value?
>
> I believe I added this because it's necessary for MODULE_ALIAS (and, more
> broadly, because I was following the example of vaguely comparable devices
> like /dev/loop-control). I suppose I could instead just remove MODULE_ALIAS
> (or even remove the ability to compile ntsync as a module entirely).

Do you really need MODULE_ALIAS()? Having it for char devices to be
auto-loaded is not generally considered a good idea anymore as systems
should have the module loaded before userspace goes and asks for it.

It also reduces suprises when any random userspace program can cause
kernel modules to be loaded for no real reason.

> It's a bit difficult to figure out what's the preferred way to organize things
> like this (there not being a lot of precedent for this kind of driver) so I'd
> appreciate any direction.

For now, I'd just stick to a dynamic id, no module alias, and if it's
ever needed in the future, it can be added. But if you add it now, we
can't ever remove it as it's user-visible functionality.

thanks,

greg k-h