ShellBanner
System:Linux MiraNet 3.0.0-14-generic-pae #23-Ubuntu SMP Mon Nov 21 22:07:10 UTC 2011 i686
Software:Apache. PHP/5.3.6-13ubuntu3.10
ID:uid=65534(nobody) gid=65534(nogroup) groups=65534(nogroup)
Safe Mode:OFF
Open_Basedir:OFF
Freespace:22.59 GB of 70.42 GB (32.09%)
MySQL: ON MSSQL: OFF Oracle: OFF PostgreSQL: OFF Curl: OFF Sockets: ON Fetch: OFF Wget: ON Perl: ON
Disabled Functions: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,

/ usr/ src/ linux-headers-3.0.0-14/ arch/ mips/ include/ asm/ - drwxr-xr-x

Directory:
Viewing file:     smtc_ipi.h (2.28 KB)      -rw-r--r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
/*
 * Definitions used in MIPS MT SMTC "Interprocessor Interrupt" code.
 */
#ifndef __ASM_SMTC_IPI_H
#define __ASM_SMTC_IPI_H

#include <linux/spinlock.h>

//#define SMTC_IPI_DEBUG

#ifdef SMTC_IPI_DEBUG
#include <asm/mipsregs.h>
#include <asm/mipsmtregs.h>
#endif /* SMTC_IPI_DEBUG */

/*
 * An IPI "message"
 */

struct smtc_ipi {
    struct smtc_ipi *flink;
    int type;
    void *arg;
    int dest;
#ifdef    SMTC_IPI_DEBUG
    int sender;
    long stamp;
#endif /* SMTC_IPI_DEBUG */
};

/*
 * Defined IPI Types
 */

#define LINUX_SMP_IPI 1
#define SMTC_CLOCK_TICK 2
#define IRQ_AFFINITY_IPI 3

/*
 * A queue of IPI messages
 */

struct smtc_ipi_q {
    struct smtc_ipi *head;
    spinlock_t lock;
    struct smtc_ipi *tail;
    int depth;
    int resched_flag;    /* reschedule already queued */
};

static inline void smtc_ipi_nq(struct smtc_ipi_q *q, struct smtc_ipi *p)
{
    unsigned long flags;

    spin_lock_irqsave(&q->lock, flags);
    if (q->head == NULL)
        q->head = q->tail = p;
    else
        q->tail->flink = p;
    p->flink = NULL;
    q->tail = p;
    q->depth++;
#ifdef    SMTC_IPI_DEBUG
    p->sender = read_c0_tcbind();
    p->stamp = read_c0_count();
#endif /* SMTC_IPI_DEBUG */
    spin_unlock_irqrestore(&q->lock, flags);
}

static inline struct smtc_ipi *__smtc_ipi_dq(struct smtc_ipi_q *q)
{
    struct smtc_ipi *p;

    if (q->head == NULL)
        p = NULL;
    else {
        p = q->head;
        q->head = q->head->flink;
        q->depth--;
        /* Arguably unnecessary, but leaves queue cleaner */
        if (q->head == NULL)
            q->tail = NULL;
    }

    return p;
}

static inline struct smtc_ipi *smtc_ipi_dq(struct smtc_ipi_q *q)
{
    unsigned long flags;
    struct smtc_ipi *p;

    spin_lock_irqsave(&q->lock, flags);
    p = __smtc_ipi_dq(q);
    spin_unlock_irqrestore(&q->lock, flags);

    return p;
}

static inline void smtc_ipi_req(struct smtc_ipi_q *q, struct smtc_ipi *p)
{
    unsigned long flags;

    spin_lock_irqsave(&q->lock, flags);
    if (q->head == NULL) {
        q->head = q->tail = p;
        p->flink = NULL;
    } else {
        p->flink = q->head;
        q->head = p;
    }
    q->depth++;
    spin_unlock_irqrestore(&q->lock, flags);
}

static inline int smtc_ipi_qdepth(struct smtc_ipi_q *q)
{
    unsigned long flags;
    int retval;

    spin_lock_irqsave(&q->lock, flags);
    retval = q->depth;
    spin_unlock_irqrestore(&q->lock, flags);
    return retval;
}

extern void smtc_send_ipi(int cpu, int type, unsigned int action);

#endif /* __ASM_SMTC_IPI_H */
Command:
Quick Commands:
Upload:
[Read-Only] Max size: 100MB
PHP Filesystem: <@ Ú
Search File:
regexp
Create File:
Overwrite [Read-Only]
View File:
Mass Defacement:
[+] Main Directory: [+] Defacement Url:
LmfaoX Shell - Private Build [BETA] - v0.1 -; Generated: 0.2382 seconds