Re: [PATCH 1/1] Blackfin OTP Char Driver: add writing support ofOTP

From: Jiri Slaby
Date: Mon Oct 13 2008 - 06:35:45 EST


On 10/13/2008 12:07 PM, Mike Frysinger wrote:
> the pos gets updated every time a half-page gets processed. so if you
> call write() and tell it to write 128 bytes, but you get an error half
> way through, the pos points right at the place where the error
> occurred. i dont get what you're asking.

Ah, OK, that's because I don't know exactly what should happen if a write fails.
I though userspace expects the state of the fd to not be touched.

>> But is this OK to you:
>> PROCESS 1 PROCESS 2
>> lock
>> set allow_writes
>> write
>> check allow_writes
>> be interrupted
>> whatever
>> unlock
>> unset allow_writes
>> sleep
>> mutex lock
>> the processing...
>
> i dont see a problem here. there is no loss of data, hardware
> failure, software crashes, etc... in other words, there is no
> misbehavior.

I see no purpose of allow_writes then. Why is it there? I don't need to call
memlock if anybody else did and I raced with him. Also when somebody else
unlocks after finishing of writes I can start failing in the middle of my writes
-- this doesn't have anything to do with locking, but with the design, the one
global variable.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/