Re: [PATCH] rpmsg: Correct support for MODULE_DEVICE_TABLE()

From: Andrew F. Davis
Date: Mon Apr 23 2018 - 11:23:36 EST


On 04/22/2018 01:47 AM, Greg Kroah-Hartman wrote:
> On Sat, Apr 21, 2018 at 06:55:29PM -0500, Andrew F. Davis wrote:
>> Due to missing a missing entry in file2alias.c MODULE_DEVICE_TABLE() are
>> not generating the proper module aliases. Add the needed entry here.
>>
>> Reported-by: Suman Anna <s-anna@xxxxxx>
>> Signed-off-by: Andrew F. Davis <afd@xxxxxx>
>> ---
>> scripts/mod/devicetable-offsets.c | 3 +++
>> scripts/mod/file2alias.c | 11 +++++++++++
>> 2 files changed, 14 insertions(+)
>>
>> diff --git a/scripts/mod/devicetable-offsets.c b/scripts/mod/devicetable-offsets.c
>> index 9fad6afe4c41..6667f7b491d6 100644
>> --- a/scripts/mod/devicetable-offsets.c
>> +++ b/scripts/mod/devicetable-offsets.c
>> @@ -139,6 +139,9 @@ int main(void)
>> DEVID(hv_vmbus_device_id);
>> DEVID_FIELD(hv_vmbus_device_id, guid);
>>
>> + DEVID(rpmsg_device_id);
>> + DEVID_FIELD(rpmsg_device_id, name);
>> +
>> DEVID(i2c_device_id);
>> DEVID_FIELD(i2c_device_id, name);
>>
>
> I don't understand, what caused this to break? Has this ever worked?
>


I'm not sure if this ever worked.


>> diff --git a/scripts/mod/file2alias.c b/scripts/mod/file2alias.c
>> index b9beeaa4695b..52fd54a8fe39 100644
>> --- a/scripts/mod/file2alias.c
>> +++ b/scripts/mod/file2alias.c
>> @@ -944,6 +944,17 @@ static int do_vmbus_entry(const char *filename, void *symval,
>> }
>> ADD_TO_DEVTABLE("vmbus", hv_vmbus_device_id, do_vmbus_entry);
>>
>> +/* Looks like: rpmsg:S */
>> +static int do_rpmsg_entry(const char *filename, void *symval,
>> + char *alias)
>> +{
>> + DEF_FIELD_ADDR(symval, rpmsg_device_id, name);
>> + sprintf(alias, RPMSG_DEVICE_MODALIAS_FMT, *name);
>> +
>> + return 1;
>> +}
>> +ADD_TO_DEVTABLE("rpmsg", rpmsg_device_id, do_rpmsg_entry);
>
> Is this just for this one specific bus type? How far back does this
> patch need to go? How has no one noticed this before?
>


Looks like the first half was added back at the beginning of this bus, so:

Fixes bcabbccabffe ("rpmsg: add virtio-based remote processor messaging
bus")

As for how this was not noticed before, the optimist in me wants to
assume everyone has just been not making these drivers as modules, the
pessimist wants to question how much this use this bus sees right now..

Thanks,
Andrew


> thanks,
>
> greg k-h
>