Re: [PATCH v5 08/11] devm-helpers: Add resource managed version of debugfs directory create function

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sat, 23 Mar 2024 22:10:40 +0100
Christophe JAILLET <christophe.jaillet@xxxxxxxxxx> wrote:

> > -	return devm_add_action_or_reset(dev, gpio_mockup_debugfs_cleanup, chip);
> > +	return devm_add_action_or_reset(dev, devm_debugfs_dir_recursive_drop,
> > +					chip->dbg_dir);  
> 
> This look strange. Shouldn't the debugfs_create_dir() call in 
> gpio_mockup_debugfs_setup() be changed, instead?
> 
> (I've not look in the previous version if something was said about it, 
> so apologies if already discussed)

Yeah, this specific user needs a more complicated refactoring.

I was reluctant to do more complicated refactors in the patch that also
introduces these helpers.

But Guenter asked me to split the patch anyway...

> >   static int pvt_ts_dbgfs_create(struct pvt_device *pvt, struct device *dev)
> >   {
> > -	pvt->dbgfs_dir = debugfs_create_dir(dev_name(dev), NULL);
> > +	pvt->dbgfs_dir = devm_debugfs_create_dir(dev, dev_name(dev), NULL);
> > +	if (IS_ERR(pvt->dbgfs_dir))
> > +		return PTR_ERR(pvt->dbgfs_dir);  
> 
> Not sure if the test and error handling should be added here.
> *If I'm correct*, functions related to debugfs already handle this case 
> and just do nothing. And failure in debugfs related code is not 
> considered as something that need to be reported and abort a probe function.
> 
> Maybe the same other (already existing) tests in this patch should be 
> removed as well, in a separated patch.

Functions related to debugfs maybe do, but devm_ resource management
functions may fail to allocate release structure, and those errors need
to be handled, AFAIK.

Marek



[Index of Archives]     [Linux DRI Users]     [Linux Intel Graphics]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux