From: Siddh Raman Pant via Linux-kernel-mentees <linux-kernel-mentees@lists.linuxfoundation.org> To: Eric Biggers <ebiggers@kernel.org>, Jonathan Corbet <corbet@lwn.net>, David Howells <dhowells@redhat.com>, Randy Dunlap <rdunlap@infradead.org>, Mauro Carvalho Chehab <mchehab@kernel.org>, Christophe JAILLET <christophe.jaillet@wanadoo.fr>, Eric Dumazet <edumazet@google.com> Cc: linux-kernel-mentees <linux-kernel-mentees@lists.linuxfoundation.org>, linux-kernel <linux-kernel@vger.kernel.org> Subject: [PATCH 2/3] kernel/watch_queue: Improve struct annotation formatting Date: Thu, 4 Aug 2022 19:00:23 +0530 [thread overview] Message-ID: <6bac2d4c2b50d921eb16fa5344ffe258be90c651.1659618705.git.code@siddh.me> (raw) In-Reply-To: <cover.1659618705.git.code@siddh.me> Improve formatting struct annotations in watch_queue.h, so that they fall in the preferred 80 character limit. Signed-off-by: Siddh Raman Pant <code@siddh.me> --- include/linux/watch_queue.h | 96 +++++++++++++++++++++++++++---------- 1 file changed, 71 insertions(+), 25 deletions(-) diff --git a/include/linux/watch_queue.h b/include/linux/watch_queue.h index fc6bba20273b..c99c39ec6548 100644 --- a/include/linux/watch_queue.h +++ b/include/linux/watch_queue.h @@ -18,57 +18,103 @@ struct cred; +/** + * watch_type_filter - Filter on watch type + * + * @type: Type of watch_notification + * @subtype_filter: Bitmask of subtypes to filter on + * @info_filter: Filter on watch_notification::info + * @info_mask: Mask of relevant bits in info_filter + */ struct watch_type_filter { enum watch_notification_type type; - __u32 subtype_filter[1]; /* Bitmask of subtypes to filter on */ - __u32 info_filter; /* Filter on watch_notification::info */ - __u32 info_mask; /* Mask of relevant bits in info_filter */ + __u32 subtype_filter[1]; + __u32 info_filter; + __u32 info_mask; }; +/** + * watch_filter - Filter on watch + * + * @rcu: (union) RCU head + * @type_filter: (union) Bitmask of accepted types + * @nr_filters: Number of filters + * @filters: Array of watch_type_filter + */ struct watch_filter { union { struct rcu_head rcu; - /* Bitmask of accepted types */ DECLARE_BITMAP(type_filter, WATCH_TYPE__NR); }; - u32 nr_filters; /* Number of filters */ + u32 nr_filters; struct watch_type_filter filters[]; }; +/** + * watch_queue - General notification queue + * + * @rcu: RCU head + * @filter: Filter on watch_notification::info + * @pipe: The pipe we're using as a buffer. + * @watches: Contributory watches + * @notes: Preallocated notifications + * @notes_bitmap: Allocation bitmap for notes + * @usage: Object usage count + * @lock: Spinlock + * @nr_notes: Number of notes + * @nr_pages: Number of pages in notes[] + * @defunct: True when queues closed + */ struct watch_queue { struct rcu_head rcu; struct watch_filter __rcu *filter; - struct pipe_inode_info *pipe; /* The pipe we're using as a buffer */ - struct hlist_head watches; /* Contributory watches */ - struct page **notes; /* Preallocated notifications */ - unsigned long *notes_bitmap; /* Allocation bitmap for notes */ - struct kref usage; /* Object usage count */ + struct pipe_inode_info *pipe; + struct hlist_head watches; + struct page **notes; + unsigned long *notes_bitmap; + struct kref usage; spinlock_t lock; - unsigned int nr_notes; /* Number of notes */ - unsigned int nr_pages; /* Number of pages in notes[] */ - bool defunct; /* T when queues closed */ + unsigned int nr_notes; + unsigned int nr_pages; + bool defunct; }; -/* - * Representation of a watch on an object. +/** + * watch - Representation of a watch on an object. + * + * @rcu: (union) RCU head + * @info_id: (union) ID to be OR'd in to info field + * @queue: Queue to post events to + * @queue_node: Link in queue->watches + * @watch_list: Link in watch_list->watchers + * @list_node: The list node + * @cred: Creds of the owner of the watch + * @private: Private data for the watched object + * @id: Internal identifier + * @usage: Object usage count */ struct watch { union { struct rcu_head rcu; - u32 info_id; /* ID to be OR'd in to info field */ + u32 info_id; }; - struct watch_queue __rcu *queue; /* Queue to post events to */ - struct hlist_node queue_node; /* Link in queue->watches */ + struct watch_queue __rcu *queue; + struct hlist_node queue_node; struct watch_list __rcu *watch_list; - struct hlist_node list_node; /* Link in watch_list->watchers */ - const struct cred *cred; /* Creds of the owner of the watch */ - void *private; /* Private data for the watched object */ - u64 id; /* Internal identifier */ - struct kref usage; /* Object usage count */ + struct hlist_node list_node; + const struct cred *cred; + void *private; + u64 id; + struct kref usage; }; -/* - * List of watches on an object. +/** + * watch_list - List of watches on an object. + * + * @rcu: RCU head + * @watchers: List head + * @release_watch: Function to release watch + * @lock: Spinlock */ struct watch_list { struct rcu_head rcu; -- 2.35.1 _______________________________________________ Linux-kernel-mentees mailing list Linux-kernel-mentees@lists.linuxfoundation.org https://lists.linuxfoundation.org/mailman/listinfo/linux-kernel-mentees
WARNING: multiple messages have this Message-ID (diff)
From: Siddh Raman Pant <code@siddh.me> To: Eric Biggers <ebiggers@kernel.org>, Jonathan Corbet <corbet@lwn.net>, David Howells <dhowells@redhat.com>, Randy Dunlap <rdunlap@infradead.org>, Mauro Carvalho Chehab <mchehab@kernel.org>, Christophe JAILLET <christophe.jaillet@wanadoo.fr>, Eric Dumazet <edumazet@google.com> Cc: linux-kernel <linux-kernel@vger.kernel.org>, linux-kernel-mentees <linux-kernel-mentees@lists.linuxfoundation.org> Subject: [PATCH 2/3] kernel/watch_queue: Improve struct annotation formatting Date: Thu, 4 Aug 2022 19:00:23 +0530 [thread overview] Message-ID: <6bac2d4c2b50d921eb16fa5344ffe258be90c651.1659618705.git.code@siddh.me> (raw) In-Reply-To: <cover.1659618705.git.code@siddh.me> Improve formatting struct annotations in watch_queue.h, so that they fall in the preferred 80 character limit. Signed-off-by: Siddh Raman Pant <code@siddh.me> --- include/linux/watch_queue.h | 96 +++++++++++++++++++++++++++---------- 1 file changed, 71 insertions(+), 25 deletions(-) diff --git a/include/linux/watch_queue.h b/include/linux/watch_queue.h index fc6bba20273b..c99c39ec6548 100644 --- a/include/linux/watch_queue.h +++ b/include/linux/watch_queue.h @@ -18,57 +18,103 @@ struct cred; +/** + * watch_type_filter - Filter on watch type + * + * @type: Type of watch_notification + * @subtype_filter: Bitmask of subtypes to filter on + * @info_filter: Filter on watch_notification::info + * @info_mask: Mask of relevant bits in info_filter + */ struct watch_type_filter { enum watch_notification_type type; - __u32 subtype_filter[1]; /* Bitmask of subtypes to filter on */ - __u32 info_filter; /* Filter on watch_notification::info */ - __u32 info_mask; /* Mask of relevant bits in info_filter */ + __u32 subtype_filter[1]; + __u32 info_filter; + __u32 info_mask; }; +/** + * watch_filter - Filter on watch + * + * @rcu: (union) RCU head + * @type_filter: (union) Bitmask of accepted types + * @nr_filters: Number of filters + * @filters: Array of watch_type_filter + */ struct watch_filter { union { struct rcu_head rcu; - /* Bitmask of accepted types */ DECLARE_BITMAP(type_filter, WATCH_TYPE__NR); }; - u32 nr_filters; /* Number of filters */ + u32 nr_filters; struct watch_type_filter filters[]; }; +/** + * watch_queue - General notification queue + * + * @rcu: RCU head + * @filter: Filter on watch_notification::info + * @pipe: The pipe we're using as a buffer. + * @watches: Contributory watches + * @notes: Preallocated notifications + * @notes_bitmap: Allocation bitmap for notes + * @usage: Object usage count + * @lock: Spinlock + * @nr_notes: Number of notes + * @nr_pages: Number of pages in notes[] + * @defunct: True when queues closed + */ struct watch_queue { struct rcu_head rcu; struct watch_filter __rcu *filter; - struct pipe_inode_info *pipe; /* The pipe we're using as a buffer */ - struct hlist_head watches; /* Contributory watches */ - struct page **notes; /* Preallocated notifications */ - unsigned long *notes_bitmap; /* Allocation bitmap for notes */ - struct kref usage; /* Object usage count */ + struct pipe_inode_info *pipe; + struct hlist_head watches; + struct page **notes; + unsigned long *notes_bitmap; + struct kref usage; spinlock_t lock; - unsigned int nr_notes; /* Number of notes */ - unsigned int nr_pages; /* Number of pages in notes[] */ - bool defunct; /* T when queues closed */ + unsigned int nr_notes; + unsigned int nr_pages; + bool defunct; }; -/* - * Representation of a watch on an object. +/** + * watch - Representation of a watch on an object. + * + * @rcu: (union) RCU head + * @info_id: (union) ID to be OR'd in to info field + * @queue: Queue to post events to + * @queue_node: Link in queue->watches + * @watch_list: Link in watch_list->watchers + * @list_node: The list node + * @cred: Creds of the owner of the watch + * @private: Private data for the watched object + * @id: Internal identifier + * @usage: Object usage count */ struct watch { union { struct rcu_head rcu; - u32 info_id; /* ID to be OR'd in to info field */ + u32 info_id; }; - struct watch_queue __rcu *queue; /* Queue to post events to */ - struct hlist_node queue_node; /* Link in queue->watches */ + struct watch_queue __rcu *queue; + struct hlist_node queue_node; struct watch_list __rcu *watch_list; - struct hlist_node list_node; /* Link in watch_list->watchers */ - const struct cred *cred; /* Creds of the owner of the watch */ - void *private; /* Private data for the watched object */ - u64 id; /* Internal identifier */ - struct kref usage; /* Object usage count */ + struct hlist_node list_node; + const struct cred *cred; + void *private; + u64 id; + struct kref usage; }; -/* - * List of watches on an object. +/** + * watch_list - List of watches on an object. + * + * @rcu: RCU head + * @watchers: List head + * @release_watch: Function to release watch + * @lock: Spinlock */ struct watch_list { struct rcu_head rcu; -- 2.35.1
next prev parent reply other threads:[~2022-08-04 13:31 UTC|newest] Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top 2022-08-04 13:30 [PATCH 0/3] kernel/watch_queue: Clean up some code Siddh Raman Pant via Linux-kernel-mentees 2022-08-04 13:30 ` Siddh Raman Pant 2022-08-04 13:30 ` [PATCH 1/3 v4] kernel/watch_queue: Remove dangling pipe reference while clearing watch_queue Siddh Raman Pant via Linux-kernel-mentees 2022-08-04 13:30 ` Siddh Raman Pant 2022-08-04 13:30 ` Siddh Raman Pant via Linux-kernel-mentees [this message] 2022-08-04 13:30 ` [PATCH 2/3] kernel/watch_queue: Improve struct annotation formatting Siddh Raman Pant 2022-08-05 7:22 ` Eric Biggers 2022-08-05 7:22 ` Eric Biggers 2022-08-05 9:35 ` Siddh Raman Pant via Linux-kernel-mentees 2022-08-05 9:35 ` Siddh Raman Pant 2022-08-04 13:30 ` [PATCH 3/3] kernel/watch_queue: Remove wqueue->defunct and use pipe for clear check Siddh Raman Pant via Linux-kernel-mentees 2022-08-04 13:30 ` Siddh Raman Pant 2022-08-04 14:41 ` [PATCH v2 " Siddh Raman Pant via Linux-kernel-mentees 2022-08-04 14:41 ` Siddh Raman Pant 2022-08-05 7:24 ` Eric Biggers 2022-08-05 7:24 ` Eric Biggers 2022-08-05 9:35 ` Siddh Raman Pant via Linux-kernel-mentees 2022-08-05 9:35 ` Siddh Raman Pant 2022-08-05 18:33 ` Eric Biggers 2022-08-05 18:33 ` Eric Biggers 2022-08-06 7:23 ` Siddh Raman Pant 2022-08-06 7:23 ` Siddh Raman Pant via Linux-kernel-mentees 2022-08-05 7:16 ` [PATCH 0/3] kernel/watch_queue: Clean up some code Eric Biggers 2022-08-05 7:16 ` Eric Biggers 2022-08-05 9:35 ` Siddh Raman Pant via Linux-kernel-mentees 2022-08-05 9:35 ` Siddh Raman Pant
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=6bac2d4c2b50d921eb16fa5344ffe258be90c651.1659618705.git.code@siddh.me \ --to=linux-kernel-mentees@lists.linuxfoundation.org \ --cc=christophe.jaillet@wanadoo.fr \ --cc=code@siddh.me \ --cc=corbet@lwn.net \ --cc=dhowells@redhat.com \ --cc=ebiggers@kernel.org \ --cc=edumazet@google.com \ --cc=linux-kernel@vger.kernel.org \ --cc=mchehab@kernel.org \ --cc=rdunlap@infradead.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.