Messages in this thread | | | Date | Sat, 18 Dec 1999 11:40:02 -0500 | From | Mark Lord <> | Subject | Re: More on the IDE multiwrite problem |
| |
Mark Lord wrote: > > Alan Cox wrote: .. > > I'll keep on poking around the code. The obvious path for an error would > > seem to be > > > > hwgroup->wrq = *rq; > > ide_set_handler(drive, &multiwrite_intr, WAIT_CMD) > > -> IRQ here <-. > > multiwrite_intr gets an error > > completes the request > > => END IRQ <- > > ide_multiwrite .... > > BOOM! > > But that path, and IRQ-masking etc.. doesn't seem to be any different > from before.. darn it! Mmm...
Ahh.. but it *is* slightly different.. The old code used to do:
disable_irq_nosync(hwif->irq); /* from ide.c:ide_do_request() */ ... /* insert code fragment from above */ ... enable_irq(hwif->irq); /* from ide.c:ide_do_request() */
Dumdedum.. I wonder if adding those two lines into that part of the code cures the problem for those that see it?
If so, then we have a plausable solution.
But the real question for this scenario is, why is multwrite_intr() reporting an error? -- Mark Lord Real-Time Remedies Inc. mlord@pobox.com
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/
| |