On Thu, Mar 16, 2017 at 3:11 PM, Eric Dumazet [off-list ref] wrote:
On Thu, 2017-03-16 at 11:33 -0700, Alexander Duyck wrote:
quoted
From: Sridhar Samudrala <sridhar.samudrala@intel.com>
quoted
+/*
+ * If busy polling is on and the file is a socket, return a pointer to
+ * struct sock
+ */
+static inline struct sock *ep_sk_from_file(struct file *file)
+{
+ struct inode *inode = file_inode(file);
+
+ if (!S_ISSOCK(inode->i_mode))
+ return NULL;
+
+ return ((struct socket *)file->private_data)->sk;
+}
I believe a more standard way is to use sock_from_file()
(This does not have to fetch a cache line to read i_mode ))
Thanks. Will make sure to update to use that for v2.
- Alex