cachepc-qemu

Fork of AMDESE/qemu with changes for cachepc side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-qemu
Log | Files | Refs | Submodules | LICENSE | sfeed.txt

target_structs.h (2400B)


      1/*
      2 * MIPS specific structures for linux-user
      3 *
      4 * Copyright (c) 2013 Fabrice Bellard
      5 *
      6 * This library is free software; you can redistribute it and/or
      7 * modify it under the terms of the GNU Lesser General Public
      8 * License as published by the Free Software Foundation; either
      9 * version 2.1 of the License, or (at your option) any later version.
     10 *
     11 * This library is distributed in the hope that it will be useful,
     12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
     13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
     14 * Lesser General Public License for more details.
     15 *
     16 * You should have received a copy of the GNU Lesser General Public
     17 * License along with this library; if not, see <http://www.gnu.org/licenses/>.
     18 */
     19#ifndef MIPS_TARGET_STRUCTS_H
     20#define MIPS_TARGET_STRUCTS_H
     21
     22struct target_ipc_perm {
     23    abi_int __key;                      /* Key.  */
     24    abi_uint uid;                       /* Owner's user ID.  */
     25    abi_uint gid;                       /* Owner's group ID.  */
     26    abi_uint cuid;                      /* Creator's user ID.  */
     27    abi_uint cgid;                      /* Creator's group ID.  */
     28    abi_uint mode;                      /* Read/write permission.  */
     29    abi_ushort __seq;                   /* Sequence number.  */
     30    abi_ushort __pad1;
     31    abi_ulong __unused1;
     32    abi_ulong __unused2;
     33};
     34
     35struct target_shmid_ds {
     36    struct target_ipc_perm shm_perm;    /* operation permission struct */
     37    abi_long shm_segsz;                 /* size of segment in bytes */
     38    abi_ulong shm_atime;                /* time of last shmat() */
     39    abi_ulong shm_dtime;                /* time of last shmdt() */
     40    abi_ulong shm_ctime;                /* time of last change by shmctl() */
     41    abi_int shm_cpid;                   /* pid of creator */
     42    abi_int shm_lpid;                   /* pid of last shmop */
     43    abi_ulong shm_nattch;               /* number of current attaches */
     44    abi_ulong __unused1;
     45    abi_ulong __unused2;
     46};
     47
     48#define TARGET_SEMID64_DS
     49
     50/*
     51 * The semid64_ds structure for the MIPS architecture.
     52 * Note extra padding because this structure is passed back and forth
     53 * between kernel and user space.
     54 */
     55struct target_semid64_ds {
     56    struct target_ipc_perm sem_perm;
     57    abi_ulong sem_otime;
     58    abi_ulong sem_ctime;
     59    abi_ulong sem_nsems;
     60    abi_ulong __unused1;
     61    abi_ulong __unused2;
     62};
     63
     64#endif