disk_alloc_nowait is just like disk_alloc, but won't wait for memory and may
return NULL. It's for drivers that need to create a disk from a non-sleepable
context.
Details
Details
Diff Detail
Diff Detail
- Repository
- rS FreeBSD src repository - subversion
- Lint
Lint Passed - Unit
No Test Coverage - Build Status
Buildable 37707 Build 34596: arc lint + arc unit
Event Timeline
Comment Actions
I would probably just have added the flags argument to disk_alloc()...
Otherwise no comments.
Comment Actions
I thought about that, but opted for this route because I didn't want to change a 2 dozen other places in the tree. And I kinda wanted to be able to MFC these changes too...
Comment Actions
On second thought, I'm going to abandon this approach and schedule the cam register routine into a taskqueue so we can sleep. There's no good retry mechanism here, and adding one would make things more complicated. We can switch to waiting for memory to have a more robust system with simpler code. This also matches at least some of the feedback I've received privately (thanks Chuck). I'll post that review when I have it done.