Commit 360f2ed0 authored by Linus Torvalds's avatar Linus Torvalds

Merge bk://kernel.bkbits.net/davem/net-2.6

into ppc970.osdl.org:/home/torvalds/v2.6/linux
parents 2407e34e 023bba10
...@@ -210,10 +210,14 @@ struct request *elv_next_request(request_queue_t *q) ...@@ -210,10 +210,14 @@ struct request *elv_next_request(request_queue_t *q)
rq = NULL; rq = NULL;
break; break;
} else if (ret == BLKPREP_KILL) { } else if (ret == BLKPREP_KILL) {
int nr_bytes = rq->hard_nr_sectors << 9;
if (!nr_bytes)
nr_bytes = rq->data_len;
blkdev_dequeue_request(rq); blkdev_dequeue_request(rq);
rq->flags |= REQ_QUIET; rq->flags |= REQ_QUIET;
while (end_that_request_first(rq, 0, rq->nr_sectors)) end_that_request_chunk(rq, 0, nr_bytes);
;
end_that_request_last(rq); end_that_request_last(rq);
} else { } else {
printk("%s: bad return=%d\n", __FUNCTION__, ret); printk("%s: bad return=%d\n", __FUNCTION__, ret);
......
/* $Id: capifunc.c,v 1.60 2004/03/22 16:28:27 armin Exp $ /* $Id: capifunc.c,v 1.61 2004/03/26 19:48:48 armin Exp $
* *
* ISDN interface module for Eicon active cards DIVA. * ISDN interface module for Eicon active cards DIVA.
* CAPI Interface common functions * CAPI Interface common functions
...@@ -893,7 +893,10 @@ static u16 diva_send_message(struct capi_ctr *ctrl, ...@@ -893,7 +893,10 @@ static u16 diva_send_message(struct capi_ctr *ctrl,
return CAPI_REGOSRESOURCEERR; return CAPI_REGOSRESOURCEERR;
} }
diva_os_enter_spin_lock(&api_lock, &old_irql, "send message");
if (!this->Id) { if (!this->Id) {
diva_os_leave_spin_lock(&api_lock, &old_irql, "send message");
return CAPI_ILLAPPNR; return CAPI_ILLAPPNR;
} }
...@@ -901,8 +904,6 @@ static u16 diva_send_message(struct capi_ctr *ctrl, ...@@ -901,8 +904,6 @@ static u16 diva_send_message(struct capi_ctr *ctrl,
msg->header.controller = ControllerMap[card->Id] msg->header.controller = ControllerMap[card->Id]
| (msg->header.controller & 0x80); /* preserve external controller bit */ | (msg->header.controller & 0x80); /* preserve external controller bit */
diva_os_enter_spin_lock(&api_lock, &old_irql, "send message");
switch (command) { switch (command) {
default: default:
xlog("\x00\x02", msg, 0x80, clength); xlog("\x00\x02", msg, 0x80, clength);
......
...@@ -3661,7 +3661,7 @@ static void __devexit cpc_remove_one(struct pci_dev *pdev) ...@@ -3661,7 +3661,7 @@ static void __devexit cpc_remove_one(struct pci_dev *pdev)
release_mem_region(card->hw.falcphys, card->hw.falcsize); release_mem_region(card->hw.falcphys, card->hw.falcsize);
} }
for (i = 0; i < card->hw.nchan; i++) for (i = 0; i < card->hw.nchan; i++)
if (card->chan[i].d.dev); if (card->chan[i].d.dev)
free_netdev(card->chan[i].d.dev); free_netdev(card->chan[i].d.dev);
if (card->hw.irq) if (card->hw.irq)
free_irq(card->hw.irq, card); free_irq(card->hw.irq, card);
......
...@@ -701,11 +701,12 @@ static int bio_pair_end_1(struct bio * bi, unsigned int done, int err) ...@@ -701,11 +701,12 @@ static int bio_pair_end_1(struct bio * bi, unsigned int done, int err)
{ {
struct bio_pair *bp = container_of(bi, struct bio_pair, bio1); struct bio_pair *bp = container_of(bi, struct bio_pair, bio1);
if (bi->bi_size)
return 1;
if (err) if (err)
bp->error = err; bp->error = err;
if (bi->bi_size)
return 1;
bio_pair_release(bp); bio_pair_release(bp);
return 0; return 0;
} }
...@@ -714,11 +715,12 @@ static int bio_pair_end_2(struct bio * bi, unsigned int done, int err) ...@@ -714,11 +715,12 @@ static int bio_pair_end_2(struct bio * bi, unsigned int done, int err)
{ {
struct bio_pair *bp = container_of(bi, struct bio_pair, bio2); struct bio_pair *bp = container_of(bi, struct bio_pair, bio2);
if (bi->bi_size)
return 1;
if (err) if (err)
bp->error = err; bp->error = err;
if (bi->bi_size)
return 1;
bio_pair_release(bp); bio_pair_release(bp);
return 0; return 0;
} }
......
...@@ -172,6 +172,12 @@ static int __pdflush(struct pdflush_work *my_work) ...@@ -172,6 +172,12 @@ static int __pdflush(struct pdflush_work *my_work)
static int pdflush(void *dummy) static int pdflush(void *dummy)
{ {
struct pdflush_work my_work; struct pdflush_work my_work;
/*
* pdflush can spend a lot of time doing encryption via dm-crypt. We
* don't want to do that at keventd's priority.
*/
set_user_nice(current, 0);
return __pdflush(&my_work); return __pdflush(&my_work);
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment