Ack: [PATCH Trusty SRU] Bluetooth: allocate static minor for vhci
Chris J Arges
chris.j.arges at canonical.com
Fri May 9 03:16:28 UTC 2014
This seems to be fairly straightforward.
Signed-off-by: Chris J Arges <chris.j.arges at canonical.com>
On 05/08/2014 06:04 PM, Tim Gardner wrote:
> From: Lucas De Marchi <lucas.demarchi at intel.com>
>
> BugLink: http://bugs.launchpad.net/bugs/1317336
>
> Commit bfacbb9 (Bluetooth: Use devname:vhci module alias for virtual HCI
> driver) added the module alias to hci_vhci module so it's possible to
> create the /dev/vhci node. However creating an alias without
> specifying the minor doesn't allow us to create the node ahead,
> triggerring module auto-load when it's first accessed.
>
> Starting with depmod from kmod 16 we started to warn if there's a
> devname alias without specifying the major and minor.
>
> Let's do the same done for uhid, kvm, fuse and others, specifying a
> fixed minor. In systems with systemd as the init the following will
> happen: on early boot systemd will call "kmod static-nodes" to read
> /lib/modules/$(uname -r)/modules.devname and then create the nodes. When
> first accessed these "dead" nodes will trigger the module loading.
>
> Signed-off-by: Lucas De Marchi <lucas.demarchi at intel.com>
> Acked-by: Greg Kroah-Hartman <gregkh at linuxfoundation.org>
> Signed-off-by: Marcel Holtmann <marcel at holtmann.org>
> (cherry picked from commit b075dd40c95d11c2c8690f6c4d6232fc0d9e7f56)
> Signed-off-by: Tim Gardner <tim.gardner at canonical.com>
> ---
> Documentation/devices.txt | 1 +
> drivers/bluetooth/hci_vhci.c | 3 ++-
> include/linux/miscdevice.h | 1 +
> 3 files changed, 4 insertions(+), 1 deletion(-)
>
> diff --git a/Documentation/devices.txt b/Documentation/devices.txt
> index 80b7241..fce9398 100644
> --- a/Documentation/devices.txt
> +++ b/Documentation/devices.txt
> @@ -353,6 +353,7 @@ Your cooperation is appreciated.
> 133 = /dev/exttrp External device trap
> 134 = /dev/apm_bios Advanced Power Management BIOS
> 135 = /dev/rtc Real Time Clock
> + 137 = /dev/vhci Bluetooth virtual HCI driver
> 139 = /dev/openprom SPARC OpenBoot PROM
> 140 = /dev/relay8 Berkshire Products Octal relay card
> 141 = /dev/relay16 Berkshire Products ISO-16 relay card
> diff --git a/drivers/bluetooth/hci_vhci.c b/drivers/bluetooth/hci_vhci.c
> index 7b16738..59095e6 100644
> --- a/drivers/bluetooth/hci_vhci.c
> +++ b/drivers/bluetooth/hci_vhci.c
> @@ -352,7 +352,7 @@ static const struct file_operations vhci_fops = {
> static struct miscdevice vhci_miscdev= {
> .name = "vhci",
> .fops = &vhci_fops,
> - .minor = MISC_DYNAMIC_MINOR,
> + .minor = VHCI_MINOR,
> };
>
> static int __init vhci_init(void)
> @@ -378,3 +378,4 @@ MODULE_DESCRIPTION("Bluetooth virtual HCI driver ver " VERSION);
> MODULE_VERSION(VERSION);
> MODULE_LICENSE("GPL");
> MODULE_ALIAS("devname:vhci");
> +MODULE_ALIAS_MISCDEV(VHCI_MINOR);
> diff --git a/include/linux/miscdevice.h b/include/linux/miscdevice.h
> index f7eaf2d..e5db611 100644
> --- a/include/linux/miscdevice.h
> +++ b/include/linux/miscdevice.h
> @@ -23,6 +23,7 @@
> #define TEMP_MINOR 131 /* Temperature Sensor */
> #define RTC_MINOR 135
> #define EFI_RTC_MINOR 136 /* EFI Time services */
> +#define VHCI_MINOR 137
> #define SUN_OPENPROM_MINOR 139
> #define DMAPI_MINOR 140 /* DMAPI */
> #define NVRAM_MINOR 144
>
More information about the kernel-team
mailing list