1. 18 Jun, 2021 4 commits
    • Heiko Carstens's avatar
      s390/processor: always inline stap() and __load_psw_mask() · 9c9a915a
      Heiko Carstens authored
      s390 is the only architecture which makes use of the __no_kasan_or_inline
      attribute for two functions. Given that both stap() and __load_psw_mask()
      are very small functions they can and should be always inlined anyway.
      
      Therefore get rid of __no_kasan_or_inline and always inline these
      functions.
      Signed-off-by: default avatarHeiko Carstens <hca@linux.ibm.com>
      Signed-off-by: default avatarVasily Gorbik <gor@linux.ibm.com>
      9c9a915a
    • Peter Oberparleiter's avatar
      s390/debug: Remove pointer obfuscation · d2beeb3b
      Peter Oberparleiter authored
      When read via debugfs, s390dbf debug-views print the kernel address of
      the call-site that created a trace entry. The kernel's %p pointer
      hashing feature obfuscates this address, and commit 860ec7c6
      ("s390/debug: use pK for kernel pointers") made this obfuscation
      configurable via the kptr_restrict sysctl.
      
      Obfuscation of kernel address data printed via s390dbf debug-views does
      not add any additional protection since the associated debugfs files are
      only accessible to the root user that typically has enough other means
      to obtain kernel address data.
      
      Also trace payload data may contain binary representations of kernel
      addresses as part of logged data structues. Requiring such payload data
      to be obfuscated as well would be impractical and greatly diminish the
      use of s390dbf.
      
      Therefore completely remove pointer obfuscation from s390dbf
      debug-views.
      Reviewed-by: default avatarSteffen Maier <maier@linux.ibm.com>
      Acked-by: default avatarHeiko Carstens <hca@linux.ibm.com>
      Signed-off-by: default avatarPeter Oberparleiter <oberpar@linux.ibm.com>
      Signed-off-by: default avatarVasily Gorbik <gor@linux.ibm.com>
      d2beeb3b
    • Vasily Gorbik's avatar
      s390/setup: cleanup reserve/remove_oldmem · 6a9100ad
      Vasily Gorbik authored
      Since OLDMEM_BASE/OLDMEM_SIZE is already taken into consideration and is
      reflected in ident_map_size. reserve/remove_oldmem() is no longer needed
      and could be removed.
      Reviewed-by: default avatarAlexander Gordeev <agordeev@linux.ibm.com>
      Signed-off-by: default avatarVasily Gorbik <gor@linux.ibm.com>
      6a9100ad
    • Vasily Gorbik's avatar
      s390: setup kernel memory layout early · 0c4f2623
      Vasily Gorbik authored
      Currently there are two separate places where kernel memory layout has
      to be known and adjusted:
      1. early kasan setup.
      2. paging setup later.
      
      Those 2 places had to be kept in sync and adjusted to reflect peculiar
      technical details of one another. With additional factors which influence
      kernel memory layout like ultravisor secure storage limit, complexity
      of keeping two things in sync grew up even more.
      
      Besides that if we look forward towards creating identity mapping and
      enabling DAT before jumping into uncompressed kernel - that would also
      require full knowledge of and control over kernel memory layout.
      
      So, de-duplicate and move kernel memory layout setup logic into
      the decompressor.
      Reviewed-by: default avatarAlexander Gordeev <agordeev@linux.ibm.com>
      Signed-off-by: default avatarVasily Gorbik <gor@linux.ibm.com>
      0c4f2623
  2. 16 Jun, 2021 2 commits
    • Alexander Gordeev's avatar
      s390/entry.S: factor out OUTSIDE macro · b5415c8f
      Alexander Gordeev authored
      Introduce OUTSIDE macro that checks whether an instruction
      address is inside or outside of a block of instructions.
      Signed-off-by: default avatarAlexander Gordeev <agordeev@linux.ibm.com>
      Signed-off-by: default avatarHeiko Carstens <hca@linux.ibm.com>
      Signed-off-by: default avatarVasily Gorbik <gor@linux.ibm.com>
      b5415c8f
    • Harald Freudenberger's avatar
      s390/ap/zcrypt: notify userspace with online, config and mode info · df6f508c
      Harald Freudenberger authored
      This patch brings 3 reworked/new uevent changes:
      * All AP uevents caused by an ap card or queue device now carry an
        additional uevent env value MODE=<accel|cca|ep11>. Here is an
        example:
          KERNEL[1267.301292] add	 /devices/ap/card0a (ap)
          ACTION=add
          DEVPATH=/devices/ap/card0a
          SUBSYSTEM=ap
          DEVTYPE=ap_card
          DEV_TYPE=000D
          MODALIAS=ap:t0D
          MODE=ep11			 <- this is new
          SEQNUM=1095
        This is true for bind, unbind, add, remove, and change uevents
        related to ap card or ap queue devices.
      * On a change of the soft online attribute on a zcrypt queue or card
        device a new CHANGE uevent is sent with an env value ONLINE=<0|1>.
        Example uevent:
          KERNEL[613.067531] change	/devices/ap/card09/09.0011 (ap)
          ACTION=change
          DEVPATH=/devices/ap/card09/09.0011
          SUBSYSTEM=ap
          ONLINE=0			<- this is new
          DEVTYPE=ap_queue
          DRIVER=cex4queue
          MODE=cca
          SEQNUM=1070
      - On a change of the config state of an zcrypt card device a new
        CHANGE uevent is sent with an env value CONFIG=<0|1>.
        Example uevent:
          KERNEL[876.258680] change	/devices/ap/card09 (ap)
          ACTION=change
          DEVPATH=/devices/ap/card09
          SUBSYSTEM=ap
          CONFIG=0			<- this is new
          DEVTYPE=ap_card
          DRIVER=cex4card
          DEV_TYPE=000D
          MODALIAS=ap:t0D
          MODE=cca
          SEQNUM=1073
        Setting a card config on/off causes the dependent queue devices to
        follow the config state change and thus uevents informing about the
        config state change for the queue devices are also emitted.
      Signed-off-by: default avatarHarald Freudenberger <freude@linux.ibm.com>
      Reviewed-by: default avatarIngo Franzki <ifranzki@linux.ibm.com>
      Signed-off-by: default avatarVasily Gorbik <gor@linux.ibm.com>
      df6f508c
  3. 07 Jun, 2021 33 commits
  4. 06 Jun, 2021 1 commit