Il 23/11/2012 08:42, Dietmar Maurer ha scritto:
>> > My plan was to have something like bs->job->job_type->{before,after}_write.
>> > 
>> >    int coroutine_fn (*before_write)(BlockDriverState *bs,
>> >         int64_t sector_num, int nb_sectors, QEMUIOVector *qiov,
>> >         void **cookie);
>> >    int coroutine_fn (*after_write)(BlockDriverState *bs,
>> >         int64_t sector_num, int nb_sectors, QEMUIOVector *qiov,
>> >         void *cookie);
>> > 
>> > 
>> > The before_write could optionally return a "cookie" that is passed back to
>> > the after_write callback.
> I don't really understand why a filter is related to the job? This is 
> sometimes useful,
> but not a generic filter infrastructure (maybe someone want to use filters 
> without a job).

See the part you snipped:

Actually this was plan B, as a poor-man implementation of the filter
infrastructure.  Plan A was that the block filters would materialize
suddenly in someone's git tree.

Paolo


Reply via email to