Re: [Question: Drivers/base/core.c] Why dev->init_name = NULL in device_add function ?

Greg KH <[email protected]> Fri, 1 Aug 2014 12:23:00 -0700
Newsgroups gmane.linux.kernel,gmane.linux.hotplug.devel
Message-ID <[email protected]>
On Fri, Aug 01, 2014 at 10:43:23PM +0530, Aniroop Mathur wrote:
> Dear Mr. Greg Kroah-Hartman and Linux Community,
> Greetings of the day !! :)
> 
> I am Aniroop Mathur working on Linux Kernel for last two years.
> I am stuck at one point and could not find the solution over internet.
> I posted on linuxquestions.org too.
> So I need your help and suggestion for it.
> 
> Can you please help in answering my query as below:
> 
> =====================================================
> In function device_add of /drivers/base/core.c file, it is mentioned:
> /*
> * for statically allocated devices, which should all be converted
> * some day, we need to initialize the name. We prevent reading back
> * the name, and force the use of dev_name()
> */
> if (dev->init_name) {
> dev_set_name(dev, "%s", dev->init_name);
> dev->init_name = NULL;
> }
> 
> 
> Except forcing the use of dev_name to read device name,
> Is there any other reason to make init_name as NULL ?

Why would you want init_name to not be NULL?

> And if it is not made NULL, is there any problem or side-effect ?

Yes, people would start to use it thinking it was the real name of the
device, when it might not be.

greg k-h