Re: [PATCH 1/6] relay: allow the use of const callback structs
From: Christoph Hellwig
Date: Thu Nov 19 2020 - 03:11:28 EST
> +/*
> + * rchan_callback wrappers. Call the callbacks if available, otherwise fall back
> + * to default behaviour.
> + */
This adds an overly long line. That being said this behavior is pretty
normal for kernel APIs, so I'm not even sure we need it at all.
> +
> +/*
> + * subbuf_start() callback.
> + */
and this one is for sure completley useless. Same for all the other
similar ones.
But taking one step back: All instances implement create_buf_file
and remove_buf_file, which makes sense as that is the prime aim
of these methods. So there is no point in making those optional.
subbuf_start_callback is overriden by two instances, so making that
optional totally makes sense. buf_mapped and buf_unmapped are
never overriden, so they should be removed entirely.
More importantly there is no case that passes a NULL rchan_callbacks,
which makes complete sense as it wouldn't even create a file. So
remove that case as well and just replace it with a sanity check in
relay_open().
Please also add a patch to mark all rchan_callbacks instances const
while you're at it.