Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
L
linux
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
linux
Commits
3ee9f3e6
Commit
3ee9f3e6
authored
Oct 14, 2003
by
Linus Torvalds
Browse files
Options
Browse Files
Download
Plain Diff
Merge
bk://kernel.bkbits.net/gregkh/linux/i2c-2.6
into home.osdl.org:/home/torvalds/v2.5/linux
parents
b05596c2
2afc8160
Changes
3
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
367 additions
and
208 deletions
+367
-208
arch/i386/kernel/microcode.c
arch/i386/kernel/microcode.c
+334
-203
fs/proc/array.c
fs/proc/array.c
+8
-2
include/asm-i386/processor.h
include/asm-i386/processor.h
+25
-3
No files found.
arch/i386/kernel/microcode.c
View file @
3ee9f3e6
This diff is collapsed.
Click to expand it.
fs/proc/array.c
View file @
3ee9f3e6
...
@@ -226,6 +226,7 @@ static void collect_sigign_sigcatch(struct task_struct *p, sigset_t *ign,
...
@@ -226,6 +226,7 @@ static void collect_sigign_sigcatch(struct task_struct *p, sigset_t *ign,
static
inline
char
*
task_sig
(
struct
task_struct
*
p
,
char
*
buffer
)
static
inline
char
*
task_sig
(
struct
task_struct
*
p
,
char
*
buffer
)
{
{
sigset_t
pending
,
shpending
,
blocked
,
ignored
,
caught
;
sigset_t
pending
,
shpending
,
blocked
,
ignored
,
caught
;
int
num_threads
=
0
;
sigemptyset
(
&
pending
);
sigemptyset
(
&
pending
);
sigemptyset
(
&
shpending
);
sigemptyset
(
&
shpending
);
...
@@ -241,10 +242,13 @@ static inline char * task_sig(struct task_struct *p, char *buffer)
...
@@ -241,10 +242,13 @@ static inline char * task_sig(struct task_struct *p, char *buffer)
shpending
=
p
->
signal
->
shared_pending
.
signal
;
shpending
=
p
->
signal
->
shared_pending
.
signal
;
blocked
=
p
->
blocked
;
blocked
=
p
->
blocked
;
collect_sigign_sigcatch
(
p
,
&
ignored
,
&
caught
);
collect_sigign_sigcatch
(
p
,
&
ignored
,
&
caught
);
num_threads
=
atomic_read
(
&
p
->
signal
->
count
);
spin_unlock_irq
(
&
p
->
sighand
->
siglock
);
spin_unlock_irq
(
&
p
->
sighand
->
siglock
);
}
}
read_unlock
(
&
tasklist_lock
);
read_unlock
(
&
tasklist_lock
);
buffer
+=
sprintf
(
buffer
,
"Threads:
\t
%d
\n
"
,
num_threads
);
/* render them all */
/* render them all */
buffer
=
render_sigset_t
(
"SigPnd:
\t
"
,
&
pending
,
buffer
);
buffer
=
render_sigset_t
(
"SigPnd:
\t
"
,
&
pending
,
buffer
);
buffer
=
render_sigset_t
(
"ShdPnd:
\t
"
,
&
shpending
,
buffer
);
buffer
=
render_sigset_t
(
"ShdPnd:
\t
"
,
&
shpending
,
buffer
);
...
@@ -296,6 +300,7 @@ int proc_pid_stat(struct task_struct *task, char * buffer)
...
@@ -296,6 +300,7 @@ int proc_pid_stat(struct task_struct *task, char * buffer)
char
state
;
char
state
;
int
res
;
int
res
;
pid_t
ppid
;
pid_t
ppid
;
int
num_threads
=
0
;
struct
mm_struct
*
mm
;
struct
mm_struct
*
mm
;
state
=
*
get_task_state
(
task
);
state
=
*
get_task_state
(
task
);
...
@@ -324,6 +329,7 @@ int proc_pid_stat(struct task_struct *task, char * buffer)
...
@@ -324,6 +329,7 @@ int proc_pid_stat(struct task_struct *task, char * buffer)
read_lock
(
&
tasklist_lock
);
read_lock
(
&
tasklist_lock
);
if
(
task
->
sighand
)
{
if
(
task
->
sighand
)
{
spin_lock_irq
(
&
task
->
sighand
->
siglock
);
spin_lock_irq
(
&
task
->
sighand
->
siglock
);
num_threads
=
atomic_read
(
&
task
->
signal
->
count
);
collect_sigign_sigcatch
(
task
,
&
sigign
,
&
sigcatch
);
collect_sigign_sigcatch
(
task
,
&
sigign
,
&
sigcatch
);
spin_unlock_irq
(
&
task
->
sighand
->
siglock
);
spin_unlock_irq
(
&
task
->
sighand
->
siglock
);
}
}
...
@@ -338,7 +344,7 @@ int proc_pid_stat(struct task_struct *task, char * buffer)
...
@@ -338,7 +344,7 @@ int proc_pid_stat(struct task_struct *task, char * buffer)
ppid
=
task
->
pid
?
task
->
real_parent
->
pid
:
0
;
ppid
=
task
->
pid
?
task
->
real_parent
->
pid
:
0
;
read_unlock
(
&
tasklist_lock
);
read_unlock
(
&
tasklist_lock
);
res
=
sprintf
(
buffer
,
"%d (%s) %c %d %d %d %d %d %lu %lu \
res
=
sprintf
(
buffer
,
"%d (%s) %c %d %d %d %d %d %lu %lu \
%lu %lu %lu %lu %lu %ld %ld %ld %ld %
l
d %ld %llu %lu %ld %lu %lu %lu %lu %lu \
%lu %lu %lu %lu %lu %ld %ld %ld %ld %d %ld %llu %lu %ld %lu %lu %lu %lu %lu \
%lu %lu %lu %lu %lu %lu %lu %lu %d %d %lu %lu
\n
"
,
%lu %lu %lu %lu %lu %lu %lu %lu %d %d %lu %lu
\n
"
,
task
->
pid
,
task
->
pid
,
task
->
comm
,
task
->
comm
,
...
@@ -359,7 +365,7 @@ int proc_pid_stat(struct task_struct *task, char * buffer)
...
@@ -359,7 +365,7 @@ int proc_pid_stat(struct task_struct *task, char * buffer)
jiffies_to_clock_t
(
task
->
cstime
),
jiffies_to_clock_t
(
task
->
cstime
),
priority
,
priority
,
nice
,
nice
,
0UL
/* removed */
,
num_threads
,
jiffies_to_clock_t
(
task
->
it_real_value
),
jiffies_to_clock_t
(
task
->
it_real_value
),
(
unsigned
long
long
)
(
unsigned
long
long
)
jiffies_64_to_clock_t
(
task
->
start_time
-
INITIAL_JIFFIES
),
jiffies_64_to_clock_t
(
task
->
start_time
-
INITIAL_JIFFIES
),
...
...
include/asm-i386/processor.h
View file @
3ee9f3e6
...
@@ -498,7 +498,7 @@ unsigned long get_wchan(struct task_struct *p);
...
@@ -498,7 +498,7 @@ unsigned long get_wchan(struct task_struct *p);
#define KSTK_EIP(tsk) (((unsigned long *)(4096+(unsigned long)(tsk)->thread_info))[1019])
#define KSTK_EIP(tsk) (((unsigned long *)(4096+(unsigned long)(tsk)->thread_info))[1019])
#define KSTK_ESP(tsk) (((unsigned long *)(4096+(unsigned long)(tsk)->thread_info))[1022])
#define KSTK_ESP(tsk) (((unsigned long *)(4096+(unsigned long)(tsk)->thread_info))[1022])
struct
microcode
{
struct
microcode
_header
{
unsigned
int
hdrver
;
unsigned
int
hdrver
;
unsigned
int
rev
;
unsigned
int
rev
;
unsigned
int
date
;
unsigned
int
date
;
...
@@ -506,10 +506,32 @@ struct microcode {
...
@@ -506,10 +506,32 @@ struct microcode {
unsigned
int
cksum
;
unsigned
int
cksum
;
unsigned
int
ldrver
;
unsigned
int
ldrver
;
unsigned
int
pf
;
unsigned
int
pf
;
unsigned
int
reserved
[
5
];
unsigned
int
datasize
;
unsigned
int
bits
[
500
];
unsigned
int
totalsize
;
unsigned
int
reserved
[
3
];
};
struct
microcode
{
struct
microcode_header
hdr
;
unsigned
int
bits
[
0
];
};
typedef
struct
microcode
microcode_t
;
typedef
struct
microcode_header
microcode_header_t
;
/* microcode format is extended from prescott processors */
struct
extended_signature
{
unsigned
int
sig
;
unsigned
int
pf
;
unsigned
int
cksum
;
};
};
struct
extended_sigtable
{
unsigned
int
count
;
unsigned
int
cksum
;
unsigned
int
reserved
[
3
];
struct
extended_signature
sigs
[
0
];
};
/* '6' because it used to be for P6 only (but now covers Pentium 4 as well) */
/* '6' because it used to be for P6 only (but now covers Pentium 4 as well) */
#define MICROCODE_IOCFREE _IO('6',0)
#define MICROCODE_IOCFREE _IO('6',0)
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment