diff mbox series

firmware_loader: export sysctl registration

Message ID 20211130164525.1478009-1-mcgrof@kernel.org
State New
Headers show
Series firmware_loader: export sysctl registration | expand

Commit Message

Luis Chamberlain Nov. 30, 2021, 4:45 p.m. UTC
The firmware loader fallback sysctl table is always built-in,
but when FW_LOADER=m the build will fail. We need to export
the sysctl registration and de-registration. Use the private
symbol namespace so that only the firmware loader uses these
calls.

Reported-by: Randy Dunlap <rdunlap@infradead.org>
Fixes: firmware_loader: move firmware sysctl to its own files
Signed-off-by: Luis Chamberlain <mcgrof@kernel.org>
---
 drivers/base/firmware_loader/fallback_table.c | 2 ++
 1 file changed, 2 insertions(+)

Comments

Randy Dunlap Nov. 30, 2021, 10:59 p.m. UTC | #1
On 11/30/21 08:45, Luis Chamberlain wrote:
> The firmware loader fallback sysctl table is always built-in,
> but when FW_LOADER=m the build will fail. We need to export
> the sysctl registration and de-registration. Use the private
> symbol namespace so that only the firmware loader uses these
> calls.
> 
> Reported-by: Randy Dunlap <rdunlap@infradead.org>
> Fixes: firmware_loader: move firmware sysctl to its own files
> Signed-off-by: Luis Chamberlain <mcgrof@kernel.org>

Acked-by: Randy Dunlap <rdunlap@infradead.org> # build-tested

Thanks.

> ---
>  drivers/base/firmware_loader/fallback_table.c | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/drivers/base/firmware_loader/fallback_table.c b/drivers/base/firmware_loader/fallback_table.c
> index 51751c46cdcf..255823887c70 100644
> --- a/drivers/base/firmware_loader/fallback_table.c
> +++ b/drivers/base/firmware_loader/fallback_table.c
> @@ -56,10 +56,12 @@ int register_firmware_config_sysctl(void)
>  		return -ENOMEM;
>  	return 0;
>  }
> +EXPORT_SYMBOL_NS_GPL(register_firmware_config_sysctl, FIRMWARE_LOADER_PRIVATE);
>  
>  void unregister_firmware_config_sysctl(void)
>  {
>  	unregister_sysctl_table(firmware_config_sysct_table_header);
>  	firmware_config_sysct_table_header = NULL;
>  }
> +EXPORT_SYMBOL_NS_GPL(unregister_firmware_config_sysctl, FIRMWARE_LOADER_PRIVATE);
>  #endif /* CONFIG_SYSCTL */
>
Greg Kroah-Hartman Dec. 1, 2021, 7:08 a.m. UTC | #2
On Tue, Nov 30, 2021 at 08:45:25AM -0800, Luis Chamberlain wrote:
> The firmware loader fallback sysctl table is always built-in,
> but when FW_LOADER=m the build will fail. We need to export
> the sysctl registration and de-registration. Use the private
> symbol namespace so that only the firmware loader uses these
> calls.
> 
> Reported-by: Randy Dunlap <rdunlap@infradead.org>
> Fixes: firmware_loader: move firmware sysctl to its own files

Have a git id for this?

thanks,

greg k-h
Luis Chamberlain Dec. 1, 2021, 1:48 p.m. UTC | #3
On Wed, Dec 01, 2021 at 08:08:00AM +0100, Greg KH wrote:
> On Tue, Nov 30, 2021 at 08:45:25AM -0800, Luis Chamberlain wrote:
> > The firmware loader fallback sysctl table is always built-in,
> > but when FW_LOADER=m the build will fail. We need to export
> > the sysctl registration and de-registration. Use the private
> > symbol namespace so that only the firmware loader uses these
> > calls.
> > 
> > Reported-by: Randy Dunlap <rdunlap@infradead.org>
> > Fixes: firmware_loader: move firmware sysctl to its own files
> 
> Have a git id for this?

I thought it would be ephemeral at this point since it was on
linux-next, so had not provided one. If it is a static commit
then I suppose this is 5cc0fea09ee52c9bcb6c41456bea03ca1b49602d

  Luis
Greg Kroah-Hartman Dec. 1, 2021, 2:20 p.m. UTC | #4
On Wed, Dec 01, 2021 at 05:48:18AM -0800, Luis Chamberlain wrote:
> On Wed, Dec 01, 2021 at 08:08:00AM +0100, Greg KH wrote:
> > On Tue, Nov 30, 2021 at 08:45:25AM -0800, Luis Chamberlain wrote:
> > > The firmware loader fallback sysctl table is always built-in,
> > > but when FW_LOADER=m the build will fail. We need to export
> > > the sysctl registration and de-registration. Use the private
> > > symbol namespace so that only the firmware loader uses these
> > > calls.
> > > 
> > > Reported-by: Randy Dunlap <rdunlap@infradead.org>
> > > Fixes: firmware_loader: move firmware sysctl to its own files
> > 
> > Have a git id for this?
> 
> I thought it would be ephemeral at this point since it was on
> linux-next, so had not provided one. If it is a static commit
> then I suppose this is 5cc0fea09ee52c9bcb6c41456bea03ca1b49602d

Depends on where it came from.  If -mm then yes, it's not a valid id.
If someone else, it might be a real id.

thanks,

greg k-h
Luis Chamberlain Dec. 1, 2021, 2:25 p.m. UTC | #5
On Wed, Dec 01, 2021 at 03:20:28PM +0100, Greg KH wrote:
> On Wed, Dec 01, 2021 at 05:48:18AM -0800, Luis Chamberlain wrote:
> > On Wed, Dec 01, 2021 at 08:08:00AM +0100, Greg KH wrote:
> > > On Tue, Nov 30, 2021 at 08:45:25AM -0800, Luis Chamberlain wrote:
> > > > The firmware loader fallback sysctl table is always built-in,
> > > > but when FW_LOADER=m the build will fail. We need to export
> > > > the sysctl registration and de-registration. Use the private
> > > > symbol namespace so that only the firmware loader uses these
> > > > calls.
> > > > 
> > > > Reported-by: Randy Dunlap <rdunlap@infradead.org>
> > > > Fixes: firmware_loader: move firmware sysctl to its own files
> > > 
> > > Have a git id for this?
> > 
> > I thought it would be ephemeral at this point since it was on
> > linux-next, so had not provided one. If it is a static commit
> > then I suppose this is 5cc0fea09ee52c9bcb6c41456bea03ca1b49602d
> 
> Depends on where it came from.  If -mm then yes, it's not a valid id.
> If someone else, it might be a real id.

It came in through -mm.

  Luis
diff mbox series

Patch

diff --git a/drivers/base/firmware_loader/fallback_table.c b/drivers/base/firmware_loader/fallback_table.c
index 51751c46cdcf..255823887c70 100644
--- a/drivers/base/firmware_loader/fallback_table.c
+++ b/drivers/base/firmware_loader/fallback_table.c
@@ -56,10 +56,12 @@  int register_firmware_config_sysctl(void)
 		return -ENOMEM;
 	return 0;
 }
+EXPORT_SYMBOL_NS_GPL(register_firmware_config_sysctl, FIRMWARE_LOADER_PRIVATE);
 
 void unregister_firmware_config_sysctl(void)
 {
 	unregister_sysctl_table(firmware_config_sysct_table_header);
 	firmware_config_sysct_table_header = NULL;
 }
+EXPORT_SYMBOL_NS_GPL(unregister_firmware_config_sysctl, FIRMWARE_LOADER_PRIVATE);
 #endif /* CONFIG_SYSCTL */