Re: Manipulation of block driver queue
- From: GürüPràçäd <guruteck@xxxxxxxxx>
- Date: Mon, 28 Apr 2008 21:45:28 -0700 (PDT)
Thanks for reply
If i free the queue , what happens to userspace process which is
trying to write on it?
Will the process wait in blocking mode till data written? or it go
back to userspace with error code?
Regards
On Apr 28, 6:22 pm, Rainer Weikusat <rweiku...@xxxxxxxxxxx> wrote:
GürüPràçäd <gurut...@xxxxxxxxx> writes:
Device : Embedded device with SD card
Kernel : 2.6.14
Problem : while copying data take SD card out , put it back ,the
system crashes
Description:
udev is used for destruction and creation of device nodes and each
time it inserted it gets new inode number.
Driver accepts read/write to/from SD card from request queues . When
card is taken out it freezes the request queue from interrupt
handler.User process waits in blocking mode (process like cp,mv into
card) till the queue gets active. when the card is put back it
reactivates the request queue.
But due to changed inode number of device(from using udev) the waiting
userprocess continue to write to same inode old number and hence leads
to crashing the system.
I dont know how to solve this problem.
Assuming your analysis is correct, the problem is that udev doesn't
support hot-plugging of hot-pluggable device sensibly and the easy
solution is to simply not use it.
.
- References:
- Manipulation of block driver queue
- From: GürüPràçäd
- Re: Manipulation of block driver queue
- From: Rainer Weikusat
- Manipulation of block driver queue
- Prev by Date: Re: write
- Next by Date: Re: write
- Previous by thread: Re: Manipulation of block driver queue
- Index(es):
Relevant Pages
|