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 for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Fri, 14 Apr 2023 12:35:00 +0530
From:   Mukesh Ojha <quic_mojha@...cinc.com>
To:     Srinivas Kandagatla <srinivas.kandagatla@...aro.org>,
        <agross@...nel.org>, <andersson@...nel.org>,
        <konrad.dybcio@...aro.org>, <corbet@....net>,
        <keescook@...omium.org>, <tony.luck@...el.com>,
        <gpiccoli@...lia.com>, <catalin.marinas@....com>, <will@...nel.org>
CC:     <linux-arm-msm@...r.kernel.org>,
        <linux-remoteproc@...r.kernel.org>, <linux-kernel@...r.kernel.org>,
        <linux-hardening@...r.kernel.org>,
        <linux-arm-kernel@...ts.infradead.org>, <linux-doc@...r.kernel.org>
Subject: Re: [PATCH v2 2/6] remoteproc: qcom: Move minidump specific data to
 qcom_minidump.h

Thanks again for coming back on this.

On 4/14/2023 4:02 AM, Srinivas Kandagatla wrote:
> 
> 
> On 22/03/2023 13:30, Mukesh Ojha wrote:
>> Move minidump specific data types and macros to a separate internal
>> header(qcom_minidump.h) so that it can be shared among different
> 
> minidump.h should be good as we are already in include/soc/qcom/


Initially, i wanted to protect the content of qcom_minidump.h between 
qcom_minidump.c and qcom_common.c

Ideally, here qcom_minidump.h should be supplier/provider header and can 
be shared among above qcom_minidump.c and qcom_common.c but since they 
are not in same directory, moved it inside include/soc/qcom/ as separate 
header than consumer header minidump.h .

-Mukesh
> 
> --srini
> 
>> Qualcomm drivers.
>>
>> There is no change in functional behavior after this.
>>
>> Signed-off-by: Mukesh Ojha <quic_mojha@...cinc.com>
>> ---
>>   drivers/remoteproc/qcom_common.c | 56 
>> +---------------------------------
>>   include/soc/qcom/qcom_minidump.h | 66 
>> ++++++++++++++++++++++++++++++++++++++++
>>   2 files changed, 67 insertions(+), 55 deletions(-)
>>   create mode 100644 include/soc/qcom/qcom_minidump.h
>>
>> diff --git a/drivers/remoteproc/qcom_common.c 
>> b/drivers/remoteproc/qcom_common.c
>> index 805e525..88fc984 100644
>> --- a/drivers/remoteproc/qcom_common.c
>> +++ b/drivers/remoteproc/qcom_common.c
>> @@ -18,6 +18,7 @@
>>   #include <linux/slab.h>
>>   #include <linux/soc/qcom/mdt_loader.h>
>>   #include <linux/soc/qcom/smem.h>
>> +#include <soc/qcom/qcom_minidump.h>
>>   #include "remoteproc_internal.h"
>>   #include "qcom_common.h"
>> @@ -26,61 +27,6 @@
>>   #define to_smd_subdev(d) container_of(d, struct qcom_rproc_subdev, 
>> subdev)
>>   #define to_ssr_subdev(d) container_of(d, struct qcom_rproc_ssr, subdev)
>> -#define MAX_NUM_OF_SS           10
>> -#define MAX_REGION_NAME_LENGTH  16
>> -#define SBL_MINIDUMP_SMEM_ID    602
>> -#define MINIDUMP_REGION_VALID        ('V' << 24 | 'A' << 16 | 'L' << 
>> 8 | 'I' << 0)
>> -#define MINIDUMP_SS_ENCR_DONE        ('D' << 24 | 'O' << 16 | 'N' << 
>> 8 | 'E' << 0)
>> -#define MINIDUMP_SS_ENABLED        ('E' << 24 | 'N' << 16 | 'B' << 8 
>> | 'L' << 0)
>> -
>> -/**
>> - * struct minidump_region - Minidump region
>> - * @name        : Name of the region to be dumped
>> - * @seq_num:        : Use to differentiate regions with same name.
>> - * @valid        : This entry to be dumped (if set to 1)
>> - * @address        : Physical address of region to be dumped
>> - * @size        : Size of the region
>> - */
>> -struct minidump_region {
>> -    char    name[MAX_REGION_NAME_LENGTH];
>> -    __le32    seq_num;
>> -    __le32    valid;
>> -    __le64    address;
>> -    __le64    size;
>> -};
>> -
>> -/**
>> - * struct minidump_subsystem - Subsystem's SMEM Table of content
>> - * @status : Subsystem toc init status
>> - * @enabled : if set to 1, this region would be copied during coredump
>> - * @encryption_status: Encryption status for this subsystem
>> - * @encryption_required : Decides to encrypt the subsystem regions or 
>> not
>> - * @region_count : Number of regions added in this subsystem toc
>> - * @regions_baseptr : regions base pointer of the subsystem
>> - */
>> -struct minidump_subsystem {
>> -    __le32    status;
>> -    __le32    enabled;
>> -    __le32    encryption_status;
>> -    __le32    encryption_required;
>> -    __le32    region_count;
>> -    __le64    regions_baseptr;
>> -};
>> -
>> -/**
>> - * struct minidump_global_toc - Global Table of Content
>> - * @status : Global Minidump init status
>> - * @md_revision : Minidump revision
>> - * @enabled : Minidump enable status
>> - * @subsystems : Array of subsystems toc
>> - */
>> -struct minidump_global_toc {
>> -    __le32                status;
>> -    __le32                md_revision;
>> -    __le32                enabled;
>> -    struct minidump_subsystem    subsystems[MAX_NUM_OF_SS];
>> -};
>> -
>>   struct qcom_ssr_subsystem {
>>       const char *name;
>>       struct srcu_notifier_head notifier_list;
>> diff --git a/include/soc/qcom/qcom_minidump.h 
>> b/include/soc/qcom/qcom_minidump.h
>> new file mode 100644
>> index 0000000..84c8605
>> --- /dev/null
>> +++ b/include/soc/qcom/qcom_minidump.h
>> @@ -0,0 +1,66 @@
>> +/* SPDX-License-Identifier: GPL-2.0-only */
>> +/*
>> + * Qualcomm minidump shared data structures and macros
>> + *
>> + * Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights 
>> reserved.
>> + */
>> +
>> +#ifndef _QCOM_MINIDUMP_H_
>> +#define _QCOM_MINIDUMP_H_
>> +
>> +#define MAX_NUM_OF_SS           10
>> +#define MAX_REGION_NAME_LENGTH  16
>> +#define SBL_MINIDUMP_SMEM_ID    602
>> +#define MINIDUMP_REGION_VALID        ('V' << 24 | 'A' << 16 | 'L' << 
>> 8 | 'I' << 0)
>> +#define MINIDUMP_SS_ENCR_DONE        ('D' << 24 | 'O' << 16 | 'N' << 
>> 8 | 'E' << 0)
>> +#define MINIDUMP_SS_ENABLED        ('E' << 24 | 'N' << 16 | 'B' << 8 
>> | 'L' << 0)
>> +
>> +/**
>> + * struct minidump_region - Minidump region
>> + * @name        : Name of the region to be dumped
>> + * @seq_num:        : Use to differentiate regions with same name.
>> + * @valid        : This entry to be dumped (if set to 1)
>> + * @address        : Physical address of region to be dumped
>> + * @size        : Size of the region
>> + */
>> +struct minidump_region {
>> +    char    name[MAX_REGION_NAME_LENGTH];
>> +    __le32    seq_num;
>> +    __le32    valid;
>> +    __le64    address;
>> +    __le64    size;
>> +};
>> +
>> +/**
>> + * struct minidump_subsystem - Subsystem's SMEM Table of content
>> + * @status : Subsystem toc init status
>> + * @enabled : if set to 1, this region would be copied during coredump
>> + * @encryption_status: Encryption status for this subsystem
>> + * @encryption_required : Decides to encrypt the subsystem regions or 
>> not
>> + * @region_count : Number of regions added in this subsystem toc
>> + * @regions_baseptr : regions base pointer of the subsystem
>> + */
>> +struct minidump_subsystem {
>> +    __le32    status;
>> +    __le32    enabled;
>> +    __le32    encryption_status;
>> +    __le32    encryption_required;
>> +    __le32    region_count;
>> +    __le64    regions_baseptr;
>> +};
>> +
>> +/**
>> + * struct minidump_global_toc - Global Table of Content
>> + * @status : Global Minidump init status
>> + * @md_revision : Minidump revision
>> + * @enabled : Minidump enable status
>> + * @subsystems : Array of subsystems toc
>> + */
>> +struct minidump_global_toc {
>> +    __le32                status;
>> +    __le32                md_revision;
>> +    __le32                enabled;
>> +    struct minidump_subsystem    subsystems[MAX_NUM_OF_SS];
>> +};
>> +
>> +#endif  /* _QCOM_MINIDUMP_H_ */

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ