Re: [Git Patch] ACPI: Fix a warning of discarding qualifiers from pointer target type

Alexey Starikovskiy
2007-08-21T15:23:20Z

Al Viro wrote:
> On Tue, Aug 21, 2007 at 07:14:49PM +0400, Alexey Starikovskiy wrote:
>
>> WANG Cong wrote:
>>
>>> Fix this warning:
>>>
>>> drivers/acpi/ec.c: In function `acpi_ec_ecdt_probe':
>>> drivers/acpi/ec.c:873: warning: passing arg 1 of `acpi_get_devices' discards qualifiers from pointer target type
>>>
>>> (I don't know whether this fix hits the real problem.)
>>>
>>>
>> It is safe to give acpi_get_devices() const string, as it should not
>> modify it in any condition.
>>
>
>
Yes, that is the proper solution with a single drawback:
it touches ACPICA dual-licensed code and would take ages to commit,
and Len would probably ask you to give permission to re-license it under
BSD.

Regards,
Alex.
> Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
> ---
> diff --git a/drivers/acpi/namespace/nsxfeval.c b/drivers/acpi/namespace/nsxfeval.c
> index ab65b2c..f39fbc6 100644
> --- a/drivers/acpi/namespace/nsxfeval.c
> +++ b/drivers/acpi/namespace/nsxfeval.c
> @@ -540,7 +540,7 @@ acpi_ns_get_device_callback(acpi_handle obj_handle,
> ******************************************************************************/
>
> acpi_status
> -acpi_get_devices(char *HID,
> +acpi_get_devices(const char *HID,
> acpi_walk_callback user_function,
> void *context, void **return_value)
> {
> diff --git a/include/acpi/acpixf.h b/include/acpi/acpixf.h
> index b5cca5d..3d7ab9e 100644
> --- a/include/acpi/acpixf.h
> +++ b/include/acpi/acpixf.h
> @@ -130,7 +130,7 @@ acpi_walk_namespace(acpi_object_type type,
> void *context, void **return_value);
>
> acpi_status
> -acpi_get_devices(char *HID,
> +acpi_get_devices(const char *HID,
> acpi_walk_callback user_function,
> void *context, void **return_value);
>
> diff --git a/include/acpi/acstruct.h b/include/acpi/acstruct.h
> index aeb4498..8848265 100644
> --- a/include/acpi/acstruct.h
> +++ b/include/acpi/acstruct.h
> @@ -146,7 +146,7 @@ struct acpi_init_walk_info {
> struct acpi_get_devices_info {
> acpi_walk_callback user_function;
> void *context;
> - char *hid;
> + const char *hid;
> };
>
> union acpi_aml_operands {
>