Here's a little glitch that I'd like to see fixed:
struct radix_tree_iter
radix tree iterator state
Definition
struct radix_tree_iter {
unsigned long index;
unsigned long next_index;
unsigned long tags;
struct radix_tree_node * node;
#ifdef CONFIG_RADIX_TREE_MULTIORDER
unsigned int shift;
#endif
};
I'd like to see the ifdef/endif not included, and the 'unsigned int shift' not
included either.
I think it's appropriate to not include any preprocessor lines in the
definition of the struct (general agreement on that front?)
Then I'd like a way to indicate to kernel-doc that I want to omit 'shift' from
the struct definition. It's not for public use; there's an accessor to get at
it, and I don't want it documented. If there isn't already a way to indicate
this to kernel-doc, might I suggest this little gem ...
/**
* struct radix_tree_iter - radix tree iterator state
* @index: index of current slot
* @next_index: one beyond the last index for this chunk
* @tags: bit-mask for tag-iterating
* @node: node that contains current slot
- @shift: shift for the node that holds our slots
*
* The radix tree iterator works in terms of "chunks" of slots. A chunk is a
* subinterval of slots contained within one radix tree leaf node. It is
* described by a pointer to its first slot and a struct radix_tree_iter
* which holds the chunk's position in the tree and its size. For tagged
* iteration radix_tree_iter also holds the slots' bit-mask for one chosen
* radix tree tag.
*/
If the line starts with a '-' instead of a '*', that indicates that this
definition should be omitted. We're still documenting it for internal usage,
but it doesn't appear in the public documentation. Does that seem reasonable,
or am I just being weird?
N�����r��y����b�X��ǧv�^�){.n�+����{�v�"��^n�r���z���h�����&���G���h�(�階�ݢj"���m������z�ޖ���f���h���~�m�