Re: [PATCH] Fix race in do_get_write_access()

2005-07-12 Thread Jan Kara
  Hello,

> On Mon, 2005-07-11 at 17:10, Jan Kara wrote:
> 
> >   attached patch should fix the following race:
> ...
> >   and we have sent wrong data to disk... We now clean the dirty buffer
> > flag under buffer lock in all cases and hence we know that whenever a buffer
> > is starting to be journaled we either finish the pending write-out
> > before attaching a buffer to a transaction or we won't write the buffer
> > until the transaction is going to be committed... Please apply.
> 
> Looks good to me.
> 
> Btw, how did you find this?  Were you able to reproduce this in
> practice?
  I was not able to reproduce the problem in practice (not that I'd try
very much). When I was fixing the checkpointing code I noted that
ll_rw_block() need not actually send data to disk because of buffer
being locked. So I started inspecting how do we actually use buffer
lock and found this problem...

Honza
-- 
Jan Kara <[EMAIL PROTECTED]>
SuSE CR Labs
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH] Fix race in do_get_write_access()

2005-07-12 Thread Jan Kara
  Hello,

 On Mon, 2005-07-11 at 17:10, Jan Kara wrote:
 
attached patch should fix the following race:
 ...
and we have sent wrong data to disk... We now clean the dirty buffer
  flag under buffer lock in all cases and hence we know that whenever a buffer
  is starting to be journaled we either finish the pending write-out
  before attaching a buffer to a transaction or we won't write the buffer
  until the transaction is going to be committed... Please apply.
 
 Looks good to me.
 
 Btw, how did you find this?  Were you able to reproduce this in
 practice?
  I was not able to reproduce the problem in practice (not that I'd try
very much). When I was fixing the checkpointing code I noted that
ll_rw_block() need not actually send data to disk because of buffer
being locked. So I started inspecting how do we actually use buffer
lock and found this problem...

Honza
-- 
Jan Kara [EMAIL PROTECTED]
SuSE CR Labs
-
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH] Fix race in do_get_write_access()

2005-07-11 Thread Stephen C. Tweedie
Hi,

On Mon, 2005-07-11 at 17:10, Jan Kara wrote:

>   attached patch should fix the following race:
...
>   and we have sent wrong data to disk... We now clean the dirty buffer
> flag under buffer lock in all cases and hence we know that whenever a buffer
> is starting to be journaled we either finish the pending write-out
> before attaching a buffer to a transaction or we won't write the buffer
> until the transaction is going to be committed... Please apply.

Looks good to me.

Btw, how did you find this?  Were you able to reproduce this in
practice?

Cheers,
 Stephen

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH] Fix race in do_get_write_access()

2005-07-11 Thread Stephen C. Tweedie
Hi,

On Mon, 2005-07-11 at 17:10, Jan Kara wrote:

   attached patch should fix the following race:
...
   and we have sent wrong data to disk... We now clean the dirty buffer
 flag under buffer lock in all cases and hence we know that whenever a buffer
 is starting to be journaled we either finish the pending write-out
 before attaching a buffer to a transaction or we won't write the buffer
 until the transaction is going to be committed... Please apply.

Looks good to me.

Btw, how did you find this?  Were you able to reproduce this in
practice?

Cheers,
 Stephen

-
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/