Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 151443
b: refs/heads/master
c: 7c692cb
h: refs/heads/master
i:
  151441: a1d947c
  151439: 7752dd0
v: v3
  • Loading branch information
Vegard Nossum committed Jun 13, 2009
1 parent a42e1ab commit 35f65c4
Show file tree
Hide file tree
Showing 3 changed files with 26 additions and 1 deletion.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 8eae985f08138758e06503588f5f1196269bc415
refs/heads/master: 7c692cbade8b8884f1c20500393bcc7cd6d24ef8
14 changes: 14 additions & 0 deletions trunk/include/linux/interrupt.h
Original file line number Diff line number Diff line change
Expand Up @@ -466,6 +466,20 @@ static inline void tasklet_hi_schedule(struct tasklet_struct *t)
__tasklet_hi_schedule(t);
}

extern void __tasklet_hi_schedule_first(struct tasklet_struct *t);

/*
* This version avoids touching any other tasklets. Needed for kmemcheck
* in order not to take any page faults while enqueueing this tasklet;
* consider VERY carefully whether you really need this or
* tasklet_hi_schedule()...
*/
static inline void tasklet_hi_schedule_first(struct tasklet_struct *t)
{
if (!test_and_set_bit(TASKLET_STATE_SCHED, &t->state))
__tasklet_hi_schedule_first(t);
}


static inline void tasklet_disable_nosync(struct tasklet_struct *t)
{
Expand Down
11 changes: 11 additions & 0 deletions trunk/kernel/softirq.c
Original file line number Diff line number Diff line change
Expand Up @@ -382,6 +382,17 @@ void __tasklet_hi_schedule(struct tasklet_struct *t)

EXPORT_SYMBOL(__tasklet_hi_schedule);

void __tasklet_hi_schedule_first(struct tasklet_struct *t)
{
BUG_ON(!irqs_disabled());

t->next = __get_cpu_var(tasklet_hi_vec).head;
__get_cpu_var(tasklet_hi_vec).head = t;
__raise_softirq_irqoff(HI_SOFTIRQ);
}

EXPORT_SYMBOL(__tasklet_hi_schedule_first);

static void tasklet_action(struct softirq_action *a)
{
struct tasklet_struct *list;
Expand Down

0 comments on commit 35f65c4

Please sign in to comment.