[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-id: <5714A852.2040705@samsung.com>
Date: Mon, 18 Apr 2016 11:26:42 +0200
From: Andrzej Pietrasiewicz <andrzej.p@...sung.com>
To: Michal Nazarewicz <mina86@...a86.com>,
Alan Stern <stern@...land.harvard.edu>
Cc: Ivaylo Dimitrov <ivo.g.dimitrov.75@...il.com>,
Tony Lindgren <tony@...mide.com>, linux-kernel@...r.kernel.org,
linux-usb@...r.kernel.org,
Felipe Balbi <felipe.balbi@...ux.intel.com>,
Bin Liu <b-liu@...com>, pali.rohar@...il.com
Subject: Re: [PATCH] usb: f_mass_storage: test whether thread is running before
starting another
Hi Michał,
W dniu 07.04.2016 o 18:40, Michal Nazarewicz pisze:
>> On Thu, 7 Apr 2016, Michal Nazarewicz wrote:
>>> This makes me suspect it’s not possible to link a function instance to
>>> the same configuration twice, but now that I think about it, I’m not
>>> quite sure what would happen if one did:
>>>
>>> ln -s functions/mass_storage.0 configs/c.1/foo
>>> ln -s functions/mass_storage.0 configs/c.1/bar
>
> On Thu, Apr 07 2016, Alan Stern wrote:
>> Do you think it would be worthwhile to check for this possibility in
>> the driver and report an error?
>
> I think this should be (if it isn’t already) blocked on configfs side.
> I cannot see a legitimate use of such configuration and I wouldn’t be
> surprised if other function drivers broke as well.
>
Sorry about late response.
The function responsible for verifying if a symlink can be made is
in drivers/usb/gadget/configfs.c: config_usb_cfg_link()
There is a comment from the author:
/*
* Make sure this function is from within our _this_ gadget and not
* from another gadget or a random directory.
* Also a function instance can only be linked once.
*/
This is the code fragment of interest:
list_for_each_entry(f, &cfg->func_list, list) {
if (f->fi == fi) {
ret = -EEXIST;
goto out;
}
}
AP
Powered by blists - more mailing lists