Re: [PATCH v3 08/15] MIPS: IP27: remove KV_MAGIC

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Just asking:
This code in SGI seems to help bring online other CPUs.
- Does it use the firmware to do it?
- Is there a possibility that the magic number in this case is used by
the firmware?
- If yes: do we break multiprocessing on SGI if we delete this
"useless relic", which is not referenced in the linux code elsewhere?

Best regards:
Barnabás Virágh


On Fri, Nov 11, 2022 at 2:15 AM Ahelenia Ziemiańska
<nabijaczleweli@xxxxxxxxxxxxxxxxxx> wrote:
>
> It appeared in the original import of SGI code in 2.4.0-test3pre8 and
> has never been used anywhere.
>
> Reviewed-by: Bagas Sanjaya <bagasdotme@xxxxxxxxx>
> Signed-off-by: Ahelenia Ziemiańska <nabijaczleweli@xxxxxxxxxxxxxxxxxx>
> ---
>  Documentation/process/magic-number.rst                    | 1 -
>  Documentation/translations/it_IT/process/magic-number.rst | 1 -
>  Documentation/translations/zh_CN/process/magic-number.rst | 1 -
>  Documentation/translations/zh_TW/process/magic-number.rst | 1 -
>  arch/mips/include/asm/sn/klkernvars.h                     | 8 ++------
>  arch/mips/sgi-ip27/ip27-klnuma.c                          | 1 -
>  6 files changed, 2 insertions(+), 11 deletions(-)
>
> diff --git a/Documentation/process/magic-number.rst b/Documentation/process/magic-number.rst
> index 7dada7abc733..d8ffbc21872e 100644
> --- a/Documentation/process/magic-number.rst
> +++ b/Documentation/process/magic-number.rst
> @@ -72,7 +72,6 @@ APM_BIOS_MAGIC        0x4101           apm_user                 ``arch/x86/kerne
>  FASYNC_MAGIC          0x4601           fasync_struct            ``include/linux/fs.h``
>  SLIP_MAGIC            0x5302           slip                     ``drivers/net/slip.h``
>  HDLCDRV_MAGIC         0x5ac6e778       hdlcdrv_state            ``include/linux/hdlcdrv.h``
> -KV_MAGIC              0x5f4b565f       kernel_vars_s            ``arch/mips/include/asm/sn/klkernvars.h``
>  CCB_MAGIC             0xf2691ad2       ccb                      ``drivers/scsi/ncr53c8xx.c``
>  QUEUE_MAGIC_FREE      0xf7e1c9a3       queue_entry              ``drivers/scsi/arm/queue.c``
>  QUEUE_MAGIC_USED      0xf7e1cc33       queue_entry              ``drivers/scsi/arm/queue.c``
> diff --git a/Documentation/translations/it_IT/process/magic-number.rst b/Documentation/translations/it_IT/process/magic-number.rst
> index f9634a04d349..0e59704aa617 100644
> --- a/Documentation/translations/it_IT/process/magic-number.rst
> +++ b/Documentation/translations/it_IT/process/magic-number.rst
> @@ -78,7 +78,6 @@ APM_BIOS_MAGIC        0x4101           apm_user                 ``arch/x86/kerne
>  FASYNC_MAGIC          0x4601           fasync_struct            ``include/linux/fs.h``
>  SLIP_MAGIC            0x5302           slip                     ``drivers/net/slip.h``
>  HDLCDRV_MAGIC         0x5ac6e778       hdlcdrv_state            ``include/linux/hdlcdrv.h``
> -KV_MAGIC              0x5f4b565f       kernel_vars_s            ``arch/mips/include/asm/sn/klkernvars.h``
>  CCB_MAGIC             0xf2691ad2       ccb                      ``drivers/scsi/ncr53c8xx.c``
>  QUEUE_MAGIC_FREE      0xf7e1c9a3       queue_entry              ``drivers/scsi/arm/queue.c``
>  QUEUE_MAGIC_USED      0xf7e1cc33       queue_entry              ``drivers/scsi/arm/queue.c``
> diff --git a/Documentation/translations/zh_CN/process/magic-number.rst b/Documentation/translations/zh_CN/process/magic-number.rst
> index 966b9e6b1a46..17a73661ef17 100644
> --- a/Documentation/translations/zh_CN/process/magic-number.rst
> +++ b/Documentation/translations/zh_CN/process/magic-number.rst
> @@ -61,7 +61,6 @@ APM_BIOS_MAGIC        0x4101           apm_user                 ``arch/x86/kerne
>  FASYNC_MAGIC          0x4601           fasync_struct            ``include/linux/fs.h``
>  SLIP_MAGIC            0x5302           slip                     ``drivers/net/slip.h``
>  HDLCDRV_MAGIC         0x5ac6e778       hdlcdrv_state            ``include/linux/hdlcdrv.h``
> -KV_MAGIC              0x5f4b565f       kernel_vars_s            ``arch/mips/include/asm/sn/klkernvars.h``
>  CCB_MAGIC             0xf2691ad2       ccb                      ``drivers/scsi/ncr53c8xx.c``
>  QUEUE_MAGIC_FREE      0xf7e1c9a3       queue_entry              ``drivers/scsi/arm/queue.c``
>  QUEUE_MAGIC_USED      0xf7e1cc33       queue_entry              ``drivers/scsi/arm/queue.c``
> diff --git a/Documentation/translations/zh_TW/process/magic-number.rst b/Documentation/translations/zh_TW/process/magic-number.rst
> index f3e87a6b3a01..9d44d49b93bf 100644
> --- a/Documentation/translations/zh_TW/process/magic-number.rst
> +++ b/Documentation/translations/zh_TW/process/magic-number.rst
> @@ -64,7 +64,6 @@ APM_BIOS_MAGIC        0x4101           apm_user                 ``arch/x86/kerne
>  FASYNC_MAGIC          0x4601           fasync_struct            ``include/linux/fs.h``
>  SLIP_MAGIC            0x5302           slip                     ``drivers/net/slip.h``
>  HDLCDRV_MAGIC         0x5ac6e778       hdlcdrv_state            ``include/linux/hdlcdrv.h``
> -KV_MAGIC              0x5f4b565f       kernel_vars_s            ``arch/mips/include/asm/sn/klkernvars.h``
>  CCB_MAGIC             0xf2691ad2       ccb                      ``drivers/scsi/ncr53c8xx.c``
>  QUEUE_MAGIC_FREE      0xf7e1c9a3       queue_entry              ``drivers/scsi/arm/queue.c``
>  QUEUE_MAGIC_USED      0xf7e1cc33       queue_entry              ``drivers/scsi/arm/queue.c``
> diff --git a/arch/mips/include/asm/sn/klkernvars.h b/arch/mips/include/asm/sn/klkernvars.h
> index ea6b21795163..93d5eb873255 100644
> --- a/arch/mips/include/asm/sn/klkernvars.h
> +++ b/arch/mips/include/asm/sn/klkernvars.h
> @@ -6,18 +6,14 @@
>  #ifndef __ASM_SN_KLKERNVARS_H
>  #define __ASM_SN_KLKERNVARS_H
>
> -#define KV_MAGIC_OFFSET                0x0
> -#define KV_RO_NASID_OFFSET     0x4
> -#define KV_RW_NASID_OFFSET     0x6
> -
> -#define KV_MAGIC               0x5f4b565f
> +#define KV_RO_NASID_OFFSET     0x0
> +#define KV_RW_NASID_OFFSET     0x2
>
>  #ifndef __ASSEMBLY__
>
>  #include <asm/sn/types.h>
>
>  typedef struct kern_vars_s {
> -       int             kv_magic;
>         nasid_t         kv_ro_nasid;
>         nasid_t         kv_rw_nasid;
>         unsigned long   kv_ro_baseaddr;
> diff --git a/arch/mips/sgi-ip27/ip27-klnuma.c b/arch/mips/sgi-ip27/ip27-klnuma.c
> index abd7a84df7dd..82bb7ac20ef8 100644
> --- a/arch/mips/sgi-ip27/ip27-klnuma.c
> +++ b/arch/mips/sgi-ip27/ip27-klnuma.c
> @@ -61,7 +61,6 @@ static __init void set_ktext_source(nasid_t client_nasid, nasid_t server_nasid)
>
>         KERN_VARS_ADDR(client_nasid) = (unsigned long)kvp;
>
> -       kvp->kv_magic = KV_MAGIC;
>         kvp->kv_ro_nasid = server_nasid;
>         kvp->kv_rw_nasid = master_nasid;
>         kvp->kv_ro_baseaddr = NODE_CAC_BASE(server_nasid);
> --
> 2.30.2




[Index of Archives]     [LKML Archive]     [Linux ARM Kernel]     [Linux ARM]     [Git]     [Yosemite News]     [Linux SCSI]     [Linux Hams]

  Powered by Linux