* [PATCH] restore skb_copy_datagram, removed from 2.6.11-rc2, breaking VMWare
@ 2005-01-22 16:01 Chip Salzenberg
2005-01-22 16:16 ` Christoph Hellwig
2005-01-22 16:26 ` Petr Vandrovec
0 siblings, 2 replies; 3+ messages in thread
From: Chip Salzenberg @ 2005-01-22 16:01 UTC (permalink / raw)
To: Linux Kernel
[-- Attachment #1: Type: text/plain, Size: 384 bytes --]
Those of you who are using VMWare 4.5 will find that 2.6.11-rc2
removes the public function "skb_copy_datagram", breaking VMWare
(and any other module using that interface *sigh*).
The attached patch restores the (little harmless wrapper) function.
--
Chip Salzenberg - a.k.a. - <chip@pobox.com>
"What I cannot create, I do not understand." - Richard Feynman
[-- Attachment #2: skb.diff --]
[-- Type: text/plain, Size: 1208 bytes --]
--- x/include/linux/skbuff.h.old 2005-01-22 10:03:55.000000000 -0500
+++ y/include/linux/skbuff.h 2005-01-22 10:42:33.000000000 -0500
@@ -1087,4 +1087,6 @@
extern unsigned int datagram_poll(struct file *file, struct socket *sock,
struct poll_table_struct *wait);
+extern int skb_copy_datagram(const struct sk_buff *from,
+ int offset, char __user *to, int size);
extern int skb_copy_datagram_iovec(const struct sk_buff *from,
int offset, struct iovec *to,
--- x/net/core/datagram.c.old 2005-01-22 10:03:56.000000000 -0500
+++ y/net/core/datagram.c 2005-01-22 10:43:40.000000000 -0500
@@ -200,4 +200,17 @@
}
+/*
+ * Copy a datagram to a linear buffer.
+ */
+int skb_copy_datagram(const struct sk_buff *skb, int offset, char __user *to, int size)
+{
+ struct iovec iov = {
+ .iov_base = to,
+ .iov_len =size,
+ };
+
+ return skb_copy_datagram_iovec(skb, offset, &iov, size);
+}
+
/**
* skb_copy_datagram_iovec - Copy a datagram to an iovec.
@@ -478,4 +491,5 @@
EXPORT_SYMBOL(datagram_poll);
EXPORT_SYMBOL(skb_copy_and_csum_datagram_iovec);
+EXPORT_SYMBOL(skb_copy_datagram);
EXPORT_SYMBOL(skb_copy_datagram_iovec);
EXPORT_SYMBOL(skb_free_datagram);
^ permalink raw reply [flat|nested] 3+ messages in thread* Re: [PATCH] restore skb_copy_datagram, removed from 2.6.11-rc2, breaking VMWare
2005-01-22 16:01 [PATCH] restore skb_copy_datagram, removed from 2.6.11-rc2, breaking VMWare Chip Salzenberg
@ 2005-01-22 16:16 ` Christoph Hellwig
2005-01-22 16:26 ` Petr Vandrovec
1 sibling, 0 replies; 3+ messages in thread
From: Christoph Hellwig @ 2005-01-22 16:16 UTC (permalink / raw)
To: Chip Salzenberg; +Cc: Linux Kernel
On Sat, Jan 22, 2005 at 11:01:29AM -0500, Chip Salzenberg wrote:
> Those of you who are using VMWare 4.5 will find that 2.6.11-rc2
> removes the public function "skb_copy_datagram", breaking VMWare
> (and any other module using that interface *sigh*).
>
> The attached patch restores the (little harmless wrapper) function.
Fix them to use the wrapped function instead.
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH] restore skb_copy_datagram, removed from 2.6.11-rc2, breaking VMWare
2005-01-22 16:01 [PATCH] restore skb_copy_datagram, removed from 2.6.11-rc2, breaking VMWare Chip Salzenberg
2005-01-22 16:16 ` Christoph Hellwig
@ 2005-01-22 16:26 ` Petr Vandrovec
1 sibling, 0 replies; 3+ messages in thread
From: Petr Vandrovec @ 2005-01-22 16:26 UTC (permalink / raw)
To: Chip Salzenberg; +Cc: Linux Kernel
On Sat, Jan 22, 2005 at 11:01:29AM -0500, Chip Salzenberg wrote:
> Those of you who are using VMWare 4.5 will find that 2.6.11-rc2
> removes the public function "skb_copy_datagram", breaking VMWare
> (and any other module using that interface *sigh*).
There is no need for it. It is fixed internally, and it will be
part of vmware-any-any-update89 and WS5.0 RC1.
Petr Vandrovec
> The attached patch restores the (little harmless wrapper) function.
> --
> Chip Salzenberg - a.k.a. - <chip@pobox.com>
> "What I cannot create, I do not understand." - Richard Feynman
>
> --- x/include/linux/skbuff.h.old 2005-01-22 10:03:55.000000000 -0500
> +++ y/include/linux/skbuff.h 2005-01-22 10:42:33.000000000 -0500
> @@ -1087,4 +1087,6 @@
> extern unsigned int datagram_poll(struct file *file, struct socket *sock,
> struct poll_table_struct *wait);
> +extern int skb_copy_datagram(const struct sk_buff *from,
> + int offset, char __user *to, int size);
> extern int skb_copy_datagram_iovec(const struct sk_buff *from,
> int offset, struct iovec *to,
>
> --- x/net/core/datagram.c.old 2005-01-22 10:03:56.000000000 -0500
> +++ y/net/core/datagram.c 2005-01-22 10:43:40.000000000 -0500
> @@ -200,4 +200,17 @@
> }
>
> +/*
> + * Copy a datagram to a linear buffer.
> + */
> +int skb_copy_datagram(const struct sk_buff *skb, int offset, char __user *to, int size)
> +{
> + struct iovec iov = {
> + .iov_base = to,
> + .iov_len =size,
> + };
> +
> + return skb_copy_datagram_iovec(skb, offset, &iov, size);
> +}
> +
> /**
> * skb_copy_datagram_iovec - Copy a datagram to an iovec.
> @@ -478,4 +491,5 @@
> EXPORT_SYMBOL(datagram_poll);
> EXPORT_SYMBOL(skb_copy_and_csum_datagram_iovec);
> +EXPORT_SYMBOL(skb_copy_datagram);
> EXPORT_SYMBOL(skb_copy_datagram_iovec);
> EXPORT_SYMBOL(skb_free_datagram);
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2005-01-22 16:27 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2005-01-22 16:01 [PATCH] restore skb_copy_datagram, removed from 2.6.11-rc2, breaking VMWare Chip Salzenberg
2005-01-22 16:16 ` Christoph Hellwig
2005-01-22 16:26 ` Petr Vandrovec
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.