lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Fri, 4 Mar 2016 00:20:14 -0500
From:	Sinan Kaya <okaya@...eaurora.org>
To:	Eric Auger <eric.auger@...aro.org>, dmaengine@...r.kernel.org,
	marc.zyngier@....com, mark.rutland@....com, timur@...eaurora.org,
	devicetree@...r.kernel.org, cov@...eaurora.org,
	vinod.koul@...el.com, jcm@...hat.com
Cc:	shankerd@...eaurora.org, vikrams@...eaurora.org,
	agross@...eaurora.org, arnd@...db.de,
	linux-arm-msm@...r.kernel.org,
	linux-arm-kernel@...ts.infradead.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH V14 8/9] vfio, platform: add support for ACPI while
 detecting the reset driver

On 3/3/2016 6:14 PM, Eric Auger wrote:
> Hi Sinan,
> On 03/02/2016 07:34 PM, Sinan Kaya wrote:
>> On 2/26/2016 12:15 PM, Eric Auger wrote:
>>>> -module_init(reset ## _module_init);				\
>>>>> +#define module_vfio_reset_handler(compat, acpihid, reset)		\
>>>>> +MODULE_ALIAS("vfio-reset:" compat);					\
>>> Here you need to handle alias for hid case I think
>>
>> I'm wondering what happens when Compat or ACPI string is NULL.
>>
>> MODULE_ALIAS("vfio-reset:" NULL)
>>
>> Would the kernel like it? 
> 
>>
>> I'd rather create an alias only when the string is not NULL. Given
>> this is a macro, I believe it won't work. 
> 
> Indeed I think we should create an alias only for the supported case or
> 2 aliases if both are supported.
>>
>> Can you think of any other way in the code to create the alias?
>>
> To be honest I did not find any elegant solution either. Personally I
> would move the MODULE_ALIAS for compat/acpihid outside of
> module_vfio_reset_handler macro, directly in the reset module. But maybe
> someone will propose a better solution?
> 

I briefly looked at this. 

#define MODULE_ALIAS(_alias) MODULE_INFO(alias, _alias)
#define MODULE_INFO(tag, info) __MODULE_INFO(tag, tag, info)

and it eventually becomes this

#define __MODULE_INFO(tag, name, info)                                    \
static const char __UNIQUE_ID(name)[]                                     \
   __used __attribute__((section(".modinfo"), unused, aligned(1)))         \
   = __stringify(tag) "=" info

Since the info is on the right side of the equation, I'm allowed to add some 
conditionals.

#define module_vfio_reset_handler(compat, acpihid, reset)		\
MODULE_ALIAS("vfio-reset:" acpihid? acpihid: compat);			\

This way, we'll create an alias with one of the provided strings.  



-- 
Sinan Kaya
Qualcomm Technologies, Inc. on behalf of Qualcomm Innovation Center, Inc.
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, a Linux Foundation Collaborative Project

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ